google-cloud-recommender-v1 0.13.1 → 0.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 887fd3076b802d7406cc70fc77095445d2706335f7df3354b79f40e8e2c1d3c4
4
- data.tar.gz: 474455fba3fc5719c52339a68f0e28cc78606a5428b2ad11177a779d0163a378
3
+ metadata.gz: 3864f3f087240220a4454006575f9ef9ec9273072ee9e29d6435eade578af0ce
4
+ data.tar.gz: 5bd199e5e146e2339a14f79b0eaf4fa99e4cb073a6f06f4b0580cb36a29b671e
5
5
  SHA512:
6
- metadata.gz: 674ecc265e9260c12c3b7a1aba089f78ac5bedb794fa6d2ff01b1f21d970b7d033b23991f23486d33cd874e67ae5f2dd462d5ef5f75616189952dcccca9ef72f
7
- data.tar.gz: '09e81d342f5c0160c8d33937a86d65effb665ee4199b1e865cad5c8696558bba595e61bfc7f20a6c5eb1c8854ddc8dfcb9ae3bea69816aa1aca782d61a0d69d8'
6
+ metadata.gz: a88a56c763df943976f660a345982ba3e89c19ef68e8d325108ac47623261a66adba501d8f2f2a40de508ccbf45ce97d9718b4fac62ee363177c3d7e5963390b
7
+ data.tar.gz: 9c968f0b3adee00085798874382def1149b6abcb0af6b5dfbe31b92697b69a68cc054ad97d1fe00a273f75ffa2c623c81e6a642694aa3d4a6dc186554220c49f
@@ -10,7 +10,7 @@ require 'google/protobuf/struct_pb'
10
10
  require 'google/protobuf/timestamp_pb'
11
11
 
12
12
 
13
- descriptor_data = "\n)google/cloud/recommender/v1/insight.proto\x12\x1bgoogle.cloud.recommender.v1\x1a\x19google/api/resource.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xb6\t\n\x07Insight\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x18\n\x10target_resources\x18\t \x03(\t\x12\x17\n\x0finsight_subtype\x18\n \x01(\t\x12(\n\x07\x63ontent\x18\x03 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x35\n\x11last_refresh_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x35\n\x12observation_period\x18\x05 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x41\n\nstate_info\x18\x06 \x01(\x0b\x32-.google.cloud.recommender.v1.InsightStateInfo\x12?\n\x08\x63\x61tegory\x18\x07 \x01(\x0e\x32-.google.cloud.recommender.v1.Insight.Category\x12?\n\x08severity\x18\x0f \x01(\x0e\x32-.google.cloud.recommender.v1.Insight.Severity\x12\x0c\n\x04\x65tag\x18\x0b \x01(\t\x12`\n\x1a\x61ssociated_recommendations\x18\x08 \x03(\x0b\x32<.google.cloud.recommender.v1.Insight.RecommendationReference\x1a\x31\n\x17RecommendationReference\x12\x16\n\x0erecommendation\x18\x01 \x01(\t\"`\n\x08\x43\x61tegory\x12\x18\n\x14\x43\x41TEGORY_UNSPECIFIED\x10\x00\x12\x08\n\x04\x43OST\x10\x01\x12\x0c\n\x08SECURITY\x10\x02\x12\x0f\n\x0bPERFORMANCE\x10\x03\x12\x11\n\rMANAGEABILITY\x10\x04\"Q\n\x08Severity\x12\x18\n\x14SEVERITY_UNSPECIFIED\x10\x00\x12\x07\n\x03LOW\x10\x01\x12\n\n\x06MEDIUM\x10\x02\x12\x08\n\x04HIGH\x10\x03\x12\x0c\n\x08\x43RITICAL\x10\x04:\x9f\x03\xea\x41\x9b\x03\n\"recommender.googleapis.com/Insight\x12Vprojects/{project}/locations/{location}/insightTypes/{insight_type}/insights/{insight}\x12\x65\x62illingAccounts/{billing_account}/locations/{location}/insightTypes/{insight_type}/insights/{insight}\x12Tfolders/{folder}/locations/{location}/insightTypes/{insight_type}/insights/{insight}\x12`organizations/{organization}/locations/{location}/insightTypes/{insight_type}/insights/{insight}\"\xaf\x02\n\x10InsightStateInfo\x12\x42\n\x05state\x18\x01 \x01(\x0e\x32\x33.google.cloud.recommender.v1.InsightStateInfo.State\x12X\n\x0estate_metadata\x18\x02 \x03(\x0b\x32@.google.cloud.recommender.v1.InsightStateInfo.StateMetadataEntry\x1a\x34\n\x12StateMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"G\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\n\n\x06\x41\x43TIVE\x10\x01\x12\x0c\n\x08\x41\x43\x43\x45PTED\x10\x02\x12\r\n\tDISMISSED\x10\x03\x42\xf0\x03\n\x1f\x63om.google.cloud.recommender.v1B\x0cInsightProtoP\x01ZAcloud.google.com/go/recommender/apiv1/recommenderpb;recommenderpb\xa2\x02\x04\x43REC\xaa\x02\x1bGoogle.Cloud.Recommender.V1\xea\x41\xd3\x02\n&recommender.googleapis.com/InsightType\x12\x43projects/{project}/locations/{location}/insightTypes/{insight_type}\x12RbillingAccounts/{billing_account}/locations/{location}/insightTypes/{insight_type}\x12\x41\x66olders/{folder}/locations/{location}/insightTypes/{insight_type}\x12Morganizations/{organization}/locations/{location}/insightTypes/{insight_type}b\x06proto3"
13
+ descriptor_data = "\n)google/cloud/recommender/v1/insight.proto\x12\x1bgoogle.cloud.recommender.v1\x1a\x19google/api/resource.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xdc\t\n\x07Insight\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x18\n\x10target_resources\x18\t \x03(\t\x12\x17\n\x0finsight_subtype\x18\n \x01(\t\x12(\n\x07\x63ontent\x18\x03 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x35\n\x11last_refresh_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x35\n\x12observation_period\x18\x05 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x41\n\nstate_info\x18\x06 \x01(\x0b\x32-.google.cloud.recommender.v1.InsightStateInfo\x12?\n\x08\x63\x61tegory\x18\x07 \x01(\x0e\x32-.google.cloud.recommender.v1.Insight.Category\x12?\n\x08severity\x18\x0f \x01(\x0e\x32-.google.cloud.recommender.v1.Insight.Severity\x12\x0c\n\x04\x65tag\x18\x0b \x01(\t\x12`\n\x1a\x61ssociated_recommendations\x18\x08 \x03(\x0b\x32<.google.cloud.recommender.v1.Insight.RecommendationReference\x1a\x31\n\x17RecommendationReference\x12\x16\n\x0erecommendation\x18\x01 \x01(\t\"\x85\x01\n\x08\x43\x61tegory\x12\x18\n\x14\x43\x41TEGORY_UNSPECIFIED\x10\x00\x12\x08\n\x04\x43OST\x10\x01\x12\x0c\n\x08SECURITY\x10\x02\x12\x0f\n\x0bPERFORMANCE\x10\x03\x12\x11\n\rMANAGEABILITY\x10\x04\x12\x12\n\x0eSUSTAINABILITY\x10\x05\x12\x0f\n\x0bRELIABILITY\x10\x06\"Q\n\x08Severity\x12\x18\n\x14SEVERITY_UNSPECIFIED\x10\x00\x12\x07\n\x03LOW\x10\x01\x12\n\n\x06MEDIUM\x10\x02\x12\x08\n\x04HIGH\x10\x03\x12\x0c\n\x08\x43RITICAL\x10\x04:\x9f\x03\xea\x41\x9b\x03\n\"recommender.googleapis.com/Insight\x12Vprojects/{project}/locations/{location}/insightTypes/{insight_type}/insights/{insight}\x12\x65\x62illingAccounts/{billing_account}/locations/{location}/insightTypes/{insight_type}/insights/{insight}\x12Tfolders/{folder}/locations/{location}/insightTypes/{insight_type}/insights/{insight}\x12`organizations/{organization}/locations/{location}/insightTypes/{insight_type}/insights/{insight}\"\xaf\x02\n\x10InsightStateInfo\x12\x42\n\x05state\x18\x01 \x01(\x0e\x32\x33.google.cloud.recommender.v1.InsightStateInfo.State\x12X\n\x0estate_metadata\x18\x02 \x03(\x0b\x32@.google.cloud.recommender.v1.InsightStateInfo.StateMetadataEntry\x1a\x34\n\x12StateMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"G\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\n\n\x06\x41\x43TIVE\x10\x01\x12\x0c\n\x08\x41\x43\x43\x45PTED\x10\x02\x12\r\n\tDISMISSED\x10\x03\x42\xf0\x03\n\x1f\x63om.google.cloud.recommender.v1B\x0cInsightProtoP\x01ZAcloud.google.com/go/recommender/apiv1/recommenderpb;recommenderpb\xa2\x02\x04\x43REC\xaa\x02\x1bGoogle.Cloud.Recommender.V1\xea\x41\xd3\x02\n&recommender.googleapis.com/InsightType\x12\x43projects/{project}/locations/{location}/insightTypes/{insight_type}\x12RbillingAccounts/{billing_account}/locations/{location}/insightTypes/{insight_type}\x12\x41\x66olders/{folder}/locations/{location}/insightTypes/{insight_type}\x12Morganizations/{organization}/locations/{location}/insightTypes/{insight_type}b\x06proto3"
14
14
 
15
15
  pool = Google::Protobuf::DescriptorPool.generated_pool
16
16
 
@@ -10,7 +10,7 @@ require 'google/protobuf/struct_pb'
10
10
  require 'google/protobuf/timestamp_pb'
11
11
 
12
12
 
13
- descriptor_data = "\n5google/cloud/recommender/v1/insight_type_config.proto\x12\x1bgoogle.cloud.recommender.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xd6\x04\n\x11InsightTypeConfig\x12\x0c\n\x04name\x18\x01 \x01(\t\x12`\n\x1einsight_type_generation_config\x18\x02 \x01(\x0b\x32\x38.google.cloud.recommender.v1.InsightTypeGenerationConfig\x12\x0c\n\x04\x65tag\x18\x03 \x01(\t\x12/\n\x0bupdate_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x1b\n\x0brevision_id\x18\x05 \x01(\tB\x06\xe0\x41\x05\xe0\x41\x03\x12T\n\x0b\x61nnotations\x18\x06 \x03(\x0b\x32?.google.cloud.recommender.v1.InsightTypeConfig.AnnotationsEntry\x12\x14\n\x0c\x64isplay_name\x18\x07 \x01(\t\x1a\x32\n\x10\x41nnotationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01:\xd4\x01\xea\x41\xd0\x01\n,recommender.googleapis.com/InsightTypeConfig\x12Jprojects/{project}/locations/{location}/insightTypes/{insight_type}/config\x12Torganizations/{organization}/locations/{location}/insightTypes/{insight_type}/config\"F\n\x1bInsightTypeGenerationConfig\x12\'\n\x06params\x18\x01 \x01(\x0b\x32\x17.google.protobuf.StructB\xa3\x01\n\x1f\x63om.google.cloud.recommender.v1B\x16InsightTypeConfigProtoP\x01ZAcloud.google.com/go/recommender/apiv1/recommenderpb;recommenderpb\xa2\x02\x04\x43REC\xaa\x02\x1bGoogle.Cloud.Recommender.V1b\x06proto3"
13
+ descriptor_data = "\n5google/cloud/recommender/v1/insight_type_config.proto\x12\x1bgoogle.cloud.recommender.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xb1\x05\n\x11InsightTypeConfig\x12\x0c\n\x04name\x18\x01 \x01(\t\x12`\n\x1einsight_type_generation_config\x18\x02 \x01(\x0b\x32\x38.google.cloud.recommender.v1.InsightTypeGenerationConfig\x12\x0c\n\x04\x65tag\x18\x03 \x01(\t\x12/\n\x0bupdate_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x1b\n\x0brevision_id\x18\x05 \x01(\tB\x06\xe0\x41\x05\xe0\x41\x03\x12T\n\x0b\x61nnotations\x18\x06 \x03(\x0b\x32?.google.cloud.recommender.v1.InsightTypeConfig.AnnotationsEntry\x12\x14\n\x0c\x64isplay_name\x18\x07 \x01(\t\x1a\x32\n\x10\x41nnotationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01:\xaf\x02\xea\x41\xab\x02\n,recommender.googleapis.com/InsightTypeConfig\x12Jprojects/{project}/locations/{location}/insightTypes/{insight_type}/config\x12Torganizations/{organization}/locations/{location}/insightTypes/{insight_type}/config\x12YbillingAccounts/{billing_account}/locations/{location}/insightTypes/{insight_type}/config\"F\n\x1bInsightTypeGenerationConfig\x12\'\n\x06params\x18\x01 \x01(\x0b\x32\x17.google.protobuf.StructB\xa3\x01\n\x1f\x63om.google.cloud.recommender.v1B\x16InsightTypeConfigProtoP\x01ZAcloud.google.com/go/recommender/apiv1/recommenderpb;recommenderpb\xa2\x02\x04\x43REC\xaa\x02\x1bGoogle.Cloud.Recommender.V1b\x06proto3"
14
14
 
15
15
  pool = Google::Protobuf::DescriptorPool.generated_pool
16
16
 
@@ -11,7 +11,7 @@ require 'google/protobuf/timestamp_pb'
11
11
  require 'google/type/money_pb'
12
12
 
13
13
 
14
- descriptor_data = "\n0google/cloud/recommender/v1/recommendation.proto\x12\x1bgoogle.cloud.recommender.v1\x1a\x19google/api/resource.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17google/type/money.proto\"\xa2\t\n\x0eRecommendation\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x1b\n\x13recommender_subtype\x18\x0c \x01(\t\x12\x35\n\x11last_refresh_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12;\n\x0eprimary_impact\x18\x05 \x01(\x0b\x32#.google.cloud.recommender.v1.Impact\x12>\n\x11\x61\x64\x64itional_impact\x18\x06 \x03(\x0b\x32#.google.cloud.recommender.v1.Impact\x12\x46\n\x08priority\x18\x11 \x01(\x0e\x32\x34.google.cloud.recommender.v1.Recommendation.Priority\x12\x43\n\x07\x63ontent\x18\x07 \x01(\x0b\x32\x32.google.cloud.recommender.v1.RecommendationContent\x12H\n\nstate_info\x18\n \x01(\x0b\x32\x34.google.cloud.recommender.v1.RecommendationStateInfo\x12\x0c\n\x04\x65tag\x18\x0b \x01(\t\x12Y\n\x13\x61ssociated_insights\x18\x0e \x03(\x0b\x32<.google.cloud.recommender.v1.Recommendation.InsightReference\x12\x14\n\x0cxor_group_id\x18\x12 \x01(\t\x1a#\n\x10InsightReference\x12\x0f\n\x07insight\x18\x01 \x01(\t\"D\n\x08Priority\x12\x18\n\x14PRIORITY_UNSPECIFIED\x10\x00\x12\x06\n\x02P4\x10\x01\x12\x06\n\x02P3\x10\x02\x12\x06\n\x02P2\x10\x03\x12\x06\n\x02P1\x10\x04:\xda\x03\xea\x41\xd6\x03\n)recommender.googleapis.com/Recommendation\x12\x63projects/{project}/locations/{location}/recommenders/{recommender}/recommendations/{recommendation}\x12rbillingAccounts/{billing_account}/locations/{location}/recommenders/{recommender}/recommendations/{recommendation}\x12\x61\x66olders/{folder}/locations/{location}/recommenders/{recommender}/recommendations/{recommendation}\x12morganizations/{organization}/locations/{location}/recommenders/{recommender}/recommendations/{recommendation}\"\x89\x01\n\x15RecommendationContent\x12\x45\n\x10operation_groups\x18\x02 \x03(\x0b\x32+.google.cloud.recommender.v1.OperationGroup\x12)\n\x08overview\x18\x03 \x01(\x0b\x32\x17.google.protobuf.Struct\"L\n\x0eOperationGroup\x12:\n\noperations\x18\x01 \x03(\x0b\x32&.google.cloud.recommender.v1.Operation\"\xd7\x04\n\tOperation\x12\x0e\n\x06\x61\x63tion\x18\x01 \x01(\t\x12\x15\n\rresource_type\x18\x02 \x01(\t\x12\x10\n\x08resource\x18\x03 \x01(\t\x12\x0c\n\x04path\x18\x04 \x01(\t\x12\x17\n\x0fsource_resource\x18\x05 \x01(\t\x12\x13\n\x0bsource_path\x18\x06 \x01(\t\x12\'\n\x05value\x18\x07 \x01(\x0b\x32\x16.google.protobuf.ValueH\x00\x12\x42\n\rvalue_matcher\x18\n \x01(\x0b\x32).google.cloud.recommender.v1.ValueMatcherH\x00\x12M\n\x0cpath_filters\x18\x08 \x03(\x0b\x32\x37.google.cloud.recommender.v1.Operation.PathFiltersEntry\x12Z\n\x13path_value_matchers\x18\x0b \x03(\x0b\x32=.google.cloud.recommender.v1.Operation.PathValueMatchersEntry\x1aJ\n\x10PathFiltersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12%\n\x05value\x18\x02 \x01(\x0b\x32\x16.google.protobuf.Value:\x02\x38\x01\x1a\x63\n\x16PathValueMatchersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x38\n\x05value\x18\x02 \x01(\x0b\x32).google.cloud.recommender.v1.ValueMatcher:\x02\x38\x01\x42\x0c\n\npath_value\":\n\x0cValueMatcher\x12\x19\n\x0fmatches_pattern\x18\x01 \x01(\tH\x00\x42\x0f\n\rmatch_variant\"_\n\x0e\x43ostProjection\x12 \n\x04\x63ost\x18\x01 \x01(\x0b\x32\x12.google.type.Money\x12+\n\x08\x64uration\x18\x02 \x01(\x0b\x32\x19.google.protobuf.Duration\">\n\x12SecurityProjection\x12(\n\x07\x64\x65tails\x18\x02 \x01(\x0b\x32\x17.google.protobuf.Struct\"\xd0\x02\n\x06Impact\x12>\n\x08\x63\x61tegory\x18\x01 \x01(\x0e\x32,.google.cloud.recommender.v1.Impact.Category\x12\x46\n\x0f\x63ost_projection\x18\x64 \x01(\x0b\x32+.google.cloud.recommender.v1.CostProjectionH\x00\x12N\n\x13security_projection\x18\x65 \x01(\x0b\x32/.google.cloud.recommender.v1.SecurityProjectionH\x00\"`\n\x08\x43\x61tegory\x12\x18\n\x14\x43\x41TEGORY_UNSPECIFIED\x10\x00\x12\x08\n\x04\x43OST\x10\x01\x12\x0c\n\x08SECURITY\x10\x02\x12\x0f\n\x0bPERFORMANCE\x10\x03\x12\x11\n\rMANAGEABILITY\x10\x04\x42\x0c\n\nprojection\"\xde\x02\n\x17RecommendationStateInfo\x12I\n\x05state\x18\x01 \x01(\x0e\x32:.google.cloud.recommender.v1.RecommendationStateInfo.State\x12_\n\x0estate_metadata\x18\x02 \x03(\x0b\x32G.google.cloud.recommender.v1.RecommendationStateInfo.StateMetadataEntry\x1a\x34\n\x12StateMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"a\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\n\n\x06\x41\x43TIVE\x10\x01\x12\x0b\n\x07\x43LAIMED\x10\x06\x12\r\n\tSUCCEEDED\x10\x03\x12\n\n\x06\x46\x41ILED\x10\x04\x12\r\n\tDISMISSED\x10\x05\x42\xde\x03\n\x1f\x63om.google.cloud.recommender.v1P\x01ZAcloud.google.com/go/recommender/apiv1/recommenderpb;recommenderpb\xa2\x02\x04\x43REC\xaa\x02\x1bGoogle.Cloud.Recommender.V1\xea\x41\xcf\x02\n&recommender.googleapis.com/Recommender\x12\x42projects/{project}/locations/{location}/recommenders/{recommender}\x12QbillingAccounts/{billing_account}/locations/{location}/recommenders/{recommender}\x12@folders/{folder}/locations/{location}/recommenders/{recommender}\x12Lorganizations/{organization}/locations/{location}/recommenders/{recommender}b\x06proto3"
14
+ descriptor_data = "\n0google/cloud/recommender/v1/recommendation.proto\x12\x1bgoogle.cloud.recommender.v1\x1a\x19google/api/resource.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17google/type/money.proto\"\xa2\t\n\x0eRecommendation\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x1b\n\x13recommender_subtype\x18\x0c \x01(\t\x12\x35\n\x11last_refresh_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12;\n\x0eprimary_impact\x18\x05 \x01(\x0b\x32#.google.cloud.recommender.v1.Impact\x12>\n\x11\x61\x64\x64itional_impact\x18\x06 \x03(\x0b\x32#.google.cloud.recommender.v1.Impact\x12\x46\n\x08priority\x18\x11 \x01(\x0e\x32\x34.google.cloud.recommender.v1.Recommendation.Priority\x12\x43\n\x07\x63ontent\x18\x07 \x01(\x0b\x32\x32.google.cloud.recommender.v1.RecommendationContent\x12H\n\nstate_info\x18\n \x01(\x0b\x32\x34.google.cloud.recommender.v1.RecommendationStateInfo\x12\x0c\n\x04\x65tag\x18\x0b \x01(\t\x12Y\n\x13\x61ssociated_insights\x18\x0e \x03(\x0b\x32<.google.cloud.recommender.v1.Recommendation.InsightReference\x12\x14\n\x0cxor_group_id\x18\x12 \x01(\t\x1a#\n\x10InsightReference\x12\x0f\n\x07insight\x18\x01 \x01(\t\"D\n\x08Priority\x12\x18\n\x14PRIORITY_UNSPECIFIED\x10\x00\x12\x06\n\x02P4\x10\x01\x12\x06\n\x02P3\x10\x02\x12\x06\n\x02P2\x10\x03\x12\x06\n\x02P1\x10\x04:\xda\x03\xea\x41\xd6\x03\n)recommender.googleapis.com/Recommendation\x12\x63projects/{project}/locations/{location}/recommenders/{recommender}/recommendations/{recommendation}\x12rbillingAccounts/{billing_account}/locations/{location}/recommenders/{recommender}/recommendations/{recommendation}\x12\x61\x66olders/{folder}/locations/{location}/recommenders/{recommender}/recommendations/{recommendation}\x12morganizations/{organization}/locations/{location}/recommenders/{recommender}/recommendations/{recommendation}\"\x89\x01\n\x15RecommendationContent\x12\x45\n\x10operation_groups\x18\x02 \x03(\x0b\x32+.google.cloud.recommender.v1.OperationGroup\x12)\n\x08overview\x18\x03 \x01(\x0b\x32\x17.google.protobuf.Struct\"L\n\x0eOperationGroup\x12:\n\noperations\x18\x01 \x03(\x0b\x32&.google.cloud.recommender.v1.Operation\"\xd7\x04\n\tOperation\x12\x0e\n\x06\x61\x63tion\x18\x01 \x01(\t\x12\x15\n\rresource_type\x18\x02 \x01(\t\x12\x10\n\x08resource\x18\x03 \x01(\t\x12\x0c\n\x04path\x18\x04 \x01(\t\x12\x17\n\x0fsource_resource\x18\x05 \x01(\t\x12\x13\n\x0bsource_path\x18\x06 \x01(\t\x12\'\n\x05value\x18\x07 \x01(\x0b\x32\x16.google.protobuf.ValueH\x00\x12\x42\n\rvalue_matcher\x18\n \x01(\x0b\x32).google.cloud.recommender.v1.ValueMatcherH\x00\x12M\n\x0cpath_filters\x18\x08 \x03(\x0b\x32\x37.google.cloud.recommender.v1.Operation.PathFiltersEntry\x12Z\n\x13path_value_matchers\x18\x0b \x03(\x0b\x32=.google.cloud.recommender.v1.Operation.PathValueMatchersEntry\x1aJ\n\x10PathFiltersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12%\n\x05value\x18\x02 \x01(\x0b\x32\x16.google.protobuf.Value:\x02\x38\x01\x1a\x63\n\x16PathValueMatchersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x38\n\x05value\x18\x02 \x01(\x0b\x32).google.cloud.recommender.v1.ValueMatcher:\x02\x38\x01\x42\x0c\n\npath_value\":\n\x0cValueMatcher\x12\x19\n\x0fmatches_pattern\x18\x01 \x01(\tH\x00\x42\x0f\n\rmatch_variant\"_\n\x0e\x43ostProjection\x12 \n\x04\x63ost\x18\x01 \x01(\x0b\x32\x12.google.type.Money\x12+\n\x08\x64uration\x18\x02 \x01(\x0b\x32\x19.google.protobuf.Duration\">\n\x12SecurityProjection\x12(\n\x07\x64\x65tails\x18\x02 \x01(\x0b\x32\x17.google.protobuf.Struct\"Y\n\x18SustainabilityProjection\x12\x10\n\x08kg_c_o2e\x18\x01 \x01(\x01\x12+\n\x08\x64uration\x18\x02 \x01(\x0b\x32\x19.google.protobuf.Duration\"\xec\x01\n\x15ReliabilityProjection\x12J\n\x05risks\x18\x01 \x03(\x0e\x32;.google.cloud.recommender.v1.ReliabilityProjection.RiskType\x12(\n\x07\x64\x65tails\x18\x02 \x01(\x0b\x32\x17.google.protobuf.Struct\"]\n\x08RiskType\x12\x19\n\x15RISK_TYPE_UNSPECIFIED\x10\x00\x12\x16\n\x12SERVICE_DISRUPTION\x10\x01\x12\r\n\tDATA_LOSS\x10\x02\x12\x0f\n\x0b\x41\x43\x43\x45SS_DENY\x10\x03\"\xa8\x04\n\x06Impact\x12>\n\x08\x63\x61tegory\x18\x01 \x01(\x0e\x32,.google.cloud.recommender.v1.Impact.Category\x12\x46\n\x0f\x63ost_projection\x18\x64 \x01(\x0b\x32+.google.cloud.recommender.v1.CostProjectionH\x00\x12N\n\x13security_projection\x18\x65 \x01(\x0b\x32/.google.cloud.recommender.v1.SecurityProjectionH\x00\x12Z\n\x19sustainability_projection\x18\x66 \x01(\x0b\x32\x35.google.cloud.recommender.v1.SustainabilityProjectionH\x00\x12T\n\x16reliability_projection\x18g \x01(\x0b\x32\x32.google.cloud.recommender.v1.ReliabilityProjectionH\x00\"\x85\x01\n\x08\x43\x61tegory\x12\x18\n\x14\x43\x41TEGORY_UNSPECIFIED\x10\x00\x12\x08\n\x04\x43OST\x10\x01\x12\x0c\n\x08SECURITY\x10\x02\x12\x0f\n\x0bPERFORMANCE\x10\x03\x12\x11\n\rMANAGEABILITY\x10\x04\x12\x12\n\x0eSUSTAINABILITY\x10\x05\x12\x0f\n\x0bRELIABILITY\x10\x06\x42\x0c\n\nprojection\"\xde\x02\n\x17RecommendationStateInfo\x12I\n\x05state\x18\x01 \x01(\x0e\x32:.google.cloud.recommender.v1.RecommendationStateInfo.State\x12_\n\x0estate_metadata\x18\x02 \x03(\x0b\x32G.google.cloud.recommender.v1.RecommendationStateInfo.StateMetadataEntry\x1a\x34\n\x12StateMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"a\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\n\n\x06\x41\x43TIVE\x10\x01\x12\x0b\n\x07\x43LAIMED\x10\x06\x12\r\n\tSUCCEEDED\x10\x03\x12\n\n\x06\x46\x41ILED\x10\x04\x12\r\n\tDISMISSED\x10\x05\x42\xde\x03\n\x1f\x63om.google.cloud.recommender.v1P\x01ZAcloud.google.com/go/recommender/apiv1/recommenderpb;recommenderpb\xa2\x02\x04\x43REC\xaa\x02\x1bGoogle.Cloud.Recommender.V1\xea\x41\xcf\x02\n&recommender.googleapis.com/Recommender\x12\x42projects/{project}/locations/{location}/recommenders/{recommender}\x12QbillingAccounts/{billing_account}/locations/{location}/recommenders/{recommender}\x12@folders/{folder}/locations/{location}/recommenders/{recommender}\x12Lorganizations/{organization}/locations/{location}/recommenders/{recommender}b\x06proto3"
15
15
 
16
16
  pool = Google::Protobuf::DescriptorPool.generated_pool
17
17
 
@@ -54,6 +54,9 @@ module Google
54
54
  ValueMatcher = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recommender.v1.ValueMatcher").msgclass
55
55
  CostProjection = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recommender.v1.CostProjection").msgclass
56
56
  SecurityProjection = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recommender.v1.SecurityProjection").msgclass
57
+ SustainabilityProjection = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recommender.v1.SustainabilityProjection").msgclass
58
+ ReliabilityProjection = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recommender.v1.ReliabilityProjection").msgclass
59
+ ReliabilityProjection::RiskType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recommender.v1.ReliabilityProjection.RiskType").enummodule
57
60
  Impact = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recommender.v1.Impact").msgclass
58
61
  Impact::Category = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recommender.v1.Impact.Category").enummodule
59
62
  RecommendationStateInfo = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recommender.v1.RecommendationStateInfo").msgclass
@@ -169,7 +169,8 @@ module Google
169
169
  credentials: credentials,
170
170
  endpoint: @config.endpoint,
171
171
  channel_args: @config.channel_args,
172
- interceptors: @config.interceptors
172
+ interceptors: @config.interceptors,
173
+ channel_pool_config: @config.channel_pool
173
174
  )
174
175
  end
175
176
 
@@ -718,6 +719,101 @@ module Google
718
719
  raise ::Google::Cloud::Error.from_error(e)
719
720
  end
720
721
 
722
+ ##
723
+ # Mark the Recommendation State as Dismissed. Users can use this method to
724
+ # indicate to the Recommender API that an ACTIVE recommendation has to
725
+ # be marked back as DISMISSED.
726
+ #
727
+ # MarkRecommendationDismissed can be applied to recommendations in ACTIVE
728
+ # state.
729
+ #
730
+ # Requires the recommender.*.update IAM permission for the specified
731
+ # recommender.
732
+ #
733
+ # @overload mark_recommendation_dismissed(request, options = nil)
734
+ # Pass arguments to `mark_recommendation_dismissed` via a request object, either of type
735
+ # {::Google::Cloud::Recommender::V1::MarkRecommendationDismissedRequest} or an equivalent Hash.
736
+ #
737
+ # @param request [::Google::Cloud::Recommender::V1::MarkRecommendationDismissedRequest, ::Hash]
738
+ # A request object representing the call parameters. Required. To specify no
739
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
740
+ # @param options [::Gapic::CallOptions, ::Hash]
741
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
742
+ #
743
+ # @overload mark_recommendation_dismissed(name: nil, etag: nil)
744
+ # Pass arguments to `mark_recommendation_dismissed` via keyword arguments. Note that at
745
+ # least one keyword argument is required. To specify no parameters, or to keep all
746
+ # the default parameter values, pass an empty Hash as a request object (see above).
747
+ #
748
+ # @param name [::String]
749
+ # Name of the recommendation.
750
+ # @param etag [::String]
751
+ # Fingerprint of the Recommendation. Provides optimistic locking.
752
+ #
753
+ # @yield [response, operation] Access the result along with the RPC operation
754
+ # @yieldparam response [::Google::Cloud::Recommender::V1::Recommendation]
755
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
756
+ #
757
+ # @return [::Google::Cloud::Recommender::V1::Recommendation]
758
+ #
759
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
760
+ #
761
+ # @example Basic example
762
+ # require "google/cloud/recommender/v1"
763
+ #
764
+ # # Create a client object. The client can be reused for multiple calls.
765
+ # client = Google::Cloud::Recommender::V1::Recommender::Client.new
766
+ #
767
+ # # Create a request. To set request fields, pass in keyword arguments.
768
+ # request = Google::Cloud::Recommender::V1::MarkRecommendationDismissedRequest.new
769
+ #
770
+ # # Call the mark_recommendation_dismissed method.
771
+ # result = client.mark_recommendation_dismissed request
772
+ #
773
+ # # The returned object is of type Google::Cloud::Recommender::V1::Recommendation.
774
+ # p result
775
+ #
776
+ def mark_recommendation_dismissed request, options = nil
777
+ raise ::ArgumentError, "request must be provided" if request.nil?
778
+
779
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Recommender::V1::MarkRecommendationDismissedRequest
780
+
781
+ # Converts hash and nil to an options object
782
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
783
+
784
+ # Customize the options with defaults
785
+ metadata = @config.rpcs.mark_recommendation_dismissed.metadata.to_h
786
+
787
+ # Set x-goog-api-client and x-goog-user-project headers
788
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
789
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
790
+ gapic_version: ::Google::Cloud::Recommender::V1::VERSION
791
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
792
+
793
+ header_params = {}
794
+ if request.name
795
+ header_params["name"] = request.name
796
+ end
797
+
798
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
799
+ metadata[:"x-goog-request-params"] ||= request_params_header
800
+
801
+ options.apply_defaults timeout: @config.rpcs.mark_recommendation_dismissed.timeout,
802
+ metadata: metadata,
803
+ retry_policy: @config.rpcs.mark_recommendation_dismissed.retry_policy
804
+
805
+ options.apply_defaults timeout: @config.timeout,
806
+ metadata: @config.metadata,
807
+ retry_policy: @config.retry_policy
808
+
809
+ @recommender_stub.call_rpc :mark_recommendation_dismissed, request, options: options do |response, operation|
810
+ yield response, operation if block_given?
811
+ return response
812
+ end
813
+ rescue ::GRPC::BadStatus => e
814
+ raise ::Google::Cloud::Error.from_error(e)
815
+ end
816
+
721
817
  ##
722
818
  # Marks the Recommendation State as Claimed. Users can use this method to
723
819
  # indicate to the Recommender API that they are starting to apply the
@@ -1053,6 +1149,8 @@ module Google
1053
1149
  #
1054
1150
  # * `organizations/[ORGANIZATION_ID]/locations/[LOCATION]/recommenders/[RECOMMENDER_ID]/config`
1055
1151
  #
1152
+ # * `billingAccounts/[BILLING_ACCOUNT_ID]/locations/[LOCATION]/recommenders/[RECOMMENDER_ID]/config`
1153
+ #
1056
1154
  # @yield [response, operation] Access the result along with the RPC operation
1057
1155
  # @yieldparam response [::Google::Cloud::Recommender::V1::RecommenderConfig]
1058
1156
  # @yieldparam operation [::GRPC::ActiveCall::Operation]
@@ -1232,11 +1330,13 @@ module Google
1232
1330
  #
1233
1331
  # Acceptable formats:
1234
1332
  #
1235
- # * `projects/[PROJECT_NUMBER]/locations/global/recommenders/[INSIGHT_TYPE_ID]/config`
1333
+ # * `projects/[PROJECT_NUMBER]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]/config`
1334
+ #
1335
+ # * `projects/[PROJECT_ID]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]/config`
1236
1336
  #
1237
- # * `projects/[PROJECT_ID]/locations/global/recommenders/[INSIGHT_TYPE_ID]/config`
1337
+ # * `organizations/[ORGANIZATION_ID]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]/config`
1238
1338
  #
1239
- # * `organizations/[ORGANIZATION_ID]/locations/global/recommenders/[INSIGHT_TYPE_ID]/config`
1339
+ # * `billingAccounts/[BILLING_ACCOUNT_ID]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]/config`
1240
1340
  #
1241
1341
  # @yield [response, operation] Access the result along with the RPC operation
1242
1342
  # @yieldparam response [::Google::Cloud::Recommender::V1::InsightTypeConfig]
@@ -1512,6 +1612,14 @@ module Google
1512
1612
  end
1513
1613
  end
1514
1614
 
1615
+ ##
1616
+ # Configuration for the channel pool
1617
+ # @return [::Gapic::ServiceStub::ChannelPool::Configuration]
1618
+ #
1619
+ def channel_pool
1620
+ @channel_pool ||= ::Gapic::ServiceStub::ChannelPool::Configuration.new
1621
+ end
1622
+
1515
1623
  ##
1516
1624
  # Configuration RPC class for the Recommender API.
1517
1625
  #
@@ -1556,6 +1664,11 @@ module Google
1556
1664
  #
1557
1665
  attr_reader :get_recommendation
1558
1666
  ##
1667
+ # RPC-specific configuration for `mark_recommendation_dismissed`
1668
+ # @return [::Gapic::Config::Method]
1669
+ #
1670
+ attr_reader :mark_recommendation_dismissed
1671
+ ##
1559
1672
  # RPC-specific configuration for `mark_recommendation_claimed`
1560
1673
  # @return [::Gapic::Config::Method]
1561
1674
  #
@@ -1603,6 +1716,8 @@ module Google
1603
1716
  @list_recommendations = ::Gapic::Config::Method.new list_recommendations_config
1604
1717
  get_recommendation_config = parent_rpcs.get_recommendation if parent_rpcs.respond_to? :get_recommendation
1605
1718
  @get_recommendation = ::Gapic::Config::Method.new get_recommendation_config
1719
+ mark_recommendation_dismissed_config = parent_rpcs.mark_recommendation_dismissed if parent_rpcs.respond_to? :mark_recommendation_dismissed
1720
+ @mark_recommendation_dismissed = ::Gapic::Config::Method.new mark_recommendation_dismissed_config
1606
1721
  mark_recommendation_claimed_config = parent_rpcs.mark_recommendation_claimed if parent_rpcs.respond_to? :mark_recommendation_claimed
1607
1722
  @mark_recommendation_claimed = ::Gapic::Config::Method.new mark_recommendation_claimed_config
1608
1723
  mark_recommendation_succeeded_config = parent_rpcs.mark_recommendation_succeeded if parent_rpcs.respond_to? :mark_recommendation_succeeded
@@ -199,6 +199,15 @@ module Google
199
199
  # @param location [String]
200
200
  # @param insight_type [String]
201
201
  #
202
+ # @overload insight_type_config_path(billing_account:, location:, insight_type:)
203
+ # The resource will be in the following format:
204
+ #
205
+ # `billingAccounts/{billing_account}/locations/{location}/insightTypes/{insight_type}/config`
206
+ #
207
+ # @param billing_account [String]
208
+ # @param location [String]
209
+ # @param insight_type [String]
210
+ #
202
211
  # @return [::String]
203
212
  def insight_type_config_path **args
204
213
  resources = {
@@ -213,6 +222,12 @@ module Google
213
222
  raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
214
223
 
215
224
  "organizations/#{organization}/locations/#{location}/insightTypes/#{insight_type}/config"
225
+ end),
226
+ "billing_account:insight_type:location" => (proc do |billing_account:, location:, insight_type:|
227
+ raise ::ArgumentError, "billing_account cannot contain /" if billing_account.to_s.include? "/"
228
+ raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
229
+
230
+ "billingAccounts/#{billing_account}/locations/#{location}/insightTypes/#{insight_type}/config"
216
231
  end)
217
232
  }
218
233
 
@@ -396,6 +411,15 @@ module Google
396
411
  # @param location [String]
397
412
  # @param recommender [String]
398
413
  #
414
+ # @overload recommender_config_path(billing_account:, location:, recommender:)
415
+ # The resource will be in the following format:
416
+ #
417
+ # `billingAccounts/{billing_account}/locations/{location}/recommenders/{recommender}/config`
418
+ #
419
+ # @param billing_account [String]
420
+ # @param location [String]
421
+ # @param recommender [String]
422
+ #
399
423
  # @return [::String]
400
424
  def recommender_config_path **args
401
425
  resources = {
@@ -410,6 +434,12 @@ module Google
410
434
  raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
411
435
 
412
436
  "organizations/#{organization}/locations/#{location}/recommenders/#{recommender}/config"
437
+ end),
438
+ "billing_account:location:recommender" => (proc do |billing_account:, location:, recommender:|
439
+ raise ::ArgumentError, "billing_account cannot contain /" if billing_account.to_s.include? "/"
440
+ raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
441
+
442
+ "billingAccounts/#{billing_account}/locations/#{location}/recommenders/#{recommender}/config"
413
443
  end)
414
444
  }
415
445
 
@@ -241,6 +241,26 @@ module Google
241
241
  # @return [::Gapic::Rest::PagedEnumerable<::Google::Cloud::Recommender::V1::Insight>]
242
242
  #
243
243
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
244
+ #
245
+ # @example Basic example
246
+ # require "google/cloud/recommender/v1"
247
+ #
248
+ # # Create a client object. The client can be reused for multiple calls.
249
+ # client = Google::Cloud::Recommender::V1::Recommender::Rest::Client.new
250
+ #
251
+ # # Create a request. To set request fields, pass in keyword arguments.
252
+ # request = Google::Cloud::Recommender::V1::ListInsightsRequest.new
253
+ #
254
+ # # Call the list_insights method.
255
+ # result = client.list_insights request
256
+ #
257
+ # # The returned object is of type Gapic::PagedEnumerable. You can iterate
258
+ # # over elements, and API calls will be issued to fetch pages as needed.
259
+ # result.each do |item|
260
+ # # Each element is of type ::Google::Cloud::Recommender::V1::Insight.
261
+ # p item
262
+ # end
263
+ #
244
264
  def list_insights request, options = nil
245
265
  raise ::ArgumentError, "request must be provided" if request.nil?
246
266
 
@@ -305,6 +325,22 @@ module Google
305
325
  # @return [::Google::Cloud::Recommender::V1::Insight]
306
326
  #
307
327
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
328
+ #
329
+ # @example Basic example
330
+ # require "google/cloud/recommender/v1"
331
+ #
332
+ # # Create a client object. The client can be reused for multiple calls.
333
+ # client = Google::Cloud::Recommender::V1::Recommender::Rest::Client.new
334
+ #
335
+ # # Create a request. To set request fields, pass in keyword arguments.
336
+ # request = Google::Cloud::Recommender::V1::GetInsightRequest.new
337
+ #
338
+ # # Call the get_insight method.
339
+ # result = client.get_insight request
340
+ #
341
+ # # The returned object is of type Google::Cloud::Recommender::V1::Insight.
342
+ # p result
343
+ #
308
344
  def get_insight request, options = nil
309
345
  raise ::ArgumentError, "request must be provided" if request.nil?
310
346
 
@@ -377,6 +413,22 @@ module Google
377
413
  # @return [::Google::Cloud::Recommender::V1::Insight]
378
414
  #
379
415
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
416
+ #
417
+ # @example Basic example
418
+ # require "google/cloud/recommender/v1"
419
+ #
420
+ # # Create a client object. The client can be reused for multiple calls.
421
+ # client = Google::Cloud::Recommender::V1::Recommender::Rest::Client.new
422
+ #
423
+ # # Create a request. To set request fields, pass in keyword arguments.
424
+ # request = Google::Cloud::Recommender::V1::MarkInsightAcceptedRequest.new
425
+ #
426
+ # # Call the mark_insight_accepted method.
427
+ # result = client.mark_insight_accepted request
428
+ #
429
+ # # The returned object is of type Google::Cloud::Recommender::V1::Insight.
430
+ # p result
431
+ #
380
432
  def mark_insight_accepted request, options = nil
381
433
  raise ::ArgumentError, "request must be provided" if request.nil?
382
434
 
@@ -487,6 +539,26 @@ module Google
487
539
  # @return [::Gapic::Rest::PagedEnumerable<::Google::Cloud::Recommender::V1::Recommendation>]
488
540
  #
489
541
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
542
+ #
543
+ # @example Basic example
544
+ # require "google/cloud/recommender/v1"
545
+ #
546
+ # # Create a client object. The client can be reused for multiple calls.
547
+ # client = Google::Cloud::Recommender::V1::Recommender::Rest::Client.new
548
+ #
549
+ # # Create a request. To set request fields, pass in keyword arguments.
550
+ # request = Google::Cloud::Recommender::V1::ListRecommendationsRequest.new
551
+ #
552
+ # # Call the list_recommendations method.
553
+ # result = client.list_recommendations request
554
+ #
555
+ # # The returned object is of type Gapic::PagedEnumerable. You can iterate
556
+ # # over elements, and API calls will be issued to fetch pages as needed.
557
+ # result.each do |item|
558
+ # # Each element is of type ::Google::Cloud::Recommender::V1::Recommendation.
559
+ # p item
560
+ # end
561
+ #
490
562
  def list_recommendations request, options = nil
491
563
  raise ::ArgumentError, "request must be provided" if request.nil?
492
564
 
@@ -551,6 +623,22 @@ module Google
551
623
  # @return [::Google::Cloud::Recommender::V1::Recommendation]
552
624
  #
553
625
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
626
+ #
627
+ # @example Basic example
628
+ # require "google/cloud/recommender/v1"
629
+ #
630
+ # # Create a client object. The client can be reused for multiple calls.
631
+ # client = Google::Cloud::Recommender::V1::Recommender::Rest::Client.new
632
+ #
633
+ # # Create a request. To set request fields, pass in keyword arguments.
634
+ # request = Google::Cloud::Recommender::V1::GetRecommendationRequest.new
635
+ #
636
+ # # Call the get_recommendation method.
637
+ # result = client.get_recommendation request
638
+ #
639
+ # # The returned object is of type Google::Cloud::Recommender::V1::Recommendation.
640
+ # p result
641
+ #
554
642
  def get_recommendation request, options = nil
555
643
  raise ::ArgumentError, "request must be provided" if request.nil?
556
644
 
@@ -586,6 +674,94 @@ module Google
586
674
  raise ::Google::Cloud::Error.from_error(e)
587
675
  end
588
676
 
677
+ ##
678
+ # Mark the Recommendation State as Dismissed. Users can use this method to
679
+ # indicate to the Recommender API that an ACTIVE recommendation has to
680
+ # be marked back as DISMISSED.
681
+ #
682
+ # MarkRecommendationDismissed can be applied to recommendations in ACTIVE
683
+ # state.
684
+ #
685
+ # Requires the recommender.*.update IAM permission for the specified
686
+ # recommender.
687
+ #
688
+ # @overload mark_recommendation_dismissed(request, options = nil)
689
+ # Pass arguments to `mark_recommendation_dismissed` via a request object, either of type
690
+ # {::Google::Cloud::Recommender::V1::MarkRecommendationDismissedRequest} or an equivalent Hash.
691
+ #
692
+ # @param request [::Google::Cloud::Recommender::V1::MarkRecommendationDismissedRequest, ::Hash]
693
+ # A request object representing the call parameters. Required. To specify no
694
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
695
+ # @param options [::Gapic::CallOptions, ::Hash]
696
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
697
+ #
698
+ # @overload mark_recommendation_dismissed(name: nil, etag: nil)
699
+ # Pass arguments to `mark_recommendation_dismissed` via keyword arguments. Note that at
700
+ # least one keyword argument is required. To specify no parameters, or to keep all
701
+ # the default parameter values, pass an empty Hash as a request object (see above).
702
+ #
703
+ # @param name [::String]
704
+ # Name of the recommendation.
705
+ # @param etag [::String]
706
+ # Fingerprint of the Recommendation. Provides optimistic locking.
707
+ # @yield [result, operation] Access the result along with the TransportOperation object
708
+ # @yieldparam result [::Google::Cloud::Recommender::V1::Recommendation]
709
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
710
+ #
711
+ # @return [::Google::Cloud::Recommender::V1::Recommendation]
712
+ #
713
+ # @raise [::Google::Cloud::Error] if the REST call is aborted.
714
+ #
715
+ # @example Basic example
716
+ # require "google/cloud/recommender/v1"
717
+ #
718
+ # # Create a client object. The client can be reused for multiple calls.
719
+ # client = Google::Cloud::Recommender::V1::Recommender::Rest::Client.new
720
+ #
721
+ # # Create a request. To set request fields, pass in keyword arguments.
722
+ # request = Google::Cloud::Recommender::V1::MarkRecommendationDismissedRequest.new
723
+ #
724
+ # # Call the mark_recommendation_dismissed method.
725
+ # result = client.mark_recommendation_dismissed request
726
+ #
727
+ # # The returned object is of type Google::Cloud::Recommender::V1::Recommendation.
728
+ # p result
729
+ #
730
+ def mark_recommendation_dismissed request, options = nil
731
+ raise ::ArgumentError, "request must be provided" if request.nil?
732
+
733
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Recommender::V1::MarkRecommendationDismissedRequest
734
+
735
+ # Converts hash and nil to an options object
736
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
737
+
738
+ # Customize the options with defaults
739
+ call_metadata = @config.rpcs.mark_recommendation_dismissed.metadata.to_h
740
+
741
+ # Set x-goog-api-client and x-goog-user-project headers
742
+ call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
743
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
744
+ gapic_version: ::Google::Cloud::Recommender::V1::VERSION,
745
+ transports_version_send: [:rest]
746
+
747
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
748
+
749
+ options.apply_defaults timeout: @config.rpcs.mark_recommendation_dismissed.timeout,
750
+ metadata: call_metadata,
751
+ retry_policy: @config.rpcs.mark_recommendation_dismissed.retry_policy
752
+
753
+ options.apply_defaults timeout: @config.timeout,
754
+ metadata: @config.metadata,
755
+ retry_policy: @config.retry_policy
756
+
757
+ @recommender_stub.mark_recommendation_dismissed request, options do |result, operation|
758
+ yield result, operation if block_given?
759
+ return result
760
+ end
761
+ rescue ::Gapic::Rest::Error => e
762
+ raise ::Google::Cloud::Error.from_error(e)
763
+ end
764
+
589
765
  ##
590
766
  # Marks the Recommendation State as Claimed. Users can use this method to
591
767
  # indicate to the Recommender API that they are starting to apply the
@@ -629,6 +805,22 @@ module Google
629
805
  # @return [::Google::Cloud::Recommender::V1::Recommendation]
630
806
  #
631
807
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
808
+ #
809
+ # @example Basic example
810
+ # require "google/cloud/recommender/v1"
811
+ #
812
+ # # Create a client object. The client can be reused for multiple calls.
813
+ # client = Google::Cloud::Recommender::V1::Recommender::Rest::Client.new
814
+ #
815
+ # # Create a request. To set request fields, pass in keyword arguments.
816
+ # request = Google::Cloud::Recommender::V1::MarkRecommendationClaimedRequest.new
817
+ #
818
+ # # Call the mark_recommendation_claimed method.
819
+ # result = client.mark_recommendation_claimed request
820
+ #
821
+ # # The returned object is of type Google::Cloud::Recommender::V1::Recommendation.
822
+ # p result
823
+ #
632
824
  def mark_recommendation_claimed request, options = nil
633
825
  raise ::ArgumentError, "request must be provided" if request.nil?
634
826
 
@@ -708,6 +900,22 @@ module Google
708
900
  # @return [::Google::Cloud::Recommender::V1::Recommendation]
709
901
  #
710
902
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
903
+ #
904
+ # @example Basic example
905
+ # require "google/cloud/recommender/v1"
906
+ #
907
+ # # Create a client object. The client can be reused for multiple calls.
908
+ # client = Google::Cloud::Recommender::V1::Recommender::Rest::Client.new
909
+ #
910
+ # # Create a request. To set request fields, pass in keyword arguments.
911
+ # request = Google::Cloud::Recommender::V1::MarkRecommendationSucceededRequest.new
912
+ #
913
+ # # Call the mark_recommendation_succeeded method.
914
+ # result = client.mark_recommendation_succeeded request
915
+ #
916
+ # # The returned object is of type Google::Cloud::Recommender::V1::Recommendation.
917
+ # p result
918
+ #
711
919
  def mark_recommendation_succeeded request, options = nil
712
920
  raise ::ArgumentError, "request must be provided" if request.nil?
713
921
 
@@ -787,6 +995,22 @@ module Google
787
995
  # @return [::Google::Cloud::Recommender::V1::Recommendation]
788
996
  #
789
997
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
998
+ #
999
+ # @example Basic example
1000
+ # require "google/cloud/recommender/v1"
1001
+ #
1002
+ # # Create a client object. The client can be reused for multiple calls.
1003
+ # client = Google::Cloud::Recommender::V1::Recommender::Rest::Client.new
1004
+ #
1005
+ # # Create a request. To set request fields, pass in keyword arguments.
1006
+ # request = Google::Cloud::Recommender::V1::MarkRecommendationFailedRequest.new
1007
+ #
1008
+ # # Call the mark_recommendation_failed method.
1009
+ # result = client.mark_recommendation_failed request
1010
+ #
1011
+ # # The returned object is of type Google::Cloud::Recommender::V1::Recommendation.
1012
+ # p result
1013
+ #
790
1014
  def mark_recommendation_failed request, options = nil
791
1015
  raise ::ArgumentError, "request must be provided" if request.nil?
792
1016
 
@@ -851,6 +1075,8 @@ module Google
851
1075
  # * `projects/[PROJECT_ID]/locations/[LOCATION]/recommenders/[RECOMMENDER_ID]/config`
852
1076
  #
853
1077
  # * `organizations/[ORGANIZATION_ID]/locations/[LOCATION]/recommenders/[RECOMMENDER_ID]/config`
1078
+ #
1079
+ # * `billingAccounts/[BILLING_ACCOUNT_ID]/locations/[LOCATION]/recommenders/[RECOMMENDER_ID]/config`
854
1080
  # @yield [result, operation] Access the result along with the TransportOperation object
855
1081
  # @yieldparam result [::Google::Cloud::Recommender::V1::RecommenderConfig]
856
1082
  # @yieldparam operation [::Gapic::Rest::TransportOperation]
@@ -858,6 +1084,22 @@ module Google
858
1084
  # @return [::Google::Cloud::Recommender::V1::RecommenderConfig]
859
1085
  #
860
1086
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
1087
+ #
1088
+ # @example Basic example
1089
+ # require "google/cloud/recommender/v1"
1090
+ #
1091
+ # # Create a client object. The client can be reused for multiple calls.
1092
+ # client = Google::Cloud::Recommender::V1::Recommender::Rest::Client.new
1093
+ #
1094
+ # # Create a request. To set request fields, pass in keyword arguments.
1095
+ # request = Google::Cloud::Recommender::V1::GetRecommenderConfigRequest.new
1096
+ #
1097
+ # # Call the get_recommender_config method.
1098
+ # result = client.get_recommender_config request
1099
+ #
1100
+ # # The returned object is of type Google::Cloud::Recommender::V1::RecommenderConfig.
1101
+ # p result
1102
+ #
861
1103
  def get_recommender_config request, options = nil
862
1104
  raise ::ArgumentError, "request must be provided" if request.nil?
863
1105
 
@@ -926,6 +1168,22 @@ module Google
926
1168
  # @return [::Google::Cloud::Recommender::V1::RecommenderConfig]
927
1169
  #
928
1170
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
1171
+ #
1172
+ # @example Basic example
1173
+ # require "google/cloud/recommender/v1"
1174
+ #
1175
+ # # Create a client object. The client can be reused for multiple calls.
1176
+ # client = Google::Cloud::Recommender::V1::Recommender::Rest::Client.new
1177
+ #
1178
+ # # Create a request. To set request fields, pass in keyword arguments.
1179
+ # request = Google::Cloud::Recommender::V1::UpdateRecommenderConfigRequest.new
1180
+ #
1181
+ # # Call the update_recommender_config method.
1182
+ # result = client.update_recommender_config request
1183
+ #
1184
+ # # The returned object is of type Google::Cloud::Recommender::V1::RecommenderConfig.
1185
+ # p result
1186
+ #
929
1187
  def update_recommender_config request, options = nil
930
1188
  raise ::ArgumentError, "request must be provided" if request.nil?
931
1189
 
@@ -985,11 +1243,13 @@ module Google
985
1243
  #
986
1244
  # Acceptable formats:
987
1245
  #
988
- # * `projects/[PROJECT_NUMBER]/locations/global/recommenders/[INSIGHT_TYPE_ID]/config`
1246
+ # * `projects/[PROJECT_NUMBER]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]/config`
1247
+ #
1248
+ # * `projects/[PROJECT_ID]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]/config`
989
1249
  #
990
- # * `projects/[PROJECT_ID]/locations/global/recommenders/[INSIGHT_TYPE_ID]/config`
1250
+ # * `organizations/[ORGANIZATION_ID]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]/config`
991
1251
  #
992
- # * `organizations/[ORGANIZATION_ID]/locations/global/recommenders/[INSIGHT_TYPE_ID]/config`
1252
+ # * `billingAccounts/[BILLING_ACCOUNT_ID]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]/config`
993
1253
  # @yield [result, operation] Access the result along with the TransportOperation object
994
1254
  # @yieldparam result [::Google::Cloud::Recommender::V1::InsightTypeConfig]
995
1255
  # @yieldparam operation [::Gapic::Rest::TransportOperation]
@@ -997,6 +1257,22 @@ module Google
997
1257
  # @return [::Google::Cloud::Recommender::V1::InsightTypeConfig]
998
1258
  #
999
1259
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
1260
+ #
1261
+ # @example Basic example
1262
+ # require "google/cloud/recommender/v1"
1263
+ #
1264
+ # # Create a client object. The client can be reused for multiple calls.
1265
+ # client = Google::Cloud::Recommender::V1::Recommender::Rest::Client.new
1266
+ #
1267
+ # # Create a request. To set request fields, pass in keyword arguments.
1268
+ # request = Google::Cloud::Recommender::V1::GetInsightTypeConfigRequest.new
1269
+ #
1270
+ # # Call the get_insight_type_config method.
1271
+ # result = client.get_insight_type_config request
1272
+ #
1273
+ # # The returned object is of type Google::Cloud::Recommender::V1::InsightTypeConfig.
1274
+ # p result
1275
+ #
1000
1276
  def get_insight_type_config request, options = nil
1001
1277
  raise ::ArgumentError, "request must be provided" if request.nil?
1002
1278
 
@@ -1065,6 +1341,22 @@ module Google
1065
1341
  # @return [::Google::Cloud::Recommender::V1::InsightTypeConfig]
1066
1342
  #
1067
1343
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
1344
+ #
1345
+ # @example Basic example
1346
+ # require "google/cloud/recommender/v1"
1347
+ #
1348
+ # # Create a client object. The client can be reused for multiple calls.
1349
+ # client = Google::Cloud::Recommender::V1::Recommender::Rest::Client.new
1350
+ #
1351
+ # # Create a request. To set request fields, pass in keyword arguments.
1352
+ # request = Google::Cloud::Recommender::V1::UpdateInsightTypeConfigRequest.new
1353
+ #
1354
+ # # Call the update_insight_type_config method.
1355
+ # result = client.update_insight_type_config request
1356
+ #
1357
+ # # The returned object is of type Google::Cloud::Recommender::V1::InsightTypeConfig.
1358
+ # p result
1359
+ #
1068
1360
  def update_insight_type_config request, options = nil
1069
1361
  raise ::ArgumentError, "request must be provided" if request.nil?
1070
1362
 
@@ -1251,6 +1543,11 @@ module Google
1251
1543
  #
1252
1544
  attr_reader :get_recommendation
1253
1545
  ##
1546
+ # RPC-specific configuration for `mark_recommendation_dismissed`
1547
+ # @return [::Gapic::Config::Method]
1548
+ #
1549
+ attr_reader :mark_recommendation_dismissed
1550
+ ##
1254
1551
  # RPC-specific configuration for `mark_recommendation_claimed`
1255
1552
  # @return [::Gapic::Config::Method]
1256
1553
  #
@@ -1298,6 +1595,8 @@ module Google
1298
1595
  @list_recommendations = ::Gapic::Config::Method.new list_recommendations_config
1299
1596
  get_recommendation_config = parent_rpcs.get_recommendation if parent_rpcs.respond_to? :get_recommendation
1300
1597
  @get_recommendation = ::Gapic::Config::Method.new get_recommendation_config
1598
+ mark_recommendation_dismissed_config = parent_rpcs.mark_recommendation_dismissed if parent_rpcs.respond_to? :mark_recommendation_dismissed
1599
+ @mark_recommendation_dismissed = ::Gapic::Config::Method.new mark_recommendation_dismissed_config
1301
1600
  mark_recommendation_claimed_config = parent_rpcs.mark_recommendation_claimed if parent_rpcs.respond_to? :mark_recommendation_claimed
1302
1601
  @mark_recommendation_claimed = ::Gapic::Config::Method.new mark_recommendation_claimed_config
1303
1602
  mark_recommendation_succeeded_config = parent_rpcs.mark_recommendation_succeeded if parent_rpcs.respond_to? :mark_recommendation_succeeded
@@ -230,6 +230,44 @@ module Google
230
230
  result
231
231
  end
232
232
 
233
+ ##
234
+ # Baseline implementation for the mark_recommendation_dismissed REST call
235
+ #
236
+ # @param request_pb [::Google::Cloud::Recommender::V1::MarkRecommendationDismissedRequest]
237
+ # A request object representing the call parameters. Required.
238
+ # @param options [::Gapic::CallOptions]
239
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
240
+ #
241
+ # @yield [result, operation] Access the result along with the TransportOperation object
242
+ # @yieldparam result [::Google::Cloud::Recommender::V1::Recommendation]
243
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
244
+ #
245
+ # @return [::Google::Cloud::Recommender::V1::Recommendation]
246
+ # A result object deserialized from the server's reply
247
+ def mark_recommendation_dismissed request_pb, options = nil
248
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
249
+
250
+ verb, uri, query_string_params, body = ServiceStub.transcode_mark_recommendation_dismissed_request request_pb
251
+ query_string_params = if query_string_params.any?
252
+ query_string_params.to_h { |p| p.split "=", 2 }
253
+ else
254
+ {}
255
+ end
256
+
257
+ response = @client_stub.make_http_request(
258
+ verb,
259
+ uri: uri,
260
+ body: body || "",
261
+ params: query_string_params,
262
+ options: options
263
+ )
264
+ operation = ::Gapic::Rest::TransportOperation.new response
265
+ result = ::Google::Cloud::Recommender::V1::Recommendation.decode_json response.body, ignore_unknown_fields: true
266
+
267
+ yield result, operation if block_given?
268
+ result
269
+ end
270
+
233
271
  ##
234
272
  # Baseline implementation for the mark_recommendation_claimed REST call
235
273
  #
@@ -710,6 +748,52 @@ module Google
710
748
  transcoder.transcode request_pb
711
749
  end
712
750
 
751
+ ##
752
+ # @private
753
+ #
754
+ # GRPC transcoding helper method for the mark_recommendation_dismissed REST call
755
+ #
756
+ # @param request_pb [::Google::Cloud::Recommender::V1::MarkRecommendationDismissedRequest]
757
+ # A request object representing the call parameters. Required.
758
+ # @return [Array(String, [String, nil], Hash{String => String})]
759
+ # Uri, Body, Query string parameters
760
+ def self.transcode_mark_recommendation_dismissed_request request_pb
761
+ transcoder = Gapic::Rest::GrpcTranscoder.new
762
+ .with_bindings(
763
+ uri_method: :post,
764
+ uri_template: "/v1/{name}:markDismissed",
765
+ body: "*",
766
+ matches: [
767
+ ["name", %r{^projects/[^/]+/locations/[^/]+/recommenders/[^/]+/recommendations/[^/]+/?$}, false]
768
+ ]
769
+ )
770
+ .with_bindings(
771
+ uri_method: :post,
772
+ uri_template: "/v1/{name}:markDismissed",
773
+ body: "*",
774
+ matches: [
775
+ ["name", %r{^billingAccounts/[^/]+/locations/[^/]+/recommenders/[^/]+/recommendations/[^/]+/?$}, false]
776
+ ]
777
+ )
778
+ .with_bindings(
779
+ uri_method: :post,
780
+ uri_template: "/v1/{name}:markDismissed",
781
+ body: "*",
782
+ matches: [
783
+ ["name", %r{^folders/[^/]+/locations/[^/]+/recommenders/[^/]+/recommendations/[^/]+/?$}, false]
784
+ ]
785
+ )
786
+ .with_bindings(
787
+ uri_method: :post,
788
+ uri_template: "/v1/{name}:markDismissed",
789
+ body: "*",
790
+ matches: [
791
+ ["name", %r{^organizations/[^/]+/locations/[^/]+/recommenders/[^/]+/recommendations/[^/]+/?$}, false]
792
+ ]
793
+ )
794
+ transcoder.transcode request_pb
795
+ end
796
+
713
797
  ##
714
798
  # @private
715
799
  #
@@ -873,6 +957,13 @@ module Google
873
957
  ["name", %r{^organizations/[^/]+/locations/[^/]+/recommenders/[^/]+/config/?$}, false]
874
958
  ]
875
959
  )
960
+ .with_bindings(
961
+ uri_method: :get,
962
+ uri_template: "/v1/{name}",
963
+ matches: [
964
+ ["name", %r{^billingAccounts/[^/]+/locations/[^/]+/recommenders/[^/]+/config/?$}, false]
965
+ ]
966
+ )
876
967
  transcoder.transcode request_pb
877
968
  end
878
969
 
@@ -903,6 +994,14 @@ module Google
903
994
  ["recommender_config.name", %r{^organizations/[^/]+/locations/[^/]+/recommenders/[^/]+/config/?$}, false]
904
995
  ]
905
996
  )
997
+ .with_bindings(
998
+ uri_method: :patch,
999
+ uri_template: "/v1/{recommender_config.name}",
1000
+ body: "recommender_config",
1001
+ matches: [
1002
+ ["recommender_config.name", %r{^billingAccounts/[^/]+/locations/[^/]+/recommenders/[^/]+/config/?$}, false]
1003
+ ]
1004
+ )
906
1005
  transcoder.transcode request_pb
907
1006
  end
908
1007
 
@@ -931,6 +1030,13 @@ module Google
931
1030
  ["name", %r{^organizations/[^/]+/locations/[^/]+/insightTypes/[^/]+/config/?$}, false]
932
1031
  ]
933
1032
  )
1033
+ .with_bindings(
1034
+ uri_method: :get,
1035
+ uri_template: "/v1/{name}",
1036
+ matches: [
1037
+ ["name", %r{^billingAccounts/[^/]+/locations/[^/]+/insightTypes/[^/]+/config/?$}, false]
1038
+ ]
1039
+ )
934
1040
  transcoder.transcode request_pb
935
1041
  end
936
1042
 
@@ -961,6 +1067,14 @@ module Google
961
1067
  ["insight_type_config.name", %r{^organizations/[^/]+/locations/[^/]+/insightTypes/[^/]+/config/?$}, false]
962
1068
  ]
963
1069
  )
1070
+ .with_bindings(
1071
+ uri_method: :patch,
1072
+ uri_template: "/v1/{insight_type_config.name}",
1073
+ body: "insight_type_config",
1074
+ matches: [
1075
+ ["insight_type_config.name", %r{^billingAccounts/[^/]+/locations/[^/]+/insightTypes/[^/]+/config/?$}, false]
1076
+ ]
1077
+ )
964
1078
  transcoder.transcode request_pb
965
1079
  end
966
1080
  end
@@ -10,7 +10,7 @@ require 'google/protobuf/struct_pb'
10
10
  require 'google/protobuf/timestamp_pb'
11
11
 
12
12
 
13
- descriptor_data = "\n4google/cloud/recommender/v1/recommender_config.proto\x12\x1bgoogle.cloud.recommender.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xd3\x04\n\x11RecommenderConfig\x12\x0c\n\x04name\x18\x01 \x01(\t\x12_\n\x1drecommender_generation_config\x18\x02 \x01(\x0b\x32\x38.google.cloud.recommender.v1.RecommenderGenerationConfig\x12\x0c\n\x04\x65tag\x18\x03 \x01(\t\x12/\n\x0bupdate_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x1b\n\x0brevision_id\x18\x05 \x01(\tB\x06\xe0\x41\x05\xe0\x41\x03\x12T\n\x0b\x61nnotations\x18\x06 \x03(\x0b\x32?.google.cloud.recommender.v1.RecommenderConfig.AnnotationsEntry\x12\x14\n\x0c\x64isplay_name\x18\x07 \x01(\t\x1a\x32\n\x10\x41nnotationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01:\xd2\x01\xea\x41\xce\x01\n,recommender.googleapis.com/RecommenderConfig\x12Iprojects/{project}/locations/{location}/recommenders/{recommender}/config\x12Sorganizations/{organization}/locations/{location}/recommenders/{recommender}/config\"F\n\x1bRecommenderGenerationConfig\x12\'\n\x06params\x18\x01 \x01(\x0b\x32\x17.google.protobuf.StructB\xa3\x01\n\x1f\x63om.google.cloud.recommender.v1B\x16RecommenderConfigProtoP\x01ZAcloud.google.com/go/recommender/apiv1/recommenderpb;recommenderpb\xa2\x02\x04\x43REC\xaa\x02\x1bGoogle.Cloud.Recommender.V1b\x06proto3"
13
+ descriptor_data = "\n4google/cloud/recommender/v1/recommender_config.proto\x12\x1bgoogle.cloud.recommender.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xad\x05\n\x11RecommenderConfig\x12\x0c\n\x04name\x18\x01 \x01(\t\x12_\n\x1drecommender_generation_config\x18\x02 \x01(\x0b\x32\x38.google.cloud.recommender.v1.RecommenderGenerationConfig\x12\x0c\n\x04\x65tag\x18\x03 \x01(\t\x12/\n\x0bupdate_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x1b\n\x0brevision_id\x18\x05 \x01(\tB\x06\xe0\x41\x05\xe0\x41\x03\x12T\n\x0b\x61nnotations\x18\x06 \x03(\x0b\x32?.google.cloud.recommender.v1.RecommenderConfig.AnnotationsEntry\x12\x14\n\x0c\x64isplay_name\x18\x07 \x01(\t\x1a\x32\n\x10\x41nnotationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01:\xac\x02\xea\x41\xa8\x02\n,recommender.googleapis.com/RecommenderConfig\x12Iprojects/{project}/locations/{location}/recommenders/{recommender}/config\x12Sorganizations/{organization}/locations/{location}/recommenders/{recommender}/config\x12XbillingAccounts/{billing_account}/locations/{location}/recommenders/{recommender}/config\"F\n\x1bRecommenderGenerationConfig\x12\'\n\x06params\x18\x01 \x01(\x0b\x32\x17.google.protobuf.StructB\xa3\x01\n\x1f\x63om.google.cloud.recommender.v1B\x16RecommenderConfigProtoP\x01ZAcloud.google.com/go/recommender/apiv1/recommenderpb;recommenderpb\xa2\x02\x04\x43REC\xaa\x02\x1bGoogle.Cloud.Recommender.V1b\x06proto3"
14
14
 
15
15
  pool = Google::Protobuf::DescriptorPool.generated_pool
16
16
 
@@ -15,7 +15,7 @@ require 'google/cloud/recommender/v1/recommender_config_pb'
15
15
  require 'google/protobuf/field_mask_pb'
16
16
 
17
17
 
18
- descriptor_data = "\n5google/cloud/recommender/v1/recommender_service.proto\x12\x1bgoogle.cloud.recommender.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a)google/cloud/recommender/v1/insight.proto\x1a\x35google/cloud/recommender/v1/insight_type_config.proto\x1a\x30google/cloud/recommender/v1/recommendation.proto\x1a\x34google/cloud/recommender/v1/recommender_config.proto\x1a google/protobuf/field_mask.proto\"\x9b\x01\n\x13ListInsightsRequest\x12>\n\x06parent\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&recommender.googleapis.com/InsightType\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x13\n\x06\x66ilter\x18\x04 \x01(\tB\x03\xe0\x41\x01\"g\n\x14ListInsightsResponse\x12\x36\n\x08insights\x18\x01 \x03(\x0b\x32$.google.cloud.recommender.v1.Insight\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"M\n\x11GetInsightRequest\x12\x38\n\x04name\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\n\"recommender.googleapis.com/Insight\"\x88\x02\n\x1aMarkInsightAcceptedRequest\x12\x38\n\x04name\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\n\"recommender.googleapis.com/Insight\x12g\n\x0estate_metadata\x18\x02 \x03(\x0b\x32J.google.cloud.recommender.v1.MarkInsightAcceptedRequest.StateMetadataEntryB\x03\xe0\x41\x01\x12\x11\n\x04\x65tag\x18\x03 \x01(\tB\x03\xe0\x41\x02\x1a\x34\n\x12StateMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x9d\x01\n\x1aListRecommendationsRequest\x12>\n\x06parent\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&recommender.googleapis.com/Recommender\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x0e\n\x06\x66ilter\x18\x05 \x01(\t\"|\n\x1bListRecommendationsResponse\x12\x44\n\x0frecommendations\x18\x01 \x03(\x0b\x32+.google.cloud.recommender.v1.Recommendation\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"[\n\x18GetRecommendationRequest\x12?\n\x04name\x18\x01 \x01(\tB1\xe0\x41\x02\xfa\x41+\n)recommender.googleapis.com/Recommendation\"\x96\x02\n MarkRecommendationClaimedRequest\x12?\n\x04name\x18\x01 \x01(\tB1\xe0\x41\x02\xfa\x41+\n)recommender.googleapis.com/Recommendation\x12h\n\x0estate_metadata\x18\x02 \x03(\x0b\x32P.google.cloud.recommender.v1.MarkRecommendationClaimedRequest.StateMetadataEntry\x12\x11\n\x04\x65tag\x18\x03 \x01(\tB\x03\xe0\x41\x02\x1a\x34\n\x12StateMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x9a\x02\n\"MarkRecommendationSucceededRequest\x12?\n\x04name\x18\x01 \x01(\tB1\xe0\x41\x02\xfa\x41+\n)recommender.googleapis.com/Recommendation\x12j\n\x0estate_metadata\x18\x02 \x03(\x0b\x32R.google.cloud.recommender.v1.MarkRecommendationSucceededRequest.StateMetadataEntry\x12\x11\n\x04\x65tag\x18\x03 \x01(\tB\x03\xe0\x41\x02\x1a\x34\n\x12StateMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x94\x02\n\x1fMarkRecommendationFailedRequest\x12?\n\x04name\x18\x01 \x01(\tB1\xe0\x41\x02\xfa\x41+\n)recommender.googleapis.com/Recommendation\x12g\n\x0estate_metadata\x18\x02 \x03(\x0b\x32O.google.cloud.recommender.v1.MarkRecommendationFailedRequest.StateMetadataEntry\x12\x11\n\x04\x65tag\x18\x03 \x01(\tB\x03\xe0\x41\x02\x1a\x34\n\x12StateMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"a\n\x1bGetRecommenderConfigRequest\x12\x42\n\x04name\x18\x01 \x01(\tB4\xe0\x41\x02\xfa\x41.\n,recommender.googleapis.com/RecommenderConfig\"\xb9\x01\n\x1eUpdateRecommenderConfigRequest\x12O\n\x12recommender_config\x18\x01 \x01(\x0b\x32..google.cloud.recommender.v1.RecommenderConfigB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\x12\x15\n\rvalidate_only\x18\x03 \x01(\x08\"a\n\x1bGetInsightTypeConfigRequest\x12\x42\n\x04name\x18\x01 \x01(\tB4\xe0\x41\x02\xfa\x41.\n,recommender.googleapis.com/InsightTypeConfig\"\xba\x01\n\x1eUpdateInsightTypeConfigRequest\x12P\n\x13insight_type_config\x18\x01 \x01(\x0b\x32..google.cloud.recommender.v1.InsightTypeConfigB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\x12\x15\n\rvalidate_only\x18\x03 \x01(\x08\x32\xff\'\n\x0bRecommender\x12\x8b\x03\n\x0cListInsights\x12\x30.google.cloud.recommender.v1.ListInsightsRequest\x1a\x31.google.cloud.recommender.v1.ListInsightsResponse\"\x95\x02\x82\xd3\xe4\x93\x02\x85\x02\x12;/v1/{parent=projects/*/locations/*/insightTypes/*}/insightsZD\x12\x42/v1/{parent=billingAccounts/*/locations/*/insightTypes/*}/insightsZ<\x12:/v1/{parent=folders/*/locations/*/insightTypes/*}/insightsZB\x12@/v1/{parent=organizations/*/locations/*/insightTypes/*}/insights\xda\x41\x06parent\x12\xf8\x02\n\nGetInsight\x12..google.cloud.recommender.v1.GetInsightRequest\x1a$.google.cloud.recommender.v1.Insight\"\x93\x02\x82\xd3\xe4\x93\x02\x85\x02\x12;/v1/{name=projects/*/locations/*/insightTypes/*/insights/*}ZD\x12\x42/v1/{name=billingAccounts/*/locations/*/insightTypes/*/insights/*}Z<\x12:/v1/{name=folders/*/locations/*/insightTypes/*/insights/*}ZB\x12@/v1/{name=organizations/*/locations/*/insightTypes/*/insights/*}\xda\x41\x04name\x12\xde\x03\n\x13MarkInsightAccepted\x12\x37.google.cloud.recommender.v1.MarkInsightAcceptedRequest\x1a$.google.cloud.recommender.v1.Insight\"\xe7\x02\x82\xd3\xe4\x93\x02\xc5\x02\"H/v1/{name=projects/*/locations/*/insightTypes/*/insights/*}:markAccepted:\x01*ZT\"O/v1/{name=billingAccounts/*/locations/*/insightTypes/*/insights/*}:markAccepted:\x01*ZL\"G/v1/{name=folders/*/locations/*/insightTypes/*/insights/*}:markAccepted:\x01*ZR\"M/v1/{name=organizations/*/locations/*/insightTypes/*/insights/*}:markAccepted:\x01*\xda\x41\x18name,state_metadata,etag\x12\xcc\x03\n\x13ListRecommendations\x12\x37.google.cloud.recommender.v1.ListRecommendationsRequest\x1a\x38.google.cloud.recommender.v1.ListRecommendationsResponse\"\xc1\x02\x82\xd3\xe4\x93\x02\xa1\x02\x12\x42/v1/{parent=projects/*/locations/*/recommenders/*}/recommendationsZK\x12I/v1/{parent=billingAccounts/*/locations/*/recommenders/*}/recommendationsZC\x12\x41/v1/{parent=folders/*/locations/*/recommenders/*}/recommendationsZI\x12G/v1/{parent=organizations/*/locations/*/recommenders/*}/recommendations\xda\x41\x06parent\xda\x41\rparent,filter\x12\xa9\x03\n\x11GetRecommendation\x12\x35.google.cloud.recommender.v1.GetRecommendationRequest\x1a+.google.cloud.recommender.v1.Recommendation\"\xaf\x02\x82\xd3\xe4\x93\x02\xa1\x02\x12\x42/v1/{name=projects/*/locations/*/recommenders/*/recommendations/*}ZK\x12I/v1/{name=billingAccounts/*/locations/*/recommenders/*/recommendations/*}ZC\x12\x41/v1/{name=folders/*/locations/*/recommenders/*/recommendations/*}ZI\x12G/v1/{name=organizations/*/locations/*/recommenders/*/recommendations/*}\xda\x41\x04name\x12\x89\x04\n\x19MarkRecommendationClaimed\x12=.google.cloud.recommender.v1.MarkRecommendationClaimedRequest\x1a+.google.cloud.recommender.v1.Recommendation\"\xff\x02\x82\xd3\xe4\x93\x02\xdd\x02\"N/v1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markClaimed:\x01*ZZ\"U/v1/{name=billingAccounts/*/locations/*/recommenders/*/recommendations/*}:markClaimed:\x01*ZR\"M/v1/{name=folders/*/locations/*/recommenders/*/recommendations/*}:markClaimed:\x01*ZX\"S/v1/{name=organizations/*/locations/*/recommenders/*/recommendations/*}:markClaimed:\x01*\xda\x41\x18name,state_metadata,etag\x12\x95\x04\n\x1bMarkRecommendationSucceeded\x12?.google.cloud.recommender.v1.MarkRecommendationSucceededRequest\x1a+.google.cloud.recommender.v1.Recommendation\"\x87\x03\x82\xd3\xe4\x93\x02\xe5\x02\"P/v1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markSucceeded:\x01*Z\\\"W/v1/{name=billingAccounts/*/locations/*/recommenders/*/recommendations/*}:markSucceeded:\x01*ZT\"O/v1/{name=folders/*/locations/*/recommenders/*/recommendations/*}:markSucceeded:\x01*ZZ\"U/v1/{name=organizations/*/locations/*/recommenders/*/recommendations/*}:markSucceeded:\x01*\xda\x41\x18name,state_metadata,etag\x12\x83\x04\n\x18MarkRecommendationFailed\x12<.google.cloud.recommender.v1.MarkRecommendationFailedRequest\x1a+.google.cloud.recommender.v1.Recommendation\"\xfb\x02\x82\xd3\xe4\x93\x02\xd9\x02\"M/v1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markFailed:\x01*ZY\"T/v1/{name=billingAccounts/*/locations/*/recommenders/*/recommendations/*}:markFailed:\x01*ZQ\"L/v1/{name=folders/*/locations/*/recommenders/*/recommendations/*}:markFailed:\x01*ZW\"R/v1/{name=organizations/*/locations/*/recommenders/*/recommendations/*}:markFailed:\x01*\xda\x41\x18name,state_metadata,etag\x12\x89\x02\n\x14GetRecommenderConfig\x12\x38.google.cloud.recommender.v1.GetRecommenderConfigRequest\x1a..google.cloud.recommender.v1.RecommenderConfig\"\x86\x01\x82\xd3\xe4\x93\x02y\x12\x37/v1/{name=projects/*/locations/*/recommenders/*/config}Z>\x12</v1/{name=organizations/*/locations/*/recommenders/*/config}\xda\x41\x04name\x12\xf8\x02\n\x17UpdateRecommenderConfig\x12;.google.cloud.recommender.v1.UpdateRecommenderConfigRequest\x1a..google.cloud.recommender.v1.RecommenderConfig\"\xef\x01\x82\xd3\xe4\x93\x02\xc7\x01\x32J/v1/{recommender_config.name=projects/*/locations/*/recommenders/*/config}:\x12recommender_configZe2O/v1/{recommender_config.name=organizations/*/locations/*/recommenders/*/config}:\x12recommender_config\xda\x41\x1erecommender_config,update_mask\x12\x89\x02\n\x14GetInsightTypeConfig\x12\x38.google.cloud.recommender.v1.GetInsightTypeConfigRequest\x1a..google.cloud.recommender.v1.InsightTypeConfig\"\x86\x01\x82\xd3\xe4\x93\x02y\x12\x37/v1/{name=projects/*/locations/*/insightTypes/*/config}Z>\x12</v1/{name=organizations/*/locations/*/insightTypes/*/config}\xda\x41\x04name\x12\xfd\x02\n\x17UpdateInsightTypeConfig\x12;.google.cloud.recommender.v1.UpdateInsightTypeConfigRequest\x1a..google.cloud.recommender.v1.InsightTypeConfig\"\xf4\x01\x82\xd3\xe4\x93\x02\xcb\x01\x32K/v1/{insight_type_config.name=projects/*/locations/*/insightTypes/*/config}:\x13insight_type_configZg2P/v1/{insight_type_config.name=organizations/*/locations/*/insightTypes/*/config}:\x13insight_type_config\xda\x41\x1finsight_type_config,update_mask\x1aN\xca\x41\x1arecommender.googleapis.com\xd2\x41.https://www.googleapis.com/auth/cloud-platformB\x9d\x01\n\x1f\x63om.google.cloud.recommender.v1B\x10RecommenderProtoP\x01ZAcloud.google.com/go/recommender/apiv1/recommenderpb;recommenderpb\xa2\x02\x04\x43REC\xaa\x02\x1bGoogle.Cloud.Recommender.V1b\x06proto3"
18
+ descriptor_data = "\n5google/cloud/recommender/v1/recommender_service.proto\x12\x1bgoogle.cloud.recommender.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a)google/cloud/recommender/v1/insight.proto\x1a\x35google/cloud/recommender/v1/insight_type_config.proto\x1a\x30google/cloud/recommender/v1/recommendation.proto\x1a\x34google/cloud/recommender/v1/recommender_config.proto\x1a google/protobuf/field_mask.proto\"\x9b\x01\n\x13ListInsightsRequest\x12>\n\x06parent\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&recommender.googleapis.com/InsightType\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x13\n\x06\x66ilter\x18\x04 \x01(\tB\x03\xe0\x41\x01\"g\n\x14ListInsightsResponse\x12\x36\n\x08insights\x18\x01 \x03(\x0b\x32$.google.cloud.recommender.v1.Insight\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"M\n\x11GetInsightRequest\x12\x38\n\x04name\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\n\"recommender.googleapis.com/Insight\"\x88\x02\n\x1aMarkInsightAcceptedRequest\x12\x38\n\x04name\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\n\"recommender.googleapis.com/Insight\x12g\n\x0estate_metadata\x18\x02 \x03(\x0b\x32J.google.cloud.recommender.v1.MarkInsightAcceptedRequest.StateMetadataEntryB\x03\xe0\x41\x01\x12\x11\n\x04\x65tag\x18\x03 \x01(\tB\x03\xe0\x41\x02\x1a\x34\n\x12StateMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x9d\x01\n\x1aListRecommendationsRequest\x12>\n\x06parent\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&recommender.googleapis.com/Recommender\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x0e\n\x06\x66ilter\x18\x05 \x01(\t\"|\n\x1bListRecommendationsResponse\x12\x44\n\x0frecommendations\x18\x01 \x03(\x0b\x32+.google.cloud.recommender.v1.Recommendation\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"[\n\x18GetRecommendationRequest\x12?\n\x04name\x18\x01 \x01(\tB1\xe0\x41\x02\xfa\x41+\n)recommender.googleapis.com/Recommendation\"s\n\"MarkRecommendationDismissedRequest\x12?\n\x04name\x18\x01 \x01(\tB1\xe0\x41\x02\xfa\x41+\n)recommender.googleapis.com/Recommendation\x12\x0c\n\x04\x65tag\x18\x02 \x01(\t\"\x96\x02\n MarkRecommendationClaimedRequest\x12?\n\x04name\x18\x01 \x01(\tB1\xe0\x41\x02\xfa\x41+\n)recommender.googleapis.com/Recommendation\x12h\n\x0estate_metadata\x18\x02 \x03(\x0b\x32P.google.cloud.recommender.v1.MarkRecommendationClaimedRequest.StateMetadataEntry\x12\x11\n\x04\x65tag\x18\x03 \x01(\tB\x03\xe0\x41\x02\x1a\x34\n\x12StateMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x9a\x02\n\"MarkRecommendationSucceededRequest\x12?\n\x04name\x18\x01 \x01(\tB1\xe0\x41\x02\xfa\x41+\n)recommender.googleapis.com/Recommendation\x12j\n\x0estate_metadata\x18\x02 \x03(\x0b\x32R.google.cloud.recommender.v1.MarkRecommendationSucceededRequest.StateMetadataEntry\x12\x11\n\x04\x65tag\x18\x03 \x01(\tB\x03\xe0\x41\x02\x1a\x34\n\x12StateMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x94\x02\n\x1fMarkRecommendationFailedRequest\x12?\n\x04name\x18\x01 \x01(\tB1\xe0\x41\x02\xfa\x41+\n)recommender.googleapis.com/Recommendation\x12g\n\x0estate_metadata\x18\x02 \x03(\x0b\x32O.google.cloud.recommender.v1.MarkRecommendationFailedRequest.StateMetadataEntry\x12\x11\n\x04\x65tag\x18\x03 \x01(\tB\x03\xe0\x41\x02\x1a\x34\n\x12StateMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"a\n\x1bGetRecommenderConfigRequest\x12\x42\n\x04name\x18\x01 \x01(\tB4\xe0\x41\x02\xfa\x41.\n,recommender.googleapis.com/RecommenderConfig\"\xb9\x01\n\x1eUpdateRecommenderConfigRequest\x12O\n\x12recommender_config\x18\x01 \x01(\x0b\x32..google.cloud.recommender.v1.RecommenderConfigB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\x12\x15\n\rvalidate_only\x18\x03 \x01(\x08\"a\n\x1bGetInsightTypeConfigRequest\x12\x42\n\x04name\x18\x01 \x01(\tB4\xe0\x41\x02\xfa\x41.\n,recommender.googleapis.com/InsightTypeConfig\"\xba\x01\n\x1eUpdateInsightTypeConfigRequest\x12P\n\x13insight_type_config\x18\x01 \x01(\x0b\x32..google.cloud.recommender.v1.InsightTypeConfigB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\x12\x15\n\rvalidate_only\x18\x03 \x01(\x08\x32\xd6.\n\x0bRecommender\x12\x8b\x03\n\x0cListInsights\x12\x30.google.cloud.recommender.v1.ListInsightsRequest\x1a\x31.google.cloud.recommender.v1.ListInsightsResponse\"\x95\x02\x82\xd3\xe4\x93\x02\x85\x02\x12;/v1/{parent=projects/*/locations/*/insightTypes/*}/insightsZD\x12\x42/v1/{parent=billingAccounts/*/locations/*/insightTypes/*}/insightsZ<\x12:/v1/{parent=folders/*/locations/*/insightTypes/*}/insightsZB\x12@/v1/{parent=organizations/*/locations/*/insightTypes/*}/insights\xda\x41\x06parent\x12\xf8\x02\n\nGetInsight\x12..google.cloud.recommender.v1.GetInsightRequest\x1a$.google.cloud.recommender.v1.Insight\"\x93\x02\x82\xd3\xe4\x93\x02\x85\x02\x12;/v1/{name=projects/*/locations/*/insightTypes/*/insights/*}ZD\x12\x42/v1/{name=billingAccounts/*/locations/*/insightTypes/*/insights/*}Z<\x12:/v1/{name=folders/*/locations/*/insightTypes/*/insights/*}ZB\x12@/v1/{name=organizations/*/locations/*/insightTypes/*/insights/*}\xda\x41\x04name\x12\xde\x03\n\x13MarkInsightAccepted\x12\x37.google.cloud.recommender.v1.MarkInsightAcceptedRequest\x1a$.google.cloud.recommender.v1.Insight\"\xe7\x02\x82\xd3\xe4\x93\x02\xc5\x02\"H/v1/{name=projects/*/locations/*/insightTypes/*/insights/*}:markAccepted:\x01*ZT\"O/v1/{name=billingAccounts/*/locations/*/insightTypes/*/insights/*}:markAccepted:\x01*ZL\"G/v1/{name=folders/*/locations/*/insightTypes/*/insights/*}:markAccepted:\x01*ZR\"M/v1/{name=organizations/*/locations/*/insightTypes/*/insights/*}:markAccepted:\x01*\xda\x41\x18name,state_metadata,etag\x12\xcc\x03\n\x13ListRecommendations\x12\x37.google.cloud.recommender.v1.ListRecommendationsRequest\x1a\x38.google.cloud.recommender.v1.ListRecommendationsResponse\"\xc1\x02\x82\xd3\xe4\x93\x02\xa1\x02\x12\x42/v1/{parent=projects/*/locations/*/recommenders/*}/recommendationsZK\x12I/v1/{parent=billingAccounts/*/locations/*/recommenders/*}/recommendationsZC\x12\x41/v1/{parent=folders/*/locations/*/recommenders/*}/recommendationsZI\x12G/v1/{parent=organizations/*/locations/*/recommenders/*}/recommendations\xda\x41\x06parent\xda\x41\rparent,filter\x12\xa9\x03\n\x11GetRecommendation\x12\x35.google.cloud.recommender.v1.GetRecommendationRequest\x1a+.google.cloud.recommender.v1.Recommendation\"\xaf\x02\x82\xd3\xe4\x93\x02\xa1\x02\x12\x42/v1/{name=projects/*/locations/*/recommenders/*/recommendations/*}ZK\x12I/v1/{name=billingAccounts/*/locations/*/recommenders/*/recommendations/*}ZC\x12\x41/v1/{name=folders/*/locations/*/recommenders/*/recommendations/*}ZI\x12G/v1/{name=organizations/*/locations/*/recommenders/*/recommendations/*}\xda\x41\x04name\x12\xfa\x03\n\x1bMarkRecommendationDismissed\x12?.google.cloud.recommender.v1.MarkRecommendationDismissedRequest\x1a+.google.cloud.recommender.v1.Recommendation\"\xec\x02\x82\xd3\xe4\x93\x02\xe5\x02\"P/v1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markDismissed:\x01*Z\\\"W/v1/{name=billingAccounts/*/locations/*/recommenders/*/recommendations/*}:markDismissed:\x01*ZT\"O/v1/{name=folders/*/locations/*/recommenders/*/recommendations/*}:markDismissed:\x01*ZZ\"U/v1/{name=organizations/*/locations/*/recommenders/*/recommendations/*}:markDismissed:\x01*\x12\x89\x04\n\x19MarkRecommendationClaimed\x12=.google.cloud.recommender.v1.MarkRecommendationClaimedRequest\x1a+.google.cloud.recommender.v1.Recommendation\"\xff\x02\x82\xd3\xe4\x93\x02\xdd\x02\"N/v1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markClaimed:\x01*ZZ\"U/v1/{name=billingAccounts/*/locations/*/recommenders/*/recommendations/*}:markClaimed:\x01*ZR\"M/v1/{name=folders/*/locations/*/recommenders/*/recommendations/*}:markClaimed:\x01*ZX\"S/v1/{name=organizations/*/locations/*/recommenders/*/recommendations/*}:markClaimed:\x01*\xda\x41\x18name,state_metadata,etag\x12\x95\x04\n\x1bMarkRecommendationSucceeded\x12?.google.cloud.recommender.v1.MarkRecommendationSucceededRequest\x1a+.google.cloud.recommender.v1.Recommendation\"\x87\x03\x82\xd3\xe4\x93\x02\xe5\x02\"P/v1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markSucceeded:\x01*Z\\\"W/v1/{name=billingAccounts/*/locations/*/recommenders/*/recommendations/*}:markSucceeded:\x01*ZT\"O/v1/{name=folders/*/locations/*/recommenders/*/recommendations/*}:markSucceeded:\x01*ZZ\"U/v1/{name=organizations/*/locations/*/recommenders/*/recommendations/*}:markSucceeded:\x01*\xda\x41\x18name,state_metadata,etag\x12\x83\x04\n\x18MarkRecommendationFailed\x12<.google.cloud.recommender.v1.MarkRecommendationFailedRequest\x1a+.google.cloud.recommender.v1.Recommendation\"\xfb\x02\x82\xd3\xe4\x93\x02\xd9\x02\"M/v1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markFailed:\x01*ZY\"T/v1/{name=billingAccounts/*/locations/*/recommenders/*/recommendations/*}:markFailed:\x01*ZQ\"L/v1/{name=folders/*/locations/*/recommenders/*/recommendations/*}:markFailed:\x01*ZW\"R/v1/{name=organizations/*/locations/*/recommenders/*/recommendations/*}:markFailed:\x01*\xda\x41\x18name,state_metadata,etag\x12\xcc\x02\n\x14GetRecommenderConfig\x12\x38.google.cloud.recommender.v1.GetRecommenderConfigRequest\x1a..google.cloud.recommender.v1.RecommenderConfig\"\xc9\x01\x82\xd3\xe4\x93\x02\xbb\x01\x12\x37/v1/{name=projects/*/locations/*/recommenders/*/config}Z>\x12</v1/{name=organizations/*/locations/*/recommenders/*/config}Z@\x12>/v1/{name=billingAccounts/*/locations/*/recommenders/*/config}\xda\x41\x04name\x12\xe1\x03\n\x17UpdateRecommenderConfig\x12;.google.cloud.recommender.v1.UpdateRecommenderConfigRequest\x1a..google.cloud.recommender.v1.RecommenderConfig\"\xd8\x02\x82\xd3\xe4\x93\x02\xb0\x02\x32J/v1/{recommender_config.name=projects/*/locations/*/recommenders/*/config}:\x12recommender_configZe2O/v1/{recommender_config.name=organizations/*/locations/*/recommenders/*/config}:\x12recommender_configZg2Q/v1/{recommender_config.name=billingAccounts/*/locations/*/recommenders/*/config}:\x12recommender_config\xda\x41\x1erecommender_config,update_mask\x12\xcc\x02\n\x14GetInsightTypeConfig\x12\x38.google.cloud.recommender.v1.GetInsightTypeConfigRequest\x1a..google.cloud.recommender.v1.InsightTypeConfig\"\xc9\x01\x82\xd3\xe4\x93\x02\xbb\x01\x12\x37/v1/{name=projects/*/locations/*/insightTypes/*/config}Z>\x12</v1/{name=organizations/*/locations/*/insightTypes/*/config}Z@\x12>/v1/{name=billingAccounts/*/locations/*/insightTypes/*/config}\xda\x41\x04name\x12\xe8\x03\n\x17UpdateInsightTypeConfig\x12;.google.cloud.recommender.v1.UpdateInsightTypeConfigRequest\x1a..google.cloud.recommender.v1.InsightTypeConfig\"\xdf\x02\x82\xd3\xe4\x93\x02\xb6\x02\x32K/v1/{insight_type_config.name=projects/*/locations/*/insightTypes/*/config}:\x13insight_type_configZg2P/v1/{insight_type_config.name=organizations/*/locations/*/insightTypes/*/config}:\x13insight_type_configZi2R/v1/{insight_type_config.name=billingAccounts/*/locations/*/insightTypes/*/config}:\x13insight_type_config\xda\x41\x1finsight_type_config,update_mask\x1aN\xca\x41\x1arecommender.googleapis.com\xd2\x41.https://www.googleapis.com/auth/cloud-platformB\x9d\x01\n\x1f\x63om.google.cloud.recommender.v1B\x10RecommenderProtoP\x01ZAcloud.google.com/go/recommender/apiv1/recommenderpb;recommenderpb\xa2\x02\x04\x43REC\xaa\x02\x1bGoogle.Cloud.Recommender.V1b\x06proto3"
19
19
 
20
20
  pool = Google::Protobuf::DescriptorPool.generated_pool
21
21
 
@@ -57,6 +57,7 @@ module Google
57
57
  ListRecommendationsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recommender.v1.ListRecommendationsRequest").msgclass
58
58
  ListRecommendationsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recommender.v1.ListRecommendationsResponse").msgclass
59
59
  GetRecommendationRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recommender.v1.GetRecommendationRequest").msgclass
60
+ MarkRecommendationDismissedRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recommender.v1.MarkRecommendationDismissedRequest").msgclass
60
61
  MarkRecommendationClaimedRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recommender.v1.MarkRecommendationClaimedRequest").msgclass
61
62
  MarkRecommendationSucceededRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recommender.v1.MarkRecommendationSucceededRequest").msgclass
62
63
  MarkRecommendationFailedRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recommender.v1.MarkRecommendationFailedRequest").msgclass
@@ -55,6 +55,16 @@ module Google
55
55
  # Gets the requested recommendation. Requires the recommender.*.get
56
56
  # IAM permission for the specified recommender.
57
57
  rpc :GetRecommendation, ::Google::Cloud::Recommender::V1::GetRecommendationRequest, ::Google::Cloud::Recommender::V1::Recommendation
58
+ # Mark the Recommendation State as Dismissed. Users can use this method to
59
+ # indicate to the Recommender API that an ACTIVE recommendation has to
60
+ # be marked back as DISMISSED.
61
+ #
62
+ # MarkRecommendationDismissed can be applied to recommendations in ACTIVE
63
+ # state.
64
+ #
65
+ # Requires the recommender.*.update IAM permission for the specified
66
+ # recommender.
67
+ rpc :MarkRecommendationDismissed, ::Google::Cloud::Recommender::V1::MarkRecommendationDismissedRequest, ::Google::Cloud::Recommender::V1::Recommendation
58
68
  # Marks the Recommendation State as Claimed. Users can use this method to
59
69
  # indicate to the Recommender API that they are starting to apply the
60
70
  # recommendation themselves. This stops the recommendation content from being
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module Recommender
23
23
  module V1
24
- VERSION = "0.13.1"
24
+ VERSION = "0.15.0"
25
25
  end
26
26
  end
27
27
  end
@@ -66,6 +66,20 @@ module Google
66
66
  # a non-empty value will be returned. The user will not be aware of what
67
67
  # non-empty value to expect.
68
68
  NON_EMPTY_DEFAULT = 7
69
+
70
+ # Denotes that the field in a resource (a message annotated with
71
+ # google.api.resource) is used in the resource name to uniquely identify the
72
+ # resource. For AIP-compliant APIs, this should only be applied to the
73
+ # `name` field on the resource.
74
+ #
75
+ # This behavior should not be applied to references to other resources within
76
+ # the message.
77
+ #
78
+ # The identifier field of resources often have different field behavior
79
+ # depending on the request it is embedded in (e.g. for Create methods name
80
+ # is optional and unused, while for Update methods it is required). Instead
81
+ # of method-specific annotations, only `IDENTIFIER` is required.
82
+ IDENTIFIER = 8
69
83
  end
70
84
  end
71
85
  end
@@ -22,7 +22,7 @@ module Google
22
22
  module Recommender
23
23
  module V1
24
24
  # An insight along with the information used to derive the insight. The insight
25
- # may have associated recomendations as well.
25
+ # may have associated recommendations as well.
26
26
  # @!attribute [rw] name
27
27
  # @return [::String]
28
28
  # Name of the insight.
@@ -94,6 +94,12 @@ module Google
94
94
 
95
95
  # This insight is related to manageability.
96
96
  MANAGEABILITY = 4
97
+
98
+ # The insight is related to sustainability.
99
+ SUSTAINABILITY = 5
100
+
101
+ # This insight is related to reliability.
102
+ RELIABILITY = 6
97
103
  end
98
104
 
99
105
  # Insight severity levels.
@@ -278,6 +278,48 @@ module Google
278
278
  extend ::Google::Protobuf::MessageExts::ClassMethods
279
279
  end
280
280
 
281
+ # Contains metadata about how much sustainability a recommendation can save or
282
+ # incur.
283
+ # @!attribute [rw] kg_c_o2e
284
+ # @return [::Float]
285
+ # Carbon Footprint generated in kg of CO2 equivalent.
286
+ # Chose kg_c_o2e so that the name renders correctly in camelCase (kgCO2e).
287
+ # @!attribute [rw] duration
288
+ # @return [::Google::Protobuf::Duration]
289
+ # Duration for which this sustainability applies.
290
+ class SustainabilityProjection
291
+ include ::Google::Protobuf::MessageExts
292
+ extend ::Google::Protobuf::MessageExts::ClassMethods
293
+ end
294
+
295
+ # Contains information on the impact of a reliability recommendation.
296
+ # @!attribute [rw] risks
297
+ # @return [::Array<::Google::Cloud::Recommender::V1::ReliabilityProjection::RiskType>]
298
+ # Reliability risks mitigated by this recommendation.
299
+ # @!attribute [rw] details
300
+ # @return [::Google::Protobuf::Struct]
301
+ # Per-recommender projection.
302
+ class ReliabilityProjection
303
+ include ::Google::Protobuf::MessageExts
304
+ extend ::Google::Protobuf::MessageExts::ClassMethods
305
+
306
+ # The risk associated with the reliability issue.
307
+ module RiskType
308
+ # Default unspecified risk. Don't use directly.
309
+ RISK_TYPE_UNSPECIFIED = 0
310
+
311
+ # Potential service downtime.
312
+ SERVICE_DISRUPTION = 1
313
+
314
+ # Potential data loss.
315
+ DATA_LOSS = 2
316
+
317
+ # Potential access denial. The service is still up but some or all clients
318
+ # can't access it.
319
+ ACCESS_DENY = 3
320
+ end
321
+ end
322
+
281
323
  # Contains the impact a recommendation can have for a given category.
282
324
  # @!attribute [rw] category
283
325
  # @return [::Google::Cloud::Recommender::V1::Impact::Category]
@@ -288,6 +330,12 @@ module Google
288
330
  # @!attribute [rw] security_projection
289
331
  # @return [::Google::Cloud::Recommender::V1::SecurityProjection]
290
332
  # Use with CategoryType.SECURITY
333
+ # @!attribute [rw] sustainability_projection
334
+ # @return [::Google::Cloud::Recommender::V1::SustainabilityProjection]
335
+ # Use with CategoryType.SUSTAINABILITY
336
+ # @!attribute [rw] reliability_projection
337
+ # @return [::Google::Cloud::Recommender::V1::ReliabilityProjection]
338
+ # Use with CategoryType.RELAIBILITY
291
339
  class Impact
292
340
  include ::Google::Protobuf::MessageExts
293
341
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -308,6 +356,12 @@ module Google
308
356
 
309
357
  # Indicates a potential increase or decrease in manageability.
310
358
  MANAGEABILITY = 4
359
+
360
+ # Indicates a potential increase or decrease in sustainability.
361
+ SUSTAINABILITY = 5
362
+
363
+ # Indicates a potential increase or decrease in reliability.
364
+ RELIABILITY = 6
311
365
  end
312
366
  end
313
367
 
@@ -208,6 +208,18 @@ module Google
208
208
  extend ::Google::Protobuf::MessageExts::ClassMethods
209
209
  end
210
210
 
211
+ # Request for the `MarkRecommendationDismissed` Method.
212
+ # @!attribute [rw] name
213
+ # @return [::String]
214
+ # Name of the recommendation.
215
+ # @!attribute [rw] etag
216
+ # @return [::String]
217
+ # Fingerprint of the Recommendation. Provides optimistic locking.
218
+ class MarkRecommendationDismissedRequest
219
+ include ::Google::Protobuf::MessageExts
220
+ extend ::Google::Protobuf::MessageExts::ClassMethods
221
+ end
222
+
211
223
  # Request for the `MarkRecommendationClaimed` Method.
212
224
  # @!attribute [rw] name
213
225
  # @return [::String]
@@ -301,6 +313,8 @@ module Google
301
313
  # * `projects/[PROJECT_ID]/locations/[LOCATION]/recommenders/[RECOMMENDER_ID]/config`
302
314
  #
303
315
  # * `organizations/[ORGANIZATION_ID]/locations/[LOCATION]/recommenders/[RECOMMENDER_ID]/config`
316
+ #
317
+ # * `billingAccounts/[BILLING_ACCOUNT_ID]/locations/[LOCATION]/recommenders/[RECOMMENDER_ID]/config`
304
318
  class GetRecommenderConfigRequest
305
319
  include ::Google::Protobuf::MessageExts
306
320
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -329,11 +343,13 @@ module Google
329
343
  #
330
344
  # Acceptable formats:
331
345
  #
332
- # * `projects/[PROJECT_NUMBER]/locations/global/recommenders/[INSIGHT_TYPE_ID]/config`
346
+ # * `projects/[PROJECT_NUMBER]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]/config`
347
+ #
348
+ # * `projects/[PROJECT_ID]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]/config`
333
349
  #
334
- # * `projects/[PROJECT_ID]/locations/global/recommenders/[INSIGHT_TYPE_ID]/config`
350
+ # * `organizations/[ORGANIZATION_ID]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]/config`
335
351
  #
336
- # * `organizations/[ORGANIZATION_ID]/locations/global/recommenders/[INSIGHT_TYPE_ID]/config`
352
+ # * `billingAccounts/[BILLING_ACCOUNT_ID]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]/config`
337
353
  class GetInsightTypeConfigRequest
338
354
  include ::Google::Protobuf::MessageExts
339
355
  extend ::Google::Protobuf::MessageExts::ClassMethods
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-cloud-recommender-v1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.13.1
4
+ version: 0.15.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-06-06 00:00:00.000000000 Z
11
+ date: 2023-09-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: gapic-common
@@ -16,7 +16,7 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 0.19.1
19
+ version: 0.20.0
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
22
  version: 2.a
@@ -26,7 +26,7 @@ dependencies:
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- version: 0.19.1
29
+ version: 0.20.0
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
32
  version: 2.a
@@ -220,7 +220,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
220
220
  - !ruby/object:Gem::Version
221
221
  version: '0'
222
222
  requirements: []
223
- rubygems_version: 3.4.2
223
+ rubygems_version: 3.4.19
224
224
  signing_key:
225
225
  specification_version: 4
226
226
  summary: API Client library for the Recommender V1 API