google-cloud-api_hub-v1 0.4.1 → 0.6.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.
Files changed (56) hide show
  1. checksums.yaml +4 -4
  2. data/lib/google/cloud/api_hub/v1/api_hub/paths.rb +21 -0
  3. data/lib/google/cloud/api_hub/v1/api_hub/rest/client.rb +497 -9
  4. data/lib/google/cloud/api_hub/v1/api_hub/rest/service_stub.rb +185 -0
  5. data/lib/google/cloud/api_hub/v1/api_hub_collect/credentials.rb +47 -0
  6. data/lib/google/cloud/api_hub/v1/api_hub_collect/paths.rb +218 -0
  7. data/lib/google/cloud/api_hub/v1/api_hub_collect/rest/client.rb +487 -0
  8. data/lib/google/cloud/api_hub/v1/api_hub_collect/rest/operations.rb +914 -0
  9. data/lib/google/cloud/api_hub/v1/api_hub_collect/rest/service_stub.rb +143 -0
  10. data/lib/google/cloud/api_hub/v1/api_hub_collect/rest.rb +56 -0
  11. data/lib/google/cloud/api_hub/v1/api_hub_collect.rb +50 -0
  12. data/lib/google/cloud/api_hub/v1/api_hub_curate/credentials.rb +47 -0
  13. data/lib/google/cloud/api_hub/v1/api_hub_curate/paths.rb +90 -0
  14. data/lib/google/cloud/api_hub/v1/api_hub_curate/rest/client.rb +869 -0
  15. data/lib/google/cloud/api_hub/v1/api_hub_curate/rest/service_stub.rb +388 -0
  16. data/lib/google/cloud/api_hub/v1/api_hub_curate/rest.rb +54 -0
  17. data/lib/google/cloud/api_hub/v1/api_hub_curate.rb +49 -0
  18. data/lib/google/cloud/api_hub/v1/api_hub_discovery/credentials.rb +47 -0
  19. data/lib/google/cloud/api_hub/v1/api_hub_discovery/paths.rb +90 -0
  20. data/lib/google/cloud/api_hub/v1/api_hub_discovery/rest/client.rb +750 -0
  21. data/lib/google/cloud/api_hub/v1/api_hub_discovery/rest/service_stub.rb +325 -0
  22. data/lib/google/cloud/api_hub/v1/api_hub_discovery/rest.rb +54 -0
  23. data/lib/google/cloud/api_hub/v1/api_hub_discovery.rb +49 -0
  24. data/lib/google/cloud/api_hub/v1/api_hub_plugin/paths.rb +74 -0
  25. data/lib/google/cloud/api_hub/v1/api_hub_plugin/rest/client.rb +1265 -98
  26. data/lib/google/cloud/api_hub/v1/api_hub_plugin/rest/operations.rb +914 -0
  27. data/lib/google/cloud/api_hub/v1/api_hub_plugin/rest/service_stub.rb +677 -0
  28. data/lib/google/cloud/api_hub/v1/api_hub_plugin/rest.rb +1 -0
  29. data/lib/google/cloud/api_hub/v1/bindings_override.rb +2 -29
  30. data/lib/google/cloud/api_hub/v1/provisioning/rest/client.rb +96 -0
  31. data/lib/google/cloud/api_hub/v1/provisioning/rest/service_stub.rb +61 -0
  32. data/lib/google/cloud/api_hub/v1/rest.rb +3 -0
  33. data/lib/google/cloud/api_hub/v1/version.rb +1 -1
  34. data/lib/google/cloud/api_hub/v1.rb +3 -0
  35. data/lib/google/cloud/apihub/v1/apihub_service_pb.rb +4 -1
  36. data/lib/google/cloud/apihub/v1/apihub_service_services_pb.rb +35 -2
  37. data/lib/google/cloud/apihub/v1/collect_service_pb.rb +60 -0
  38. data/lib/google/cloud/apihub/v1/collect_service_services_pb.rb +47 -0
  39. data/lib/google/cloud/apihub/v1/common_fields_pb.rb +34 -1
  40. data/lib/google/cloud/apihub/v1/curate_service_pb.rb +63 -0
  41. data/lib/google/cloud/apihub/v1/curate_service_services_pb.rb +64 -0
  42. data/lib/google/cloud/apihub/v1/discovery_service_pb.rb +54 -0
  43. data/lib/google/cloud/apihub/v1/discovery_service_services_pb.rb +55 -0
  44. data/lib/google/cloud/apihub/v1/plugin_service_pb.rb +44 -1
  45. data/lib/google/cloud/apihub/v1/plugin_service_services_pb.rb +43 -1
  46. data/lib/google/cloud/apihub/v1/provisioning_service_pb.rb +3 -1
  47. data/lib/google/cloud/apihub/v1/provisioning_service_services_pb.rb +2 -0
  48. data/proto_docs/google/cloud/apihub/v1/apihub_service.rb +251 -15
  49. data/proto_docs/google/cloud/apihub/v1/collect_service.rb +188 -0
  50. data/proto_docs/google/cloud/apihub/v1/common_fields.rb +819 -28
  51. data/proto_docs/google/cloud/apihub/v1/curate_service.rb +268 -0
  52. data/proto_docs/google/cloud/apihub/v1/discovery_service.rb +124 -0
  53. data/proto_docs/google/cloud/apihub/v1/linting_service.rb +10 -4
  54. data/proto_docs/google/cloud/apihub/v1/plugin_service.rb +799 -1
  55. data/proto_docs/google/cloud/apihub/v1/provisioning_service.rb +13 -0
  56. metadata +40 -23
@@ -32,7 +32,7 @@ module Google
32
32
  # (Unicode code points).
33
33
  # @!attribute [rw] type
34
34
  # @return [::Google::Cloud::ApiHub::V1::AttributeValues]
35
- # Required. The type of the API.
35
+ # Optional. The type of the API.
36
36
  # This maps to the following system defined attribute:
37
37
  # `projects/{project}/locations/{location}/attributes/system-plugin-type`
38
38
  # attribute.
@@ -40,6 +40,7 @@ module Google
40
40
  # cardinality of the attribute. The same can be retrieved via GetAttribute
41
41
  # API. All values should be from the list of allowed values defined for the
42
42
  # attribute.
43
+ # Note this field is not required for plugins developed via plugin framework.
43
44
  # @!attribute [rw] description
44
45
  # @return [::String]
45
46
  # Optional. The plugin description. Max length is 2000 characters (Unicode
@@ -47,10 +48,105 @@ module Google
47
48
  # @!attribute [r] state
48
49
  # @return [::Google::Cloud::ApiHub::V1::Plugin::State]
49
50
  # Output only. Represents the state of the plugin.
51
+ # Note this field will not be set for plugins developed via plugin
52
+ # framework as the state will be managed at plugin instance level.
53
+ # @!attribute [r] ownership_type
54
+ # @return [::Google::Cloud::ApiHub::V1::Plugin::OwnershipType]
55
+ # Output only. The type of the plugin, indicating whether it is
56
+ # 'SYSTEM_OWNED' or 'USER_OWNED'.
57
+ # @!attribute [rw] hosting_service
58
+ # @return [::Google::Cloud::ApiHub::V1::Plugin::HostingService]
59
+ # Optional. This field is optional. It is used to notify the plugin hosting
60
+ # service for any lifecycle changes of the plugin instance and trigger
61
+ # execution of plugin instance actions in case of API hub managed actions.
62
+ #
63
+ # This field should be provided if the plugin instance lifecycle of the
64
+ # developed plugin needs to be managed from API hub. Also, in this case the
65
+ # plugin hosting service interface needs to be implemented.
66
+ #
67
+ # This field should not be provided if the plugin wants to manage plugin
68
+ # instance lifecycle events outside of hub interface and use plugin framework
69
+ # for only registering of plugin and plugin instances to capture the source
70
+ # of data into hub. Note, in this case the plugin hosting service interface
71
+ # is not required to be implemented. Also, the plugin instance lifecycle
72
+ # actions will be disabled from API hub's UI.
73
+ # @!attribute [rw] actions_config
74
+ # @return [::Array<::Google::Cloud::ApiHub::V1::PluginActionConfig>]
75
+ # Optional. The configuration of actions supported by the plugin.
76
+ # **REQUIRED**: This field must be provided when creating or updating a
77
+ # Plugin. The server will reject requests if this field is missing.
78
+ # @!attribute [rw] documentation
79
+ # @return [::Google::Cloud::ApiHub::V1::Documentation]
80
+ # Optional. The documentation of the plugin, that explains how to set up and
81
+ # use the plugin.
82
+ # @!attribute [rw] plugin_category
83
+ # @return [::Google::Cloud::ApiHub::V1::PluginCategory]
84
+ # Optional. The category of the plugin, identifying its primary category or
85
+ # purpose. This field is required for all plugins.
86
+ # @!attribute [rw] config_template
87
+ # @return [::Google::Cloud::ApiHub::V1::Plugin::ConfigTemplate]
88
+ # Optional. The configuration template for the plugin.
89
+ # @!attribute [r] create_time
90
+ # @return [::Google::Protobuf::Timestamp]
91
+ # Output only. Timestamp indicating when the plugin was created.
92
+ # @!attribute [r] update_time
93
+ # @return [::Google::Protobuf::Timestamp]
94
+ # Output only. Timestamp indicating when the plugin was last updated.
95
+ # @!attribute [rw] gateway_type
96
+ # @return [::Google::Cloud::ApiHub::V1::GatewayType]
97
+ # Optional. The type of the gateway.
50
98
  class Plugin
51
99
  include ::Google::Protobuf::MessageExts
52
100
  extend ::Google::Protobuf::MessageExts::ClassMethods
53
101
 
102
+ # The information related to the service implemented by the plugin
103
+ # developer, used to invoke the plugin's functionality.
104
+ # @!attribute [rw] service_uri
105
+ # @return [::String]
106
+ # Optional. The URI of the service implemented by the plugin developer,
107
+ # used to invoke the plugin's functionality. This information is only
108
+ # required for user defined plugins.
109
+ class HostingService
110
+ include ::Google::Protobuf::MessageExts
111
+ extend ::Google::Protobuf::MessageExts::ClassMethods
112
+ end
113
+
114
+ # ConfigTemplate represents the configuration template for a plugin.
115
+ # @!attribute [rw] auth_config_template
116
+ # @return [::Google::Cloud::ApiHub::V1::Plugin::ConfigTemplate::AuthConfigTemplate]
117
+ # Optional. The authentication template for the plugin.
118
+ # @!attribute [rw] additional_config_template
119
+ # @return [::Array<::Google::Cloud::ApiHub::V1::ConfigVariableTemplate>]
120
+ # Optional. The list of additional configuration variables for the plugin's
121
+ # configuration.
122
+ class ConfigTemplate
123
+ include ::Google::Protobuf::MessageExts
124
+ extend ::Google::Protobuf::MessageExts::ClassMethods
125
+
126
+ # AuthConfigTemplate represents the authentication template for a plugin.
127
+ # @!attribute [rw] supported_auth_types
128
+ # @return [::Array<::Google::Cloud::ApiHub::V1::AuthType>]
129
+ # Required. The list of authentication types supported by the plugin.
130
+ # @!attribute [rw] service_account
131
+ # @return [::Google::Cloud::ApiHub::V1::GoogleServiceAccountConfig]
132
+ # Optional. The service account of the plugin hosting service.
133
+ # This service account should be granted the required permissions on the
134
+ # Auth Config parameters provided while creating the plugin instances
135
+ # corresponding to this plugin.
136
+ #
137
+ # For example, if the plugin instance auth config requires a secret
138
+ # manager secret, the service account should be granted the
139
+ # secretmanager.versions.access permission on the corresponding secret,
140
+ # if the plugin instance auth config contains a service account, the
141
+ # service account should be granted the
142
+ # iam.serviceAccounts.getAccessToken permission on the corresponding
143
+ # service account.
144
+ class AuthConfigTemplate
145
+ include ::Google::Protobuf::MessageExts
146
+ extend ::Google::Protobuf::MessageExts::ClassMethods
147
+ end
148
+ end
149
+
54
150
  # Possible states a plugin can have. Note that this enum may receive new
55
151
  # values in the future. Consumers are advised to always code against the
56
152
  # enum values expecting new states can be added later on.
@@ -64,6 +160,68 @@ module Google
64
160
  # The plugin is disabled.
65
161
  DISABLED = 2
66
162
  end
163
+
164
+ # Ownership type of the plugin.
165
+ module OwnershipType
166
+ # Default unspecified type.
167
+ OWNERSHIP_TYPE_UNSPECIFIED = 0
168
+
169
+ # System owned plugins are defined by API hub and are available out of the
170
+ # box in API hub.
171
+ SYSTEM_OWNED = 1
172
+
173
+ # User owned plugins are defined by the user and need to be explicitly
174
+ # added to API hub via
175
+ # {::Google::Cloud::ApiHub::V1::ApiHubPlugin::Rest::Client#create_plugin CreatePlugin} method.
176
+ USER_OWNED = 2
177
+ end
178
+ end
179
+
180
+ # PluginActionConfig represents the configuration of an action supported by a
181
+ # plugin.
182
+ # @!attribute [rw] id
183
+ # @return [::String]
184
+ # Required. The id of the action.
185
+ # @!attribute [rw] display_name
186
+ # @return [::String]
187
+ # Required. The display name of the action.
188
+ # @!attribute [rw] description
189
+ # @return [::String]
190
+ # Required. The description of the operation performed by the action.
191
+ # @!attribute [rw] trigger_mode
192
+ # @return [::Google::Cloud::ApiHub::V1::PluginActionConfig::TriggerMode]
193
+ # Required. The trigger mode supported by the action.
194
+ class PluginActionConfig
195
+ include ::Google::Protobuf::MessageExts
196
+ extend ::Google::Protobuf::MessageExts::ClassMethods
197
+
198
+ # Execution mode of the action.
199
+ module TriggerMode
200
+ # Default unspecified mode.
201
+ TRIGGER_MODE_UNSPECIFIED = 0
202
+
203
+ # This action can be executed by invoking
204
+ # {::Google::Cloud::ApiHub::V1::ApiHubPlugin::Rest::Client#execute_plugin_instance_action ExecutePluginInstanceAction}
205
+ # API with the given action id. To support this, the plugin hosting service
206
+ # should handle this action id as part of execute call.
207
+ API_HUB_ON_DEMAND_TRIGGER = 1
208
+
209
+ # This action will be executed on schedule by invoking
210
+ # {::Google::Cloud::ApiHub::V1::ApiHubPlugin::Rest::Client#execute_plugin_instance_action ExecutePluginInstanceAction}
211
+ # API with the given action id. To set the schedule, the user can provide
212
+ # the cron expression in the
213
+ # [PluginAction][PluginAction.schedule_cron_expression] field for a given
214
+ # plugin instance. To support this, the plugin hosting service should
215
+ # handle this action id as part of execute call.
216
+ # Note, on demand execution will be supported by default in this trigger
217
+ # mode.
218
+ API_HUB_SCHEDULE_TRIGGER = 2
219
+
220
+ # The execution of this plugin is not handled by API hub. In this case,
221
+ # the plugin hosting service need not handle this action id as part of
222
+ # the execute call.
223
+ NON_API_HUB_MANAGED = 3
224
+ end
67
225
  end
68
226
 
69
227
  # The {::Google::Cloud::ApiHub::V1::ApiHubPlugin::Rest::Client#get_plugin GetPlugin} method's
@@ -98,6 +256,646 @@ module Google
98
256
  include ::Google::Protobuf::MessageExts
99
257
  extend ::Google::Protobuf::MessageExts::ClassMethods
100
258
  end
259
+
260
+ # PluginInstanceAction represents an action which can be executed in the plugin
261
+ # instance.
262
+ # @!attribute [rw] hub_instance_action
263
+ # @return [::Google::Cloud::ApiHub::V1::ExecutionStatus]
264
+ # Optional. The execution information for the plugin instance action done
265
+ # corresponding to an API hub instance.
266
+ # @!attribute [rw] action_id
267
+ # @return [::String]
268
+ # Required. This should map to one of the [action
269
+ # id][google.cloud.apihub.v1.PluginActionConfig.id] specified in
270
+ # {::Google::Cloud::ApiHub::V1::Plugin#actions_config actions_config} in the
271
+ # plugin.
272
+ # @!attribute [r] state
273
+ # @return [::Google::Cloud::ApiHub::V1::PluginInstanceAction::State]
274
+ # Output only. The current state of the plugin action in the plugin instance.
275
+ # @!attribute [rw] schedule_cron_expression
276
+ # @return [::String]
277
+ # Optional. The schedule for this plugin instance action. This can only be
278
+ # set if the plugin supports API_HUB_SCHEDULE_TRIGGER mode for this action.
279
+ # @!attribute [rw] curation_config
280
+ # @return [::Google::Cloud::ApiHub::V1::CurationConfig]
281
+ # Optional. This configuration should be provided if the plugin action is
282
+ # publishing data to API hub curate layer.
283
+ # @!attribute [rw] schedule_time_zone
284
+ # @return [::String]
285
+ # Optional. The time zone for the schedule cron expression. If not provided,
286
+ # UTC will be used.
287
+ # @!attribute [rw] service_account
288
+ # @return [::String]
289
+ # Optional. The service account used to publish data. Note, the service
290
+ # account will only be accepted for non GCP plugins like OPDK.
291
+ # @!attribute [r] resource_config
292
+ # @return [::Google::Cloud::ApiHub::V1::PluginInstanceAction::ResourceConfig]
293
+ # Output only. The configuration of resources created for a given plugin
294
+ # instance action. Note these will be returned only in case of Non-GCP
295
+ # plugins like OPDK.
296
+ class PluginInstanceAction
297
+ include ::Google::Protobuf::MessageExts
298
+ extend ::Google::Protobuf::MessageExts::ClassMethods
299
+
300
+ # The configuration of resources created for a given plugin instance action.
301
+ # @!attribute [r] action_type
302
+ # @return [::Google::Cloud::ApiHub::V1::ActionType]
303
+ # Output only. The type of the action.
304
+ # @!attribute [r] pubsub_topic
305
+ # @return [::String]
306
+ # Output only. The pubsub topic to publish the data to. Format is
307
+ # projects/\\{project}/topics/\\{topic}
308
+ class ResourceConfig
309
+ include ::Google::Protobuf::MessageExts
310
+ extend ::Google::Protobuf::MessageExts::ClassMethods
311
+ end
312
+
313
+ # State represents the state of the plugin instance action.
314
+ module State
315
+ # Default unspecified state.
316
+ STATE_UNSPECIFIED = 0
317
+
318
+ # The action is enabled in the plugin instance i.e., executions can
319
+ # be triggered for this action.
320
+ ENABLED = 1
321
+
322
+ # The action is disabled in the plugin instance i.e., no executions
323
+ # can be triggered for this action. This state indicates that the user
324
+ # explicitly disabled the instance, and no further action is needed unless
325
+ # the user wants to re-enable it.
326
+ DISABLED = 2
327
+
328
+ # The action in the plugin instance is being enabled.
329
+ ENABLING = 3
330
+
331
+ # The action in the plugin instance is being disabled.
332
+ DISABLING = 4
333
+
334
+ # The ERROR state can come while enabling/disabling plugin instance action.
335
+ # Users can retrigger enable, disable via
336
+ # {::Google::Cloud::ApiHub::V1::ApiHubPlugin::Rest::Client#enable_plugin_instance_action EnablePluginInstanceAction}
337
+ # and
338
+ # {::Google::Cloud::ApiHub::V1::ApiHubPlugin::Rest::Client#disable_plugin_instance_action DisablePluginInstanceAction}
339
+ # to restore the action back to enabled/disabled state. Note enable/disable
340
+ # on actions can only be triggered if plugin instance is in Active state.
341
+ ERROR = 5
342
+ end
343
+ end
344
+
345
+ # Represents a plugin instance resource in the API Hub.
346
+ # A PluginInstance is a specific instance of a hub plugin with its own
347
+ # configuration, state, and execution details.
348
+ # @!attribute [rw] name
349
+ # @return [::String]
350
+ # Identifier. The unique name of the plugin instance resource.
351
+ # Format:
352
+ # `projects/{project}/locations/{location}/plugins/{plugin}/instances/{instance}`
353
+ # @!attribute [rw] display_name
354
+ # @return [::String]
355
+ # Required. The display name for this plugin instance. Max length is 255
356
+ # characters.
357
+ # @!attribute [rw] auth_config
358
+ # @return [::Google::Cloud::ApiHub::V1::AuthConfig]
359
+ # Optional. The authentication information for this plugin instance.
360
+ # @!attribute [rw] additional_config
361
+ # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::ApiHub::V1::ConfigVariable}]
362
+ # Optional. The additional information for this plugin instance corresponding
363
+ # to the additional config template of the plugin. This information will be
364
+ # sent to plugin hosting service on each call to plugin hosted service. The
365
+ # key will be the config_variable_template.display_name to uniquely identify
366
+ # the config variable.
367
+ # @!attribute [r] state
368
+ # @return [::Google::Cloud::ApiHub::V1::PluginInstance::State]
369
+ # Output only. The current state of the plugin instance (e.g., enabled,
370
+ # disabled, provisioning).
371
+ # @!attribute [r] error_message
372
+ # @return [::String]
373
+ # Output only. Error message describing the failure, if any, during Create,
374
+ # Delete or ApplyConfig operation corresponding to the plugin instance.This
375
+ # field will only be populated if the plugin instance is in the ERROR or
376
+ # FAILED state.
377
+ # @!attribute [rw] actions
378
+ # @return [::Array<::Google::Cloud::ApiHub::V1::PluginInstanceAction>]
379
+ # Required. The action status for the plugin instance.
380
+ # @!attribute [r] create_time
381
+ # @return [::Google::Protobuf::Timestamp]
382
+ # Output only. Timestamp indicating when the plugin instance was created.
383
+ # @!attribute [r] update_time
384
+ # @return [::Google::Protobuf::Timestamp]
385
+ # Output only. Timestamp indicating when the plugin instance was last
386
+ # updated.
387
+ # @!attribute [rw] source_project_id
388
+ # @return [::String]
389
+ # Optional. The source project id of the plugin instance. This will be the id
390
+ # of runtime project in case of gcp based plugins and org id in case of non
391
+ # gcp based plugins. This field will be a required field for Google provided
392
+ # on-ramp plugins.
393
+ class PluginInstance
394
+ include ::Google::Protobuf::MessageExts
395
+ extend ::Google::Protobuf::MessageExts::ClassMethods
396
+
397
+ # @!attribute [rw] key
398
+ # @return [::String]
399
+ # @!attribute [rw] value
400
+ # @return [::Google::Cloud::ApiHub::V1::ConfigVariable]
401
+ class AdditionalConfigEntry
402
+ include ::Google::Protobuf::MessageExts
403
+ extend ::Google::Protobuf::MessageExts::ClassMethods
404
+ end
405
+
406
+ # State represents the state of the plugin instance.
407
+ module State
408
+ # Default unspecified state.
409
+ STATE_UNSPECIFIED = 0
410
+
411
+ # The plugin instance is being created.
412
+ CREATING = 1
413
+
414
+ # The plugin instance is active and ready for executions. This is the only
415
+ # state where executions can run on the plugin instance.
416
+ ACTIVE = 2
417
+
418
+ # The updated config that contains
419
+ # {::Google::Cloud::ApiHub::V1::PluginInstance#additional_config additional_config}
420
+ # and {::Google::Cloud::ApiHub::V1::PluginInstance#auth_config auth_config} is
421
+ # being applied.
422
+ APPLYING_CONFIG = 3
423
+
424
+ # The ERROR state can come while applying config. Users
425
+ # can retrigger
426
+ # [ApplyPluginInstanceConfig][google.cloud.apihub.v1.ApiHubPlugin.ApplyPluginInstanceConfig]
427
+ # to restore the plugin instance back to active state. Note, In case the
428
+ # ERROR state happens while applying config (auth_config,
429
+ # additional_config), the plugin instance will reflect the config which was
430
+ # trying to be applied while error happened. In order to overwrite, trigger
431
+ # ApplyConfig with a new config.
432
+ ERROR = 4
433
+
434
+ # The plugin instance is in a failed state. This indicates that an
435
+ # unrecoverable error occurred during a previous operation (Create,
436
+ # Delete).
437
+ FAILED = 5
438
+
439
+ # The plugin instance is being deleted. Delete is only possible if there is
440
+ # no other operation running on the plugin instance and plugin instance
441
+ # action.
442
+ DELETING = 6
443
+ end
444
+ end
445
+
446
+ # The curation information for this plugin instance.
447
+ # @!attribute [rw] custom_curation
448
+ # @return [::Google::Cloud::ApiHub::V1::CurationConfig::CustomCuration]
449
+ # Optional. Custom curation information for this plugin instance.
450
+ # @!attribute [rw] curation_type
451
+ # @return [::Google::Cloud::ApiHub::V1::CurationType]
452
+ # Required. The curation type for this plugin instance.
453
+ class CurationConfig
454
+ include ::Google::Protobuf::MessageExts
455
+ extend ::Google::Protobuf::MessageExts::ClassMethods
456
+
457
+ # Custom curation information for this plugin instance.
458
+ # @!attribute [rw] curation
459
+ # @return [::String]
460
+ # Required. The unique name of the curation resource. This will be the name
461
+ # of the curation resource in the format:
462
+ # `projects/{project}/locations/{location}/curations/{curation}`
463
+ class CustomCuration
464
+ include ::Google::Protobuf::MessageExts
465
+ extend ::Google::Protobuf::MessageExts::ClassMethods
466
+ end
467
+ end
468
+
469
+ # The execution status for the plugin instance.
470
+ # @!attribute [r] current_execution_state
471
+ # @return [::Google::Cloud::ApiHub::V1::ExecutionStatus::CurrentExecutionState]
472
+ # Output only. The current state of the execution.
473
+ # @!attribute [r] last_execution
474
+ # @return [::Google::Cloud::ApiHub::V1::ExecutionStatus::LastExecution]
475
+ # Output only. The last execution of the plugin instance.
476
+ class ExecutionStatus
477
+ include ::Google::Protobuf::MessageExts
478
+ extend ::Google::Protobuf::MessageExts::ClassMethods
479
+
480
+ # The result of the last execution of the plugin instance.
481
+ # @!attribute [r] result
482
+ # @return [::Google::Cloud::ApiHub::V1::ExecutionStatus::LastExecution::Result]
483
+ # Output only. The result of the last execution of the plugin instance.
484
+ # @!attribute [r] error_message
485
+ # @return [::String]
486
+ # Output only. Error message describing the failure, if any, during the
487
+ # last execution.
488
+ # @!attribute [r] start_time
489
+ # @return [::Google::Protobuf::Timestamp]
490
+ # Output only. The last execution start time of the plugin instance.
491
+ # @!attribute [r] end_time
492
+ # @return [::Google::Protobuf::Timestamp]
493
+ # Output only. The last execution end time of the plugin instance.
494
+ class LastExecution
495
+ include ::Google::Protobuf::MessageExts
496
+ extend ::Google::Protobuf::MessageExts::ClassMethods
497
+
498
+ # Enum for the result of the last execution of the plugin instance.
499
+ module Result
500
+ # Default unspecified execution result.
501
+ RESULT_UNSPECIFIED = 0
502
+
503
+ # The plugin instance executed successfully.
504
+ SUCCEEDED = 1
505
+
506
+ # The plugin instance execution failed.
507
+ FAILED = 2
508
+ end
509
+ end
510
+
511
+ # Enum for the current state of the execution.
512
+ module CurrentExecutionState
513
+ # Default unspecified execution state.
514
+ CURRENT_EXECUTION_STATE_UNSPECIFIED = 0
515
+
516
+ # The plugin instance is executing.
517
+ RUNNING = 1
518
+
519
+ # The plugin instance is not running an execution.
520
+ NOT_RUNNING = 2
521
+ end
522
+ end
523
+
524
+ # The {::Google::Cloud::ApiHub::V1::ApiHubPlugin::Rest::Client#create_plugin CreatePlugin} method's
525
+ # request.
526
+ # @!attribute [rw] parent
527
+ # @return [::String]
528
+ # Required. The parent resource where this plugin will be created.
529
+ # Format: `projects/{project}/locations/{location}`.
530
+ # @!attribute [rw] plugin_id
531
+ # @return [::String]
532
+ # Optional. The ID to use for the Plugin resource, which will become the
533
+ # final component of the Plugin's resource name. This field is optional.
534
+ #
535
+ # * If provided, the same will be used. The service will throw an error if
536
+ # the specified id is already used by another Plugin resource in the API hub
537
+ # instance.
538
+ # * If not provided, a system generated id will be used.
539
+ #
540
+ # This value should be 4-63 characters, overall resource name which will be
541
+ # of format
542
+ # `projects/{project}/locations/{location}/plugins/{plugin}`,
543
+ # its length is limited to 1000 characters and valid characters are
544
+ # /[a-z][A-Z][0-9]-_/.
545
+ # @!attribute [rw] plugin
546
+ # @return [::Google::Cloud::ApiHub::V1::Plugin]
547
+ # Required. The plugin to create.
548
+ class CreatePluginRequest
549
+ include ::Google::Protobuf::MessageExts
550
+ extend ::Google::Protobuf::MessageExts::ClassMethods
551
+ end
552
+
553
+ # The [DeletePlugin][ApiHub.DeletePlugin] method's request.
554
+ # @!attribute [rw] name
555
+ # @return [::String]
556
+ # Required. The name of the Plugin resource to delete.
557
+ # Format: `projects/{project}/locations/{location}/plugins/{plugin}`
558
+ class DeletePluginRequest
559
+ include ::Google::Protobuf::MessageExts
560
+ extend ::Google::Protobuf::MessageExts::ClassMethods
561
+ end
562
+
563
+ # The {::Google::Cloud::ApiHub::V1::ApiHubPlugin::Rest::Client#list_plugins ListPlugins} method's
564
+ # request.
565
+ # @!attribute [rw] parent
566
+ # @return [::String]
567
+ # Required. The parent resource where this plugin will be created.
568
+ # Format: `projects/{project}/locations/{location}`.
569
+ # @!attribute [rw] filter
570
+ # @return [::String]
571
+ # Optional. An expression that filters the list of plugins.
572
+ #
573
+ # A filter expression consists of a field name, a comparison
574
+ # operator, and a value for filtering. The value must be a string. The
575
+ # comparison operator must be one of: `<`, `>` or
576
+ # `=`. Filters are not case sensitive.
577
+ #
578
+ # The following fields in the `Plugins` are eligible for filtering:
579
+ #
580
+ # * `plugin_category` - The category of the Plugin. Allowed
581
+ # comparison operators: `=`.
582
+ #
583
+ # Expressions are combined with either `AND` logic operator or `OR` logical
584
+ # operator but not both of them together i.e. only one of the `AND` or `OR`
585
+ # operator can be used throughout the filter string and both the operators
586
+ # cannot be used together. No other logical operators are
587
+ # supported. At most three filter fields are allowed in the filter
588
+ # string and if provided more than that then `INVALID_ARGUMENT` error is
589
+ # returned by the API.
590
+ # Here are a few examples:
591
+ #
592
+ # * `plugin_category = ON_RAMP` - The plugin is of category
593
+ # on ramp.
594
+ # @!attribute [rw] page_size
595
+ # @return [::Integer]
596
+ # Optional. The maximum number of hub plugins to return. The service may
597
+ # return fewer than this value. If unspecified, at most 50 hub plugins will
598
+ # be returned. The maximum value is 1000; values above 1000 will be coerced
599
+ # to 1000.
600
+ # @!attribute [rw] page_token
601
+ # @return [::String]
602
+ # Optional. A page token, received from a previous `ListPlugins` call.
603
+ # Provide this to retrieve the subsequent page.
604
+ #
605
+ # When paginating, all other parameters (except page_size) provided to
606
+ # `ListPlugins` must match the call that provided the page token.
607
+ class ListPluginsRequest
608
+ include ::Google::Protobuf::MessageExts
609
+ extend ::Google::Protobuf::MessageExts::ClassMethods
610
+ end
611
+
612
+ # The {::Google::Cloud::ApiHub::V1::ApiHubPlugin::Rest::Client#list_plugins ListPlugins} method's
613
+ # response.
614
+ # @!attribute [rw] plugins
615
+ # @return [::Array<::Google::Cloud::ApiHub::V1::Plugin>]
616
+ # The plugins from the specified parent resource.
617
+ # @!attribute [rw] next_page_token
618
+ # @return [::String]
619
+ # A token, which can be sent as `page_token` to retrieve the next page.
620
+ # If this field is omitted, there are no subsequent pages.
621
+ class ListPluginsResponse
622
+ include ::Google::Protobuf::MessageExts
623
+ extend ::Google::Protobuf::MessageExts::ClassMethods
624
+ end
625
+
626
+ # The
627
+ # {::Google::Cloud::ApiHub::V1::ApiHubPlugin::Rest::Client#create_plugin_instance CreatePluginInstance}
628
+ # method's request.
629
+ # @!attribute [rw] parent
630
+ # @return [::String]
631
+ # Required. The parent of the plugin instance resource.
632
+ # Format: `projects/{project}/locations/{location}/plugins/{plugin}`
633
+ # @!attribute [rw] plugin_instance_id
634
+ # @return [::String]
635
+ # Optional. The ID to use for the plugin instance, which will become the
636
+ # final component of the plugin instance's resource name. This field is
637
+ # optional.
638
+ #
639
+ # * If provided, the same will be used. The service will throw an error if
640
+ # the specified id is already used by another plugin instance in the plugin
641
+ # resource.
642
+ # * If not provided, a system generated id will be used.
643
+ #
644
+ # This value should be 4-63 characters, and valid characters
645
+ # are /[a-z][A-Z][0-9]-_/.
646
+ # @!attribute [rw] plugin_instance
647
+ # @return [::Google::Cloud::ApiHub::V1::PluginInstance]
648
+ # Required. The plugin instance to create.
649
+ class CreatePluginInstanceRequest
650
+ include ::Google::Protobuf::MessageExts
651
+ extend ::Google::Protobuf::MessageExts::ClassMethods
652
+ end
653
+
654
+ # The
655
+ # {::Google::Cloud::ApiHub::V1::ApiHubPlugin::Rest::Client#execute_plugin_instance_action ExecutePluginInstanceAction}
656
+ # method's request.
657
+ # @!attribute [rw] name
658
+ # @return [::String]
659
+ # Required. The name of the plugin instance to execute.
660
+ # Format:
661
+ # `projects/{project}/locations/{location}/plugins/{plugin}/instances/{instance}`
662
+ # @!attribute [rw] action_execution_detail
663
+ # @return [::Google::Cloud::ApiHub::V1::ActionExecutionDetail]
664
+ # Required. The execution details for the action to execute.
665
+ class ExecutePluginInstanceActionRequest
666
+ include ::Google::Protobuf::MessageExts
667
+ extend ::Google::Protobuf::MessageExts::ClassMethods
668
+ end
669
+
670
+ # The details for the action to execute.
671
+ # @!attribute [rw] action_id
672
+ # @return [::String]
673
+ # Required. The action id of the plugin to execute.
674
+ class ActionExecutionDetail
675
+ include ::Google::Protobuf::MessageExts
676
+ extend ::Google::Protobuf::MessageExts::ClassMethods
677
+ end
678
+
679
+ # The
680
+ # {::Google::Cloud::ApiHub::V1::ApiHubPlugin::Rest::Client#execute_plugin_instance_action ExecutePluginInstanceAction}
681
+ # method's response.
682
+ class ExecutePluginInstanceActionResponse
683
+ include ::Google::Protobuf::MessageExts
684
+ extend ::Google::Protobuf::MessageExts::ClassMethods
685
+ end
686
+
687
+ # The
688
+ # {::Google::Cloud::ApiHub::V1::ApiHubPlugin::Rest::Client#get_plugin_instance GetPluginInstance}
689
+ # method's request.
690
+ # @!attribute [rw] name
691
+ # @return [::String]
692
+ # Required. The name of the plugin instance to retrieve.
693
+ # Format:
694
+ # `projects/{project}/locations/{location}/plugins/{plugin}/instances/{instance}`
695
+ class GetPluginInstanceRequest
696
+ include ::Google::Protobuf::MessageExts
697
+ extend ::Google::Protobuf::MessageExts::ClassMethods
698
+ end
699
+
700
+ # The
701
+ # {::Google::Cloud::ApiHub::V1::ApiHubPlugin::Rest::Client#list_plugin_instances ListPluginInstances}
702
+ # method's request.
703
+ # @!attribute [rw] parent
704
+ # @return [::String]
705
+ # Required. The parent resource where this plugin will be created.
706
+ # Format: `projects/{project}/locations/{location}/plugins/{plugin}`.
707
+ # To list plugin instances for multiple plugins,
708
+ # use the - character instead of the plugin ID.
709
+ # @!attribute [rw] filter
710
+ # @return [::String]
711
+ # Optional. An expression that filters the list of plugin instances.
712
+ #
713
+ # A filter expression consists of a field name, a comparison
714
+ # operator, and a value for filtering. The value must be a string. The
715
+ # comparison operator must be one of: `<`, `>` or
716
+ # `=`. Filters are not case sensitive.
717
+ #
718
+ # The following fields in the `PluginInstances` are eligible for filtering:
719
+ #
720
+ # * `state` - The state of the Plugin Instance. Allowed
721
+ # comparison operators: `=`.
722
+ #
723
+ # A filter function is also supported in the filter string. The filter
724
+ # function is `id(name)`. The `id(name)` function returns the id of the
725
+ # resource name. For example, `id(name) = \"plugin-instance-1\"` is
726
+ # equivalent to `name =
727
+ # \"projects/test-project-id/locations/test-location-id/plugins/plugin-1/instances/plugin-instance-1\"`
728
+ # provided the parent is
729
+ # `projects/test-project-id/locations/test-location-id/plugins/plugin-1`.
730
+ #
731
+ # Expressions are combined with either `AND` logic operator or `OR` logical
732
+ # operator but not both of them together i.e. only one of the `AND` or `OR`
733
+ # operator can be used throughout the filter string and both the operators
734
+ # cannot be used together. No other logical operators are
735
+ # supported. At most three filter fields are allowed in the filter
736
+ # string and if provided more than that then `INVALID_ARGUMENT` error is
737
+ # returned by the API.
738
+ # Here are a few examples:
739
+ #
740
+ # * `state = ENABLED` - The plugin instance is in enabled state.
741
+ # @!attribute [rw] page_size
742
+ # @return [::Integer]
743
+ # Optional. The maximum number of hub plugins to return. The service may
744
+ # return fewer than this value. If unspecified, at most 50 hub plugins will
745
+ # be returned. The maximum value is 1000; values above 1000 will be coerced
746
+ # to 1000.
747
+ # @!attribute [rw] page_token
748
+ # @return [::String]
749
+ # Optional. A page token, received from a previous `ListPluginInstances`
750
+ # call. Provide this to retrieve the subsequent page.
751
+ #
752
+ # When paginating, all other parameters provided to `ListPluginInstances`
753
+ # must match the call that provided the page token.
754
+ class ListPluginInstancesRequest
755
+ include ::Google::Protobuf::MessageExts
756
+ extend ::Google::Protobuf::MessageExts::ClassMethods
757
+ end
758
+
759
+ # The
760
+ # {::Google::Cloud::ApiHub::V1::ApiHubPlugin::Rest::Client#list_plugin_instances ListPluginInstances}
761
+ # method's response.
762
+ # @!attribute [rw] plugin_instances
763
+ # @return [::Array<::Google::Cloud::ApiHub::V1::PluginInstance>]
764
+ # The plugin instances from the specified parent resource.
765
+ # @!attribute [rw] next_page_token
766
+ # @return [::String]
767
+ # A token, which can be sent as `page_token` to retrieve the next page.
768
+ # If this field is omitted, there are no subsequent pages.
769
+ class ListPluginInstancesResponse
770
+ include ::Google::Protobuf::MessageExts
771
+ extend ::Google::Protobuf::MessageExts::ClassMethods
772
+ end
773
+
774
+ # The
775
+ # {::Google::Cloud::ApiHub::V1::ApiHubPlugin::Rest::Client#enable_plugin_instance_action EnablePluginInstanceAction}
776
+ # method's request.
777
+ # @!attribute [rw] name
778
+ # @return [::String]
779
+ # Required. The name of the plugin instance to enable.
780
+ # Format:
781
+ # `projects/{project}/locations/{location}/plugins/{plugin}/instances/{instance}`
782
+ # @!attribute [rw] action_id
783
+ # @return [::String]
784
+ # Required. The action id to enable.
785
+ class EnablePluginInstanceActionRequest
786
+ include ::Google::Protobuf::MessageExts
787
+ extend ::Google::Protobuf::MessageExts::ClassMethods
788
+ end
789
+
790
+ # The
791
+ # {::Google::Cloud::ApiHub::V1::ApiHubPlugin::Rest::Client#enable_plugin_instance_action EnablePluginInstanceAction}
792
+ # method's response.
793
+ class EnablePluginInstanceActionResponse
794
+ include ::Google::Protobuf::MessageExts
795
+ extend ::Google::Protobuf::MessageExts::ClassMethods
796
+ end
797
+
798
+ # The
799
+ # {::Google::Cloud::ApiHub::V1::ApiHubPlugin::Rest::Client#disable_plugin_instance_action DisablePluginInstanceAction}
800
+ # method's request.
801
+ # @!attribute [rw] name
802
+ # @return [::String]
803
+ # Required. The name of the plugin instance to disable.
804
+ # Format:
805
+ # `projects/{project}/locations/{location}/plugins/{plugin}/instances/{instance}`
806
+ # @!attribute [rw] action_id
807
+ # @return [::String]
808
+ # Required. The action id to disable.
809
+ class DisablePluginInstanceActionRequest
810
+ include ::Google::Protobuf::MessageExts
811
+ extend ::Google::Protobuf::MessageExts::ClassMethods
812
+ end
813
+
814
+ # The
815
+ # {::Google::Cloud::ApiHub::V1::ApiHubPlugin::Rest::Client#disable_plugin_instance_action DisablePluginInstanceAction}
816
+ # method's response.
817
+ class DisablePluginInstanceActionResponse
818
+ include ::Google::Protobuf::MessageExts
819
+ extend ::Google::Protobuf::MessageExts::ClassMethods
820
+ end
821
+
822
+ # The
823
+ # {::Google::Cloud::ApiHub::V1::ApiHubPlugin::Rest::Client#update_plugin_instance UpdatePluginInstance}
824
+ # method's request.
825
+ # @!attribute [rw] plugin_instance
826
+ # @return [::Google::Cloud::ApiHub::V1::PluginInstance]
827
+ # Required. The plugin instance to update.
828
+ # @!attribute [rw] update_mask
829
+ # @return [::Google::Protobuf::FieldMask]
830
+ # Optional. The list of fields to update.
831
+ class UpdatePluginInstanceRequest
832
+ include ::Google::Protobuf::MessageExts
833
+ extend ::Google::Protobuf::MessageExts::ClassMethods
834
+ end
835
+
836
+ # The
837
+ # {::Google::Cloud::ApiHub::V1::ApiHubPlugin::Rest::Client#delete_plugin_instance DeletePluginInstance}
838
+ # method's request.
839
+ # @!attribute [rw] name
840
+ # @return [::String]
841
+ # Required. The name of the plugin instance to delete.
842
+ # Format:
843
+ # `projects/{project}/locations/{location}/plugins/{plugin}/instances/{instance}`.
844
+ class DeletePluginInstanceRequest
845
+ include ::Google::Protobuf::MessageExts
846
+ extend ::Google::Protobuf::MessageExts::ClassMethods
847
+ end
848
+
849
+ # Enum for the action type.
850
+ module ActionType
851
+ # Default unspecified action type.
852
+ ACTION_TYPE_UNSPECIFIED = 0
853
+
854
+ # Action type for sync metadata.
855
+ SYNC_METADATA = 1
856
+
857
+ # Action type for sync runtime data.
858
+ SYNC_RUNTIME_DATA = 2
859
+ end
860
+
861
+ # Enum for the gateway type.
862
+ module GatewayType
863
+ # The gateway type is not specified.
864
+ GATEWAY_TYPE_UNSPECIFIED = 0
865
+
866
+ # The gateway type is Apigee X and Hybrid.
867
+ APIGEE_X_AND_HYBRID = 1
868
+
869
+ # The gateway type is Apigee Edge Public Cloud.
870
+ APIGEE_EDGE_PUBLIC_CLOUD = 2
871
+
872
+ # The gateway type is Apigee Edge Private Cloud.
873
+ APIGEE_EDGE_PRIVATE_CLOUD = 3
874
+
875
+ # The gateway type is Cloud API Gateway.
876
+ CLOUD_API_GATEWAY = 4
877
+
878
+ # The gateway type is Cloud Endpoints.
879
+ CLOUD_ENDPOINTS = 5
880
+
881
+ # The gateway type is API Discovery.
882
+ API_DISCOVERY = 6
883
+
884
+ # The gateway type for any other types of gateways.
885
+ OTHERS = 7
886
+ end
887
+
888
+ # Enum for the curation type.
889
+ module CurationType
890
+ # Default unspecified curation type.
891
+ CURATION_TYPE_UNSPECIFIED = 0
892
+
893
+ # Default curation for API metadata will be used.
894
+ DEFAULT_CURATION_FOR_API_METADATA = 1
895
+
896
+ # Custom curation for API metadata will be used.
897
+ CUSTOM_CURATION_FOR_API_METADATA = 2
898
+ end
101
899
  end
102
900
  end
103
901
  end