google-apis-apihub_v1 0.9.0 → 0.11.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.
@@ -101,6 +101,161 @@ module Google
101
101
  end
102
102
  end
103
103
 
104
+ # The additional spec content for the spec. This contains the metadata and the
105
+ # last update time for the additional spec content.
106
+ class GoogleCloudApihubV1AdditionalSpecContent
107
+ include Google::Apis::Core::Hashable
108
+
109
+ # Output only. The time at which the spec content was created.
110
+ # Corresponds to the JSON property `createTime`
111
+ # @return [String]
112
+ attr_accessor :create_time
113
+
114
+ # Optional. The labels of the spec content e.g. specboost addon version.
115
+ # Corresponds to the JSON property `labels`
116
+ # @return [Hash<String,String>]
117
+ attr_accessor :labels
118
+
119
+ # Required. The type of the spec content.
120
+ # Corresponds to the JSON property `specContentType`
121
+ # @return [String]
122
+ attr_accessor :spec_content_type
123
+
124
+ # The spec contents.
125
+ # Corresponds to the JSON property `specContents`
126
+ # @return [Google::Apis::ApihubV1::GoogleCloudApihubV1SpecContents]
127
+ attr_accessor :spec_contents
128
+
129
+ # Output only. The time at which the spec content was last updated.
130
+ # Corresponds to the JSON property `updateTime`
131
+ # @return [String]
132
+ attr_accessor :update_time
133
+
134
+ def initialize(**args)
135
+ update!(**args)
136
+ end
137
+
138
+ # Update properties of this object
139
+ def update!(**args)
140
+ @create_time = args[:create_time] if args.key?(:create_time)
141
+ @labels = args[:labels] if args.key?(:labels)
142
+ @spec_content_type = args[:spec_content_type] if args.key?(:spec_content_type)
143
+ @spec_contents = args[:spec_contents] if args.key?(:spec_contents)
144
+ @update_time = args[:update_time] if args.key?(:update_time)
145
+ end
146
+ end
147
+
148
+ # Addon resource.
149
+ class GoogleCloudApihubV1Addon
150
+ include Google::Apis::Core::Hashable
151
+
152
+ # Configuration for the addon.
153
+ # Corresponds to the JSON property `config`
154
+ # @return [Google::Apis::ApihubV1::GoogleCloudApihubV1AddonConfig]
155
+ attr_accessor :config
156
+
157
+ # Output only. The time at which the addon was created.
158
+ # Corresponds to the JSON property `createTime`
159
+ # @return [String]
160
+ attr_accessor :create_time
161
+
162
+ # Required. The data source on which the addon operates. This determines which
163
+ # field in the `config` oneof is used.
164
+ # Corresponds to the JSON property `dataSource`
165
+ # @return [String]
166
+ attr_accessor :data_source
167
+
168
+ # Optional. The description of the addon.
169
+ # Corresponds to the JSON property `description`
170
+ # @return [String]
171
+ attr_accessor :description
172
+
173
+ # Required. The display name of the addon.
174
+ # Corresponds to the JSON property `displayName`
175
+ # @return [String]
176
+ attr_accessor :display_name
177
+
178
+ # Identifier. The name of the addon to enable. Format: `projects/`project`/
179
+ # locations/`location`/addons/`addon``.
180
+ # Corresponds to the JSON property `name`
181
+ # @return [String]
182
+ attr_accessor :name
183
+
184
+ # Output only. The state of the addon.
185
+ # Corresponds to the JSON property `state`
186
+ # @return [String]
187
+ attr_accessor :state
188
+
189
+ # Output only. The time at which the addon was last updated.
190
+ # Corresponds to the JSON property `updateTime`
191
+ # @return [String]
192
+ attr_accessor :update_time
193
+
194
+ def initialize(**args)
195
+ update!(**args)
196
+ end
197
+
198
+ # Update properties of this object
199
+ def update!(**args)
200
+ @config = args[:config] if args.key?(:config)
201
+ @create_time = args[:create_time] if args.key?(:create_time)
202
+ @data_source = args[:data_source] if args.key?(:data_source)
203
+ @description = args[:description] if args.key?(:description)
204
+ @display_name = args[:display_name] if args.key?(:display_name)
205
+ @name = args[:name] if args.key?(:name)
206
+ @state = args[:state] if args.key?(:state)
207
+ @update_time = args[:update_time] if args.key?(:update_time)
208
+ end
209
+ end
210
+
211
+ # Configuration for the addon.
212
+ class GoogleCloudApihubV1AddonConfig
213
+ include Google::Apis::Core::Hashable
214
+
215
+ # Configuration for addons which act on all data in the API hub. This is used to
216
+ # specify if the addon is enabled for all data in the API hub.
217
+ # Corresponds to the JSON property `allDataAddonConfig`
218
+ # @return [Google::Apis::ApihubV1::GoogleCloudApihubV1AllDataAddonConfig]
219
+ attr_accessor :all_data_addon_config
220
+
221
+ # Configuration for gateway plugin addons. This is used to specify the list of
222
+ # gateway plugin configs for which the addon is enabled.
223
+ # Corresponds to the JSON property `gatewayPluginAddonConfig`
224
+ # @return [Google::Apis::ApihubV1::GoogleCloudApihubV1GatewayPluginAddonConfig]
225
+ attr_accessor :gateway_plugin_addon_config
226
+
227
+ def initialize(**args)
228
+ update!(**args)
229
+ end
230
+
231
+ # Update properties of this object
232
+ def update!(**args)
233
+ @all_data_addon_config = args[:all_data_addon_config] if args.key?(:all_data_addon_config)
234
+ @gateway_plugin_addon_config = args[:gateway_plugin_addon_config] if args.key?(:gateway_plugin_addon_config)
235
+ end
236
+ end
237
+
238
+ # Configuration for addons which act on all data in the API hub. This is used to
239
+ # specify if the addon is enabled for all data in the API hub.
240
+ class GoogleCloudApihubV1AllDataAddonConfig
241
+ include Google::Apis::Core::Hashable
242
+
243
+ # Required. If true, the addon is enabled for all data in the API hub.
244
+ # Corresponds to the JSON property `enabled`
245
+ # @return [Boolean]
246
+ attr_accessor :enabled
247
+ alias_method :enabled?, :enabled
248
+
249
+ def initialize(**args)
250
+ update!(**args)
251
+ end
252
+
253
+ # Update properties of this object
254
+ def update!(**args)
255
+ @enabled = args[:enabled] if args.key?(:enabled)
256
+ end
257
+ end
258
+
104
259
  # The value that can be assigned to the attribute when the data type is enum.
105
260
  class GoogleCloudApihubV1AllowedValue
106
261
  include Google::Apis::Core::Hashable
@@ -565,6 +720,99 @@ module Google
565
720
  end
566
721
  end
567
722
 
723
+ # The view of an API.
724
+ class GoogleCloudApihubV1ApiView
725
+ include Google::Apis::Core::Hashable
726
+
727
+ # A flattened view of an API, its version and one of the linked deployments.
728
+ # Corresponds to the JSON property `mcpServerView`
729
+ # @return [Google::Apis::ApihubV1::GoogleCloudApihubV1FlattenedApiVersionDeploymentView]
730
+ attr_accessor :mcp_server_view
731
+
732
+ # A flattened view of an API, its version, one of its operations and one of the
733
+ # linked deployments. If there are no deployments linked to the operation then
734
+ # the result will be empty.
735
+ # Corresponds to the JSON property `mcpToolView`
736
+ # @return [Google::Apis::ApihubV1::GoogleCloudApihubV1FlattenedApiVersionOperationDeploymentView]
737
+ attr_accessor :mcp_tool_view
738
+
739
+ def initialize(**args)
740
+ update!(**args)
741
+ end
742
+
743
+ # Update properties of this object
744
+ def update!(**args)
745
+ @mcp_server_view = args[:mcp_server_view] if args.key?(:mcp_server_view)
746
+ @mcp_tool_view = args[:mcp_tool_view] if args.key?(:mcp_tool_view)
747
+ end
748
+ end
749
+
750
+ # Configuration for Apigee Edge gateways. Applicability of a filter is
751
+ # determined by the filter being provided. If none of the filters are provided
752
+ # the addon will be enabled for all data brought in by the gateway plugin
753
+ # instance.
754
+ class GoogleCloudApihubV1ApigeeEdgeConfig
755
+ include Google::Apis::Core::Hashable
756
+
757
+ # Filter for environments.
758
+ # Corresponds to the JSON property `environmentFilter`
759
+ # @return [Google::Apis::ApihubV1::GoogleCloudApihubV1EnvironmentFilter]
760
+ attr_accessor :environment_filter
761
+
762
+ def initialize(**args)
763
+ update!(**args)
764
+ end
765
+
766
+ # Update properties of this object
767
+ def update!(**args)
768
+ @environment_filter = args[:environment_filter] if args.key?(:environment_filter)
769
+ end
770
+ end
771
+
772
+ # Configuration for Apigee OPDK gateways. Applicability of a filter is
773
+ # determined by the filter being provided. If none of the filters are provided
774
+ # the addon will be enabled for all data brought in by the gateway plugin
775
+ # instance.
776
+ class GoogleCloudApihubV1ApigeeOpdkConfig
777
+ include Google::Apis::Core::Hashable
778
+
779
+ # Filter for environments.
780
+ # Corresponds to the JSON property `environmentFilter`
781
+ # @return [Google::Apis::ApihubV1::GoogleCloudApihubV1EnvironmentFilter]
782
+ attr_accessor :environment_filter
783
+
784
+ def initialize(**args)
785
+ update!(**args)
786
+ end
787
+
788
+ # Update properties of this object
789
+ def update!(**args)
790
+ @environment_filter = args[:environment_filter] if args.key?(:environment_filter)
791
+ end
792
+ end
793
+
794
+ # Configuration for Apigee X and Apigee Hybrid gateways. Applicability of a
795
+ # filter is determined by the filter being provided. If none of the filters are
796
+ # provided the addon will be enabled for all data brought in by the gateway
797
+ # plugin instance.
798
+ class GoogleCloudApihubV1ApigeeXHybridConfig
799
+ include Google::Apis::Core::Hashable
800
+
801
+ # Filter for environments.
802
+ # Corresponds to the JSON property `environmentFilter`
803
+ # @return [Google::Apis::ApihubV1::GoogleCloudApihubV1EnvironmentFilter]
804
+ attr_accessor :environment_filter
805
+
806
+ def initialize(**args)
807
+ update!(**args)
808
+ end
809
+
810
+ # Update properties of this object
811
+ def update!(**args)
812
+ @environment_filter = args[:environment_filter] if args.key?(:environment_filter)
813
+ end
814
+ end
815
+
568
816
  # The details of the Application Integration endpoint to be triggered for
569
817
  # curation.
570
818
  class GoogleCloudApihubV1ApplicationIntegrationEndpointDetails
@@ -1891,6 +2139,34 @@ module Google
1891
2139
  end
1892
2140
  end
1893
2141
 
2142
+ # Filter for environments.
2143
+ class GoogleCloudApihubV1EnvironmentFilter
2144
+ include Google::Apis::Core::Hashable
2145
+
2146
+ # Optional. Indicates if this filter should match all environments or only a
2147
+ # subset of environments. If set to true, all environments are matched.
2148
+ # Corresponds to the JSON property `allEnvironments`
2149
+ # @return [Boolean]
2150
+ attr_accessor :all_environments
2151
+ alias_method :all_environments?, :all_environments
2152
+
2153
+ # Optional. If provided, only environments in this list are matched. This field
2154
+ # is ignored if `all_environments` is true.
2155
+ # Corresponds to the JSON property `environments`
2156
+ # @return [Array<String>]
2157
+ attr_accessor :environments
2158
+
2159
+ def initialize(**args)
2160
+ update!(**args)
2161
+ end
2162
+
2163
+ # Update properties of this object
2164
+ def update!(**args)
2165
+ @all_environments = args[:all_environments] if args.key?(:all_environments)
2166
+ @environments = args[:environments] if args.key?(:environments)
2167
+ end
2168
+ end
2169
+
1894
2170
  # The ExecutePluginInstanceAction method's request.
1895
2171
  class GoogleCloudApihubV1ExecutePluginInstanceActionRequest
1896
2172
  include Google::Apis::Core::Hashable
@@ -2009,6 +2285,181 @@ module Google
2009
2285
  end
2010
2286
  end
2011
2287
 
2288
+ # The FetchAdditionalSpecContent method's response.
2289
+ class GoogleCloudApihubV1FetchAdditionalSpecContentResponse
2290
+ include Google::Apis::Core::Hashable
2291
+
2292
+ # The additional spec content for the spec. This contains the metadata and the
2293
+ # last update time for the additional spec content.
2294
+ # Corresponds to the JSON property `additionalSpecContent`
2295
+ # @return [Google::Apis::ApihubV1::GoogleCloudApihubV1AdditionalSpecContent]
2296
+ attr_accessor :additional_spec_content
2297
+
2298
+ def initialize(**args)
2299
+ update!(**args)
2300
+ end
2301
+
2302
+ # Update properties of this object
2303
+ def update!(**args)
2304
+ @additional_spec_content = args[:additional_spec_content] if args.key?(:additional_spec_content)
2305
+ end
2306
+ end
2307
+
2308
+ # A flattened view of an API, its version and one of the linked deployments.
2309
+ class GoogleCloudApihubV1FlattenedApiVersionDeploymentView
2310
+ include Google::Apis::Core::Hashable
2311
+
2312
+ # An API resource in the API Hub.
2313
+ # Corresponds to the JSON property `api`
2314
+ # @return [Google::Apis::ApihubV1::GoogleCloudApihubV1Api]
2315
+ attr_accessor :api
2316
+
2317
+ # Details of the deployment where APIs are hosted. A deployment could represent
2318
+ # an Apigee proxy, API gateway, other Google Cloud services or non-Google Cloud
2319
+ # services as well. A deployment entity is a root level entity in the API hub
2320
+ # and exists independent of any API.
2321
+ # Corresponds to the JSON property `deployment`
2322
+ # @return [Google::Apis::ApihubV1::GoogleCloudApihubV1Deployment]
2323
+ attr_accessor :deployment
2324
+
2325
+ # Represents a version of the API resource in API hub. This is also referred to
2326
+ # as the API version.
2327
+ # Corresponds to the JSON property `version`
2328
+ # @return [Google::Apis::ApihubV1::GoogleCloudApihubV1Version]
2329
+ attr_accessor :version
2330
+
2331
+ def initialize(**args)
2332
+ update!(**args)
2333
+ end
2334
+
2335
+ # Update properties of this object
2336
+ def update!(**args)
2337
+ @api = args[:api] if args.key?(:api)
2338
+ @deployment = args[:deployment] if args.key?(:deployment)
2339
+ @version = args[:version] if args.key?(:version)
2340
+ end
2341
+ end
2342
+
2343
+ # A flattened view of an API, its version, one of its operations and one of the
2344
+ # linked deployments. If there are no deployments linked to the operation then
2345
+ # the result will be empty.
2346
+ class GoogleCloudApihubV1FlattenedApiVersionOperationDeploymentView
2347
+ include Google::Apis::Core::Hashable
2348
+
2349
+ # An API resource in the API Hub.
2350
+ # Corresponds to the JSON property `api`
2351
+ # @return [Google::Apis::ApihubV1::GoogleCloudApihubV1Api]
2352
+ attr_accessor :api
2353
+
2354
+ # Represents an operation contained in an API version in the API Hub. An
2355
+ # operation is added/updated/deleted in an API version when a new spec is added
2356
+ # or an existing spec is updated/deleted in a version. Currently, an operation
2357
+ # will be created only corresponding to OpenAPI spec as parsing is supported for
2358
+ # OpenAPI spec. Alternatively operations can be managed via create,update and
2359
+ # delete APIs, creation of apiOperation can be possible only for version with no
2360
+ # parsed operations and update/delete can be possible only for operations
2361
+ # created via create API.
2362
+ # Corresponds to the JSON property `apiOperation`
2363
+ # @return [Google::Apis::ApihubV1::GoogleCloudApihubV1ApiOperation]
2364
+ attr_accessor :api_operation
2365
+
2366
+ # Details of the deployment where APIs are hosted. A deployment could represent
2367
+ # an Apigee proxy, API gateway, other Google Cloud services or non-Google Cloud
2368
+ # services as well. A deployment entity is a root level entity in the API hub
2369
+ # and exists independent of any API.
2370
+ # Corresponds to the JSON property `deployment`
2371
+ # @return [Google::Apis::ApihubV1::GoogleCloudApihubV1Deployment]
2372
+ attr_accessor :deployment
2373
+
2374
+ # Represents a version of the API resource in API hub. This is also referred to
2375
+ # as the API version.
2376
+ # Corresponds to the JSON property `version`
2377
+ # @return [Google::Apis::ApihubV1::GoogleCloudApihubV1Version]
2378
+ attr_accessor :version
2379
+
2380
+ def initialize(**args)
2381
+ update!(**args)
2382
+ end
2383
+
2384
+ # Update properties of this object
2385
+ def update!(**args)
2386
+ @api = args[:api] if args.key?(:api)
2387
+ @api_operation = args[:api_operation] if args.key?(:api_operation)
2388
+ @deployment = args[:deployment] if args.key?(:deployment)
2389
+ @version = args[:version] if args.key?(:version)
2390
+ end
2391
+ end
2392
+
2393
+ # Configuration for gateway plugin addons. This is used to specify the list of
2394
+ # gateway plugin configs for which the addon is enabled.
2395
+ class GoogleCloudApihubV1GatewayPluginAddonConfig
2396
+ include Google::Apis::Core::Hashable
2397
+
2398
+ # Required. The list of gateway plugin configs for which the addon is enabled.
2399
+ # Each gateway plugin config should have a unique plugin instance.
2400
+ # Corresponds to the JSON property `gatewayPluginConfigs`
2401
+ # @return [Array<Google::Apis::ApihubV1::GoogleCloudApihubV1GatewayPluginConfig>]
2402
+ attr_accessor :gateway_plugin_configs
2403
+
2404
+ def initialize(**args)
2405
+ update!(**args)
2406
+ end
2407
+
2408
+ # Update properties of this object
2409
+ def update!(**args)
2410
+ @gateway_plugin_configs = args[:gateway_plugin_configs] if args.key?(:gateway_plugin_configs)
2411
+ end
2412
+ end
2413
+
2414
+ # Configuration for a gateway plugin. This is used to specify configs for
2415
+ # different gateways.
2416
+ class GoogleCloudApihubV1GatewayPluginConfig
2417
+ include Google::Apis::Core::Hashable
2418
+
2419
+ # Configuration for Apigee Edge gateways. Applicability of a filter is
2420
+ # determined by the filter being provided. If none of the filters are provided
2421
+ # the addon will be enabled for all data brought in by the gateway plugin
2422
+ # instance.
2423
+ # Corresponds to the JSON property `apigeeEdgeConfig`
2424
+ # @return [Google::Apis::ApihubV1::GoogleCloudApihubV1ApigeeEdgeConfig]
2425
+ attr_accessor :apigee_edge_config
2426
+
2427
+ # Configuration for Apigee OPDK gateways. Applicability of a filter is
2428
+ # determined by the filter being provided. If none of the filters are provided
2429
+ # the addon will be enabled for all data brought in by the gateway plugin
2430
+ # instance.
2431
+ # Corresponds to the JSON property `apigeeOpdkConfig`
2432
+ # @return [Google::Apis::ApihubV1::GoogleCloudApihubV1ApigeeOpdkConfig]
2433
+ attr_accessor :apigee_opdk_config
2434
+
2435
+ # Configuration for Apigee X and Apigee Hybrid gateways. Applicability of a
2436
+ # filter is determined by the filter being provided. If none of the filters are
2437
+ # provided the addon will be enabled for all data brought in by the gateway
2438
+ # plugin instance.
2439
+ # Corresponds to the JSON property `apigeeXHybridConfig`
2440
+ # @return [Google::Apis::ApihubV1::GoogleCloudApihubV1ApigeeXHybridConfig]
2441
+ attr_accessor :apigee_x_hybrid_config
2442
+
2443
+ # Required. The name of the gateway plugin instance for which the config is to
2444
+ # be specified. Format: projects/`project`/locations/`location`/plugins/`plugin`/
2445
+ # pluginInstances/`plugin_instance`
2446
+ # Corresponds to the JSON property `pluginInstance`
2447
+ # @return [String]
2448
+ attr_accessor :plugin_instance
2449
+
2450
+ def initialize(**args)
2451
+ update!(**args)
2452
+ end
2453
+
2454
+ # Update properties of this object
2455
+ def update!(**args)
2456
+ @apigee_edge_config = args[:apigee_edge_config] if args.key?(:apigee_edge_config)
2457
+ @apigee_opdk_config = args[:apigee_opdk_config] if args.key?(:apigee_opdk_config)
2458
+ @apigee_x_hybrid_config = args[:apigee_x_hybrid_config] if args.key?(:apigee_x_hybrid_config)
2459
+ @plugin_instance = args[:plugin_instance] if args.key?(:plugin_instance)
2460
+ end
2461
+ end
2462
+
2012
2463
  # Config for Google service account authentication.
2013
2464
  class GoogleCloudApihubV1GoogleServiceAccountConfig
2014
2465
  include Google::Apis::Core::Hashable
@@ -2300,6 +2751,13 @@ module Google
2300
2751
  # @return [String]
2301
2752
  attr_accessor :result
2302
2753
 
2754
+ # Output only. The result metadata of the last execution of the plugin instance.
2755
+ # This will be a string representation of a JSON object and will be available on
2756
+ # successful execution.
2757
+ # Corresponds to the JSON property `resultMetadata`
2758
+ # @return [String]
2759
+ attr_accessor :result_metadata
2760
+
2303
2761
  # Output only. The last execution start time of the plugin instance.
2304
2762
  # Corresponds to the JSON property `startTime`
2305
2763
  # @return [String]
@@ -2314,6 +2772,7 @@ module Google
2314
2772
  @end_time = args[:end_time] if args.key?(:end_time)
2315
2773
  @error_message = args[:error_message] if args.key?(:error_message)
2316
2774
  @result = args[:result] if args.key?(:result)
2775
+ @result_metadata = args[:result_metadata] if args.key?(:result_metadata)
2317
2776
  @start_time = args[:start_time] if args.key?(:start_time)
2318
2777
  end
2319
2778
  end
@@ -2380,6 +2839,32 @@ module Google
2380
2839
  end
2381
2840
  end
2382
2841
 
2842
+ # The ListAddons method's response.
2843
+ class GoogleCloudApihubV1ListAddonsResponse
2844
+ include Google::Apis::Core::Hashable
2845
+
2846
+ # The list of addons.
2847
+ # Corresponds to the JSON property `addons`
2848
+ # @return [Array<Google::Apis::ApihubV1::GoogleCloudApihubV1Addon>]
2849
+ attr_accessor :addons
2850
+
2851
+ # A token to retrieve the next page of results, or empty if there are no more
2852
+ # results in the list.
2853
+ # Corresponds to the JSON property `nextPageToken`
2854
+ # @return [String]
2855
+ attr_accessor :next_page_token
2856
+
2857
+ def initialize(**args)
2858
+ update!(**args)
2859
+ end
2860
+
2861
+ # Update properties of this object
2862
+ def update!(**args)
2863
+ @addons = args[:addons] if args.key?(:addons)
2864
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
2865
+ end
2866
+ end
2867
+
2383
2868
  # The ListApiOperations method's response.
2384
2869
  class GoogleCloudApihubV1ListApiOperationsResponse
2385
2870
  include Google::Apis::Core::Hashable
@@ -2813,6 +3298,25 @@ module Google
2813
3298
  end
2814
3299
  end
2815
3300
 
3301
+ # The ManageAddonConfig method's request.
3302
+ class GoogleCloudApihubV1ManageAddonConfigRequest
3303
+ include Google::Apis::Core::Hashable
3304
+
3305
+ # Configuration for the addon.
3306
+ # Corresponds to the JSON property `config`
3307
+ # @return [Google::Apis::ApihubV1::GoogleCloudApihubV1AddonConfig]
3308
+ attr_accessor :config
3309
+
3310
+ def initialize(**args)
3311
+ update!(**args)
3312
+ end
3313
+
3314
+ # Update properties of this object
3315
+ def update!(**args)
3316
+ @config = args[:config] if args.key?(:config)
3317
+ end
3318
+ end
3319
+
2816
3320
  # The ManagePluginInstanceSourceData method's request.
2817
3321
  class GoogleCloudApihubV1ManagePluginInstanceSourceDataRequest
2818
3322
  include Google::Apis::Core::Hashable
@@ -2885,6 +3389,55 @@ module Google
2885
3389
  end
2886
3390
  end
2887
3391
 
3392
+ # Details describing an MCP Tool.
3393
+ class GoogleCloudApihubV1McpTool
3394
+ include Google::Apis::Core::Hashable
3395
+
3396
+ # Annotations for a Tool.
3397
+ # Corresponds to the JSON property `annotations`
3398
+ # @return [Google::Apis::ApihubV1::GoogleCloudApihubV1ToolAnnotations]
3399
+ attr_accessor :annotations
3400
+
3401
+ # Optional. Description of what the tool does.
3402
+ # Corresponds to the JSON property `description`
3403
+ # @return [String]
3404
+ attr_accessor :description
3405
+
3406
+ # The operation schema needed for an operation.
3407
+ # Corresponds to the JSON property `inputSchema`
3408
+ # @return [Google::Apis::ApihubV1::GoogleCloudApihubV1OperationSchema]
3409
+ attr_accessor :input_schema
3410
+
3411
+ # Required. The name of the tool, unique within its parent scope (version).
3412
+ # Corresponds to the JSON property `name`
3413
+ # @return [String]
3414
+ attr_accessor :name
3415
+
3416
+ # The operation schema needed for an operation.
3417
+ # Corresponds to the JSON property `outputSchema`
3418
+ # @return [Google::Apis::ApihubV1::GoogleCloudApihubV1OperationSchema]
3419
+ attr_accessor :output_schema
3420
+
3421
+ # Optional. Optional title for the tool.
3422
+ # Corresponds to the JSON property `title`
3423
+ # @return [String]
3424
+ attr_accessor :title
3425
+
3426
+ def initialize(**args)
3427
+ update!(**args)
3428
+ end
3429
+
3430
+ # Update properties of this object
3431
+ def update!(**args)
3432
+ @annotations = args[:annotations] if args.key?(:annotations)
3433
+ @description = args[:description] if args.key?(:description)
3434
+ @input_schema = args[:input_schema] if args.key?(:input_schema)
3435
+ @name = args[:name] if args.key?(:name)
3436
+ @output_schema = args[:output_schema] if args.key?(:output_schema)
3437
+ @title = args[:title] if args.key?(:title)
3438
+ end
3439
+ end
3440
+
2888
3441
  # The config variable value of data type multi int.
2889
3442
  class GoogleCloudApihubV1MultiIntValues
2890
3443
  include Google::Apis::Core::Hashable
@@ -3029,6 +3582,11 @@ module Google
3029
3582
  # @return [Google::Apis::ApihubV1::GoogleCloudApihubV1HttpOperation]
3030
3583
  attr_accessor :http_operation
3031
3584
 
3585
+ # Details describing an MCP Tool.
3586
+ # Corresponds to the JSON property `mcpTool`
3587
+ # @return [Google::Apis::ApihubV1::GoogleCloudApihubV1McpTool]
3588
+ attr_accessor :mcp_tool
3589
+
3032
3590
  def initialize(**args)
3033
3591
  update!(**args)
3034
3592
  end
@@ -3039,6 +3597,7 @@ module Google
3039
3597
  @description = args[:description] if args.key?(:description)
3040
3598
  @documentation = args[:documentation] if args.key?(:documentation)
3041
3599
  @http_operation = args[:http_operation] if args.key?(:http_operation)
3600
+ @mcp_tool = args[:mcp_tool] if args.key?(:mcp_tool)
3042
3601
  end
3043
3602
  end
3044
3603
 
@@ -3101,6 +3660,26 @@ module Google
3101
3660
  end
3102
3661
  end
3103
3662
 
3663
+ # The operation schema needed for an operation.
3664
+ class GoogleCloudApihubV1OperationSchema
3665
+ include Google::Apis::Core::Hashable
3666
+
3667
+ # The JSON schema. Only valid JSON is accepted but semantic validation of schema
3668
+ # is not supported right now.
3669
+ # Corresponds to the JSON property `jsonSchema`
3670
+ # @return [Hash<String,Object>]
3671
+ attr_accessor :json_schema
3672
+
3673
+ def initialize(**args)
3674
+ update!(**args)
3675
+ end
3676
+
3677
+ # Update properties of this object
3678
+ def update!(**args)
3679
+ @json_schema = args[:json_schema] if args.key?(:json_schema)
3680
+ end
3681
+ end
3682
+
3104
3683
  # Owner details.
3105
3684
  class GoogleCloudApihubV1Owner
3106
3685
  include Google::Apis::Core::Hashable
@@ -3373,6 +3952,13 @@ module Google
3373
3952
  # @return [String]
3374
3953
  attr_accessor :name
3375
3954
 
3955
+ # Optional. The source environment's config present in the gateway instance
3956
+ # linked to the plugin instance. The key is the `source_environment` name from
3957
+ # the SourceEnvironment message.
3958
+ # Corresponds to the JSON property `sourceEnvironmentsConfig`
3959
+ # @return [Hash<String,Google::Apis::ApihubV1::GoogleCloudApihubV1SourceEnvironment>]
3960
+ attr_accessor :source_environments_config
3961
+
3376
3962
  # Optional. The source project id of the plugin instance. This will be the id of
3377
3963
  # runtime project in case of gcp based plugins and org id in case of non gcp
3378
3964
  # based plugins. This field will be a required field for Google provided on-ramp
@@ -3405,6 +3991,7 @@ module Google
3405
3991
  @display_name = args[:display_name] if args.key?(:display_name)
3406
3992
  @error_message = args[:error_message] if args.key?(:error_message)
3407
3993
  @name = args[:name] if args.key?(:name)
3994
+ @source_environments_config = args[:source_environments_config] if args.key?(:source_environments_config)
3408
3995
  @source_project_id = args[:source_project_id] if args.key?(:source_project_id)
3409
3996
  @state = args[:state] if args.key?(:state)
3410
3997
  @update_time = args[:update_time] if args.key?(:update_time)
@@ -3638,6 +4225,31 @@ module Google
3638
4225
  end
3639
4226
  end
3640
4227
 
4228
+ # The RetrieveApiViews method's response.
4229
+ class GoogleCloudApihubV1RetrieveApiViewsResponse
4230
+ include Google::Apis::Core::Hashable
4231
+
4232
+ # The list of API views.
4233
+ # Corresponds to the JSON property `apiViews`
4234
+ # @return [Array<Google::Apis::ApihubV1::GoogleCloudApihubV1ApiView>]
4235
+ attr_accessor :api_views
4236
+
4237
+ # Next page token.
4238
+ # Corresponds to the JSON property `nextPageToken`
4239
+ # @return [String]
4240
+ attr_accessor :next_page_token
4241
+
4242
+ def initialize(**args)
4243
+ update!(**args)
4244
+ end
4245
+
4246
+ # Update properties of this object
4247
+ def update!(**args)
4248
+ @api_views = args[:api_views] if args.key?(:api_views)
4249
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
4250
+ end
4251
+ end
4252
+
3641
4253
  # Runtime project attachment represents an attachment from the runtime project
3642
4254
  # to the host project. Api Hub looks for deployments in the attached runtime
3643
4255
  # projects and creates corresponding resources in Api Hub for the discovered
@@ -3832,6 +4444,46 @@ module Google
3832
4444
  end
3833
4445
  end
3834
4446
 
4447
+ # Message representing the source environment details.
4448
+ class GoogleCloudApihubV1SourceEnvironment
4449
+ include Google::Apis::Core::Hashable
4450
+
4451
+ # Optional. The time at which the environment was created at the source.
4452
+ # Corresponds to the JSON property `createTime`
4453
+ # @return [String]
4454
+ attr_accessor :create_time
4455
+
4456
+ # Required. The name of the environment at the source. This should map to
4457
+ # Deployment.
4458
+ # Corresponds to the JSON property `sourceEnvironment`
4459
+ # @return [String]
4460
+ attr_accessor :source_environment
4461
+
4462
+ # The location where additional information about source environments can be
4463
+ # found. The location should be relative path of the environment manifest with
4464
+ # respect to a plugin instance.
4465
+ # Corresponds to the JSON property `sourceEnvironmentUri`
4466
+ # @return [String]
4467
+ attr_accessor :source_environment_uri
4468
+
4469
+ # Optional. The time at which the environment was last updated at the source.
4470
+ # Corresponds to the JSON property `updateTime`
4471
+ # @return [String]
4472
+ attr_accessor :update_time
4473
+
4474
+ def initialize(**args)
4475
+ update!(**args)
4476
+ end
4477
+
4478
+ # Update properties of this object
4479
+ def update!(**args)
4480
+ @create_time = args[:create_time] if args.key?(:create_time)
4481
+ @source_environment = args[:source_environment] if args.key?(:source_environment)
4482
+ @source_environment_uri = args[:source_environment_uri] if args.key?(:source_environment_uri)
4483
+ @update_time = args[:update_time] if args.key?(:update_time)
4484
+ end
4485
+ end
4486
+
3835
4487
  # SourceMetadata represents the metadata for a resource at the source.
3836
4488
  class GoogleCloudApihubV1SourceMetadata
3837
4489
  include Google::Apis::Core::Hashable
@@ -3881,6 +4533,11 @@ module Google
3881
4533
  class GoogleCloudApihubV1Spec
3882
4534
  include Google::Apis::Core::Hashable
3883
4535
 
4536
+ # Output only. The additional spec contents for the spec.
4537
+ # Corresponds to the JSON property `additionalSpecContents`
4538
+ # @return [Array<Google::Apis::ApihubV1::GoogleCloudApihubV1AdditionalSpecContent>]
4539
+ attr_accessor :additional_spec_contents
4540
+
3884
4541
  # Optional. The list of user defined attributes associated with the spec. The
3885
4542
  # key is the attribute name. It will be of the format: `projects/`project`/
3886
4543
  # locations/`location`/attributes/`attribute``. The value is the attribute
@@ -3959,6 +4616,7 @@ module Google
3959
4616
 
3960
4617
  # Update properties of this object
3961
4618
  def update!(**args)
4619
+ @additional_spec_contents = args[:additional_spec_contents] if args.key?(:additional_spec_contents)
3962
4620
  @attributes = args[:attributes] if args.key?(:attributes)
3963
4621
  @contents = args[:contents] if args.key?(:contents)
3964
4622
  @create_time = args[:create_time] if args.key?(:create_time)
@@ -4171,6 +4829,60 @@ module Google
4171
4829
  end
4172
4830
  end
4173
4831
 
4832
+ # Annotations for a Tool.
4833
+ class GoogleCloudApihubV1ToolAnnotations
4834
+ include Google::Apis::Core::Hashable
4835
+
4836
+ # Optional. Additional hints which may help tools and not covered in defaults.
4837
+ # Corresponds to the JSON property `additionalHints`
4838
+ # @return [Hash<String,String>]
4839
+ attr_accessor :additional_hints
4840
+
4841
+ # Optional. Hint indicating if the tool may have destructive side effects.
4842
+ # Corresponds to the JSON property `destructiveHint`
4843
+ # @return [Boolean]
4844
+ attr_accessor :destructive_hint
4845
+ alias_method :destructive_hint?, :destructive_hint
4846
+
4847
+ # Optional. Hint indicating if the tool is idempotent.
4848
+ # Corresponds to the JSON property `idempotentHint`
4849
+ # @return [Boolean]
4850
+ attr_accessor :idempotent_hint
4851
+ alias_method :idempotent_hint?, :idempotent_hint
4852
+
4853
+ # Optional. Hint indicating if the tool interacts with the open world (e.g.,
4854
+ # internet).
4855
+ # Corresponds to the JSON property `openWorldHint`
4856
+ # @return [Boolean]
4857
+ attr_accessor :open_world_hint
4858
+ alias_method :open_world_hint?, :open_world_hint
4859
+
4860
+ # Optional. Hint indicating if the tool is read-only.
4861
+ # Corresponds to the JSON property `readOnlyHint`
4862
+ # @return [Boolean]
4863
+ attr_accessor :read_only_hint
4864
+ alias_method :read_only_hint?, :read_only_hint
4865
+
4866
+ # Optional. A human-readable title for the tool (if different from Tool.title).
4867
+ # Corresponds to the JSON property `title`
4868
+ # @return [String]
4869
+ attr_accessor :title
4870
+
4871
+ def initialize(**args)
4872
+ update!(**args)
4873
+ end
4874
+
4875
+ # Update properties of this object
4876
+ def update!(**args)
4877
+ @additional_hints = args[:additional_hints] if args.key?(:additional_hints)
4878
+ @destructive_hint = args[:destructive_hint] if args.key?(:destructive_hint)
4879
+ @idempotent_hint = args[:idempotent_hint] if args.key?(:idempotent_hint)
4880
+ @open_world_hint = args[:open_world_hint] if args.key?(:open_world_hint)
4881
+ @read_only_hint = args[:read_only_hint] if args.key?(:read_only_hint)
4882
+ @title = args[:title] if args.key?(:title)
4883
+ end
4884
+ end
4885
+
4174
4886
  # Parameters to support Username and Password Authentication.
4175
4887
  class GoogleCloudApihubV1UserPasswordConfig
4176
4888
  include Google::Apis::Core::Hashable
@@ -4537,8 +5249,9 @@ module Google
4537
5249
  attr_accessor :operations
4538
5250
 
4539
5251
  # Unordered list. Unreachable resources. Populated when the request sets `
4540
- # ListOperationsRequest.return_partial_success` and reads across collections e.g.
4541
- # when attempting to list all resources across all supported locations.
5252
+ # ListOperationsRequest.return_partial_success` and reads across collections.
5253
+ # For example, when attempting to list all resources across all supported
5254
+ # locations.
4542
5255
  # Corresponds to the JSON property `unreachable`
4543
5256
  # @return [Array<String>]
4544
5257
  attr_accessor :unreachable