google-cloud-vision_ai-v1 0.a → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (104) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +122 -0
  4. data/README.md +144 -8
  5. data/lib/google/cloud/vision_ai/v1/app_platform/client.rb +3318 -0
  6. data/lib/google/cloud/vision_ai/v1/app_platform/credentials.rb +47 -0
  7. data/lib/google/cloud/vision_ai/v1/app_platform/operations.rb +809 -0
  8. data/lib/google/cloud/vision_ai/v1/app_platform/paths.rb +151 -0
  9. data/lib/google/cloud/vision_ai/v1/app_platform/rest/client.rb +3106 -0
  10. data/lib/google/cloud/vision_ai/v1/app_platform/rest/operations.rb +951 -0
  11. data/lib/google/cloud/vision_ai/v1/app_platform/rest/service_stub.rb +1618 -0
  12. data/lib/google/cloud/vision_ai/v1/app_platform/rest.rb +53 -0
  13. data/lib/google/cloud/vision_ai/v1/app_platform.rb +56 -0
  14. data/lib/google/cloud/vision_ai/v1/health_check_service/client.rb +456 -0
  15. data/lib/google/cloud/vision_ai/v1/health_check_service/credentials.rb +47 -0
  16. data/lib/google/cloud/vision_ai/v1/health_check_service/paths.rb +52 -0
  17. data/lib/google/cloud/vision_ai/v1/health_check_service/rest/client.rb +423 -0
  18. data/lib/google/cloud/vision_ai/v1/health_check_service/rest/service_stub.rb +128 -0
  19. data/lib/google/cloud/vision_ai/v1/health_check_service/rest.rb +53 -0
  20. data/lib/google/cloud/vision_ai/v1/health_check_service.rb +56 -0
  21. data/lib/google/cloud/vision_ai/v1/live_video_analytics/client.rb +2375 -0
  22. data/lib/google/cloud/vision_ai/v1/live_video_analytics/credentials.rb +47 -0
  23. data/lib/google/cloud/vision_ai/v1/live_video_analytics/operations.rb +809 -0
  24. data/lib/google/cloud/vision_ai/v1/live_video_analytics/paths.rb +130 -0
  25. data/lib/google/cloud/vision_ai/v1/live_video_analytics/rest/client.rb +2220 -0
  26. data/lib/google/cloud/vision_ai/v1/live_video_analytics/rest/operations.rb +951 -0
  27. data/lib/google/cloud/vision_ai/v1/live_video_analytics/rest/service_stub.rb +1139 -0
  28. data/lib/google/cloud/vision_ai/v1/live_video_analytics/rest.rb +54 -0
  29. data/lib/google/cloud/vision_ai/v1/live_video_analytics.rb +57 -0
  30. data/lib/google/cloud/vision_ai/v1/rest.rb +42 -0
  31. data/lib/google/cloud/vision_ai/v1/streaming_service/client.rb +915 -0
  32. data/lib/google/cloud/vision_ai/v1/streaming_service/credentials.rb +47 -0
  33. data/lib/google/cloud/vision_ai/v1/streaming_service/paths.rb +54 -0
  34. data/lib/google/cloud/vision_ai/v1/streaming_service/rest/client.rb +610 -0
  35. data/lib/google/cloud/vision_ai/v1/streaming_service/rest/service_stub.rb +249 -0
  36. data/lib/google/cloud/vision_ai/v1/streaming_service/rest.rb +52 -0
  37. data/lib/google/cloud/vision_ai/v1/streaming_service.rb +55 -0
  38. data/lib/google/cloud/vision_ai/v1/streams_service/client.rb +2931 -0
  39. data/lib/google/cloud/vision_ai/v1/streams_service/credentials.rb +47 -0
  40. data/lib/google/cloud/vision_ai/v1/streams_service/operations.rb +809 -0
  41. data/lib/google/cloud/vision_ai/v1/streams_service/paths.rb +153 -0
  42. data/lib/google/cloud/vision_ai/v1/streams_service/rest/client.rb +2740 -0
  43. data/lib/google/cloud/vision_ai/v1/streams_service/rest/operations.rb +951 -0
  44. data/lib/google/cloud/vision_ai/v1/streams_service/rest/service_stub.rb +1437 -0
  45. data/lib/google/cloud/vision_ai/v1/streams_service/rest.rb +56 -0
  46. data/lib/google/cloud/vision_ai/v1/streams_service.rb +59 -0
  47. data/lib/google/cloud/vision_ai/v1/version.rb +8 -3
  48. data/lib/google/cloud/vision_ai/v1/warehouse/client.rb +6957 -0
  49. data/lib/google/cloud/vision_ai/v1/warehouse/credentials.rb +47 -0
  50. data/lib/google/cloud/vision_ai/v1/warehouse/operations.rb +809 -0
  51. data/lib/google/cloud/vision_ai/v1/warehouse/paths.rb +237 -0
  52. data/lib/google/cloud/vision_ai/v1/warehouse/rest/client.rb +6402 -0
  53. data/lib/google/cloud/vision_ai/v1/warehouse/rest/operations.rb +951 -0
  54. data/lib/google/cloud/vision_ai/v1/warehouse/rest/service_stub.rb +3760 -0
  55. data/lib/google/cloud/vision_ai/v1/warehouse/rest.rb +53 -0
  56. data/lib/google/cloud/vision_ai/v1/warehouse.rb +56 -0
  57. data/lib/google/cloud/vision_ai/v1.rb +50 -0
  58. data/lib/google/cloud/visionai/v1/annotations_pb.rb +90 -0
  59. data/lib/google/cloud/visionai/v1/common_pb.rb +50 -0
  60. data/lib/google/cloud/visionai/v1/health_service_pb.rb +48 -0
  61. data/lib/google/cloud/visionai/v1/health_service_services_pb.rb +46 -0
  62. data/lib/google/cloud/visionai/v1/lva_pb.rb +54 -0
  63. data/lib/google/cloud/visionai/v1/lva_resources_pb.rb +51 -0
  64. data/lib/google/cloud/visionai/v1/lva_service_pb.rb +80 -0
  65. data/lib/google/cloud/visionai/v1/lva_service_services_pb.rb +81 -0
  66. data/lib/google/cloud/visionai/v1/platform_pb.rb +162 -0
  67. data/lib/google/cloud/visionai/v1/platform_services_pb.rb +111 -0
  68. data/lib/google/cloud/visionai/v1/streaming_resources_pb.rb +58 -0
  69. data/lib/google/cloud/visionai/v1/streaming_service_pb.rb +71 -0
  70. data/lib/google/cloud/visionai/v1/streaming_service_services_pb.rb +55 -0
  71. data/lib/google/cloud/visionai/v1/streams_resources_pb.rb +53 -0
  72. data/lib/google/cloud/visionai/v1/streams_service_pb.rb +85 -0
  73. data/lib/google/cloud/visionai/v1/streams_service_services_pb.rb +92 -0
  74. data/lib/google/cloud/visionai/v1/warehouse_pb.rb +250 -0
  75. data/lib/google/cloud/visionai/v1/warehouse_services_pb.rb +227 -0
  76. data/lib/google-cloud-vision_ai-v1.rb +21 -0
  77. data/proto_docs/README.md +4 -0
  78. data/proto_docs/google/api/client.rb +403 -0
  79. data/proto_docs/google/api/field_behavior.rb +85 -0
  80. data/proto_docs/google/api/launch_stage.rb +71 -0
  81. data/proto_docs/google/api/resource.rb +227 -0
  82. data/proto_docs/google/cloud/visionai/v1/annotations.rb +787 -0
  83. data/proto_docs/google/cloud/visionai/v1/common.rb +134 -0
  84. data/proto_docs/google/cloud/visionai/v1/health_service.rb +61 -0
  85. data/proto_docs/google/cloud/visionai/v1/lva.rb +345 -0
  86. data/proto_docs/google/cloud/visionai/v1/lva_resources.rb +167 -0
  87. data/proto_docs/google/cloud/visionai/v1/lva_service.rb +543 -0
  88. data/proto_docs/google/cloud/visionai/v1/platform.rb +2228 -0
  89. data/proto_docs/google/cloud/visionai/v1/streaming_resources.rb +178 -0
  90. data/proto_docs/google/cloud/visionai/v1/streaming_service.rb +393 -0
  91. data/proto_docs/google/cloud/visionai/v1/streams_resources.rb +229 -0
  92. data/proto_docs/google/cloud/visionai/v1/streams_service.rb +644 -0
  93. data/proto_docs/google/cloud/visionai/v1/warehouse.rb +3002 -0
  94. data/proto_docs/google/longrunning/operations.rb +164 -0
  95. data/proto_docs/google/protobuf/any.rb +145 -0
  96. data/proto_docs/google/protobuf/duration.rb +98 -0
  97. data/proto_docs/google/protobuf/empty.rb +34 -0
  98. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  99. data/proto_docs/google/protobuf/struct.rb +96 -0
  100. data/proto_docs/google/protobuf/timestamp.rb +127 -0
  101. data/proto_docs/google/rpc/status.rb +48 -0
  102. data/proto_docs/google/type/datetime.rb +99 -0
  103. data/proto_docs/google/type/expr.rb +75 -0
  104. metadata +183 -10
@@ -0,0 +1,3002 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module VisionAI
23
+ module V1
24
+ # Request message for CreateAssetRequest.
25
+ # @!attribute [rw] parent
26
+ # @return [::String]
27
+ # Required. The parent resource where this asset will be created.
28
+ # Format:
29
+ # `projects/{project_number}/locations/{location_id}/corpora/{corpus_id}`
30
+ # @!attribute [rw] asset
31
+ # @return [::Google::Cloud::VisionAI::V1::Asset]
32
+ # Required. The asset to create.
33
+ # @!attribute [rw] asset_id
34
+ # @return [::String]
35
+ # Optional. The ID to use for the asset, which will become the final
36
+ # component of the asset's resource name if user choose to specify.
37
+ # Otherwise, asset id will be generated by system.
38
+ #
39
+ # This value should be up to 63 characters, and valid characters
40
+ # are /[a-z][0-9]-/. The first character must be a letter, the last could be
41
+ # a letter or a number.
42
+ class CreateAssetRequest
43
+ include ::Google::Protobuf::MessageExts
44
+ extend ::Google::Protobuf::MessageExts::ClassMethods
45
+ end
46
+
47
+ # Request message for GetAsset.
48
+ # @!attribute [rw] name
49
+ # @return [::String]
50
+ # Required. The name of the asset to retrieve.
51
+ # Format:
52
+ # projects/\\{project_number}/locations/\\{location}/corpora/\\{corpus}/assets/\\{asset}
53
+ class GetAssetRequest
54
+ include ::Google::Protobuf::MessageExts
55
+ extend ::Google::Protobuf::MessageExts::ClassMethods
56
+ end
57
+
58
+ # Request message for ListAssets.
59
+ # @!attribute [rw] parent
60
+ # @return [::String]
61
+ # Required. The parent, which owns this collection of assets.
62
+ # Format:
63
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}`
64
+ # @!attribute [rw] page_size
65
+ # @return [::Integer]
66
+ # The maximum number of assets to return. The service may return fewer than
67
+ # this value.
68
+ # If unspecified, at most 50 assets will be returned.
69
+ # The maximum value is 1000; values above 1000 will be coerced to 1000.
70
+ # @!attribute [rw] page_token
71
+ # @return [::String]
72
+ # A page token, received from a previous `ListAssets` call.
73
+ # Provide this to retrieve the subsequent page.
74
+ #
75
+ # When paginating, all other parameters provided to `ListAssets` must match
76
+ # the call that provided the page token.
77
+ # @!attribute [rw] filter
78
+ # @return [::String]
79
+ # The filter applied to the returned list.
80
+ # Only the following filterings are supported:
81
+ # "assets_with_contents = true", which returns assets with contents uploaded;
82
+ # "assets_with_contents = false", which returns assets without contents.
83
+ class ListAssetsRequest
84
+ include ::Google::Protobuf::MessageExts
85
+ extend ::Google::Protobuf::MessageExts::ClassMethods
86
+ end
87
+
88
+ # Response message for ListAssets.
89
+ # @!attribute [rw] assets
90
+ # @return [::Array<::Google::Cloud::VisionAI::V1::Asset>]
91
+ # The assets from the specified corpus.
92
+ # @!attribute [rw] next_page_token
93
+ # @return [::String]
94
+ # A token, which can be sent as `page_token` to retrieve the next page.
95
+ # If this field is omitted, there are no subsequent pages.
96
+ class ListAssetsResponse
97
+ include ::Google::Protobuf::MessageExts
98
+ extend ::Google::Protobuf::MessageExts::ClassMethods
99
+ end
100
+
101
+ # Request message for UpdateAsset.
102
+ # @!attribute [rw] asset
103
+ # @return [::Google::Cloud::VisionAI::V1::Asset]
104
+ # Required. The asset to update.
105
+ #
106
+ # The asset's `name` field is used to identify the asset to be updated.
107
+ # Format:
108
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/assets/{asset}`
109
+ # @!attribute [rw] update_mask
110
+ # @return [::Google::Protobuf::FieldMask]
111
+ # The list of fields to be updated.
112
+ class UpdateAssetRequest
113
+ include ::Google::Protobuf::MessageExts
114
+ extend ::Google::Protobuf::MessageExts::ClassMethods
115
+ end
116
+
117
+ # Request message for DeleteAsset.
118
+ # @!attribute [rw] name
119
+ # @return [::String]
120
+ # Required. The name of the asset to delete.
121
+ # Format:
122
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/assets/{asset}`
123
+ class DeleteAssetRequest
124
+ include ::Google::Protobuf::MessageExts
125
+ extend ::Google::Protobuf::MessageExts::ClassMethods
126
+ end
127
+
128
+ # The source of the asset.
129
+ # @!attribute [rw] asset_gcs_source
130
+ # @return [::Google::Cloud::VisionAI::V1::AssetSource::AssetGcsSource]
131
+ # The source of the asset is from Cloud Storage.
132
+ # @!attribute [rw] asset_content_data
133
+ # @return [::Google::Cloud::VisionAI::V1::AssetSource::AssetContentData]
134
+ # The source of the asset is from content bytes.
135
+ class AssetSource
136
+ include ::Google::Protobuf::MessageExts
137
+ extend ::Google::Protobuf::MessageExts::ClassMethods
138
+
139
+ # The asset source is from Cloud Storage.
140
+ # @!attribute [rw] gcs_uri
141
+ # @return [::String]
142
+ # Cloud storage uri.
143
+ class AssetGcsSource
144
+ include ::Google::Protobuf::MessageExts
145
+ extend ::Google::Protobuf::MessageExts::ClassMethods
146
+ end
147
+
148
+ # The content of the asset.
149
+ # @!attribute [rw] asset_content_data
150
+ # @return [::String]
151
+ class AssetContentData
152
+ include ::Google::Protobuf::MessageExts
153
+ extend ::Google::Protobuf::MessageExts::ClassMethods
154
+ end
155
+ end
156
+
157
+ # Request message for UploadAsset.
158
+ # @!attribute [rw] name
159
+ # @return [::String]
160
+ # Required. The resource name of the asset to upload.
161
+ # Format:
162
+ # `projects/{project_number}/locations/{location_id}/corpora/{corpus_id}/assets/{asset_id}`
163
+ # @!attribute [rw] asset_source
164
+ # @return [::Google::Cloud::VisionAI::V1::AssetSource]
165
+ # The source of the asset.
166
+ class UploadAssetRequest
167
+ include ::Google::Protobuf::MessageExts
168
+ extend ::Google::Protobuf::MessageExts::ClassMethods
169
+ end
170
+
171
+ # Response message for UploadAsset.
172
+ class UploadAssetResponse
173
+ include ::Google::Protobuf::MessageExts
174
+ extend ::Google::Protobuf::MessageExts::ClassMethods
175
+ end
176
+
177
+ # Metadata for UploadAsset.
178
+ # @!attribute [rw] start_time
179
+ # @return [::Google::Protobuf::Timestamp]
180
+ # The start time of the operation.
181
+ # @!attribute [rw] update_time
182
+ # @return [::Google::Protobuf::Timestamp]
183
+ # The update time of the operation.
184
+ class UploadAssetMetadata
185
+ include ::Google::Protobuf::MessageExts
186
+ extend ::Google::Protobuf::MessageExts::ClassMethods
187
+ end
188
+
189
+ # Request message for GenerateRetrievalUrl API.
190
+ # @!attribute [rw] name
191
+ # @return [::String]
192
+ # Required. The resource name of the asset to request signed url for.
193
+ # Format:
194
+ # `projects/{project_number}/locations/{location_id}/corpora/{corpus_id}/assets/{asset_id}`
195
+ class GenerateRetrievalUrlRequest
196
+ include ::Google::Protobuf::MessageExts
197
+ extend ::Google::Protobuf::MessageExts::ClassMethods
198
+ end
199
+
200
+ # Response message for GenerateRetrievalUrl API.
201
+ # @!attribute [rw] signed_uri
202
+ # @return [::String]
203
+ # A signed url to download the content of the asset.
204
+ class GenerateRetrievalUrlResponse
205
+ include ::Google::Protobuf::MessageExts
206
+ extend ::Google::Protobuf::MessageExts::ClassMethods
207
+ end
208
+
209
+ # An asset is a resource in corpus. It represents a media object inside corpus,
210
+ # contains metadata and another resource annotation. Different feature could be
211
+ # applied to the asset to generate annotations. User could specified annotation
212
+ # related to the target asset.
213
+ # @!attribute [rw] name
214
+ # @return [::String]
215
+ # Resource name of the asset.
216
+ # Format:
217
+ # `projects/{project_number}/locations/{location_id}/corpora/{corpus_id}/assets/{asset_id}`
218
+ # @!attribute [rw] ttl
219
+ # @return [::Google::Protobuf::Duration]
220
+ # The duration for which all media assets, associated metadata, and search
221
+ # documents can exist. If not set, then it will using the default ttl in the
222
+ # parent corpus resource.
223
+ # @!attribute [r] asset_gcs_source
224
+ # @return [::Google::Cloud::VisionAI::V1::AssetSource::AssetGcsSource]
225
+ # Output only. The original cloud storage source uri that is associated with
226
+ # this asset.
227
+ class Asset
228
+ include ::Google::Protobuf::MessageExts
229
+ extend ::Google::Protobuf::MessageExts::ClassMethods
230
+ end
231
+
232
+ # Request message for AnalyzeAsset.
233
+ # @!attribute [rw] name
234
+ # @return [::String]
235
+ # Required. The resource name of the asset to analyze.
236
+ # Format:
237
+ # `projects/{project_number}/locations/{location_id}/corpora/{corpus_id}/assets/{asset_id}`
238
+ class AnalyzeAssetRequest
239
+ include ::Google::Protobuf::MessageExts
240
+ extend ::Google::Protobuf::MessageExts::ClassMethods
241
+ end
242
+
243
+ # Metadata for AnalyzeAsset.
244
+ # @!attribute [rw] analysis_status
245
+ # @return [::Array<::Google::Cloud::VisionAI::V1::AnalyzeAssetMetadata::AnalysisStatus>]
246
+ # The status of analysis on all search capabilities.
247
+ # @!attribute [rw] start_time
248
+ # @return [::Google::Protobuf::Timestamp]
249
+ # The start time of the operation.
250
+ # @!attribute [rw] update_time
251
+ # @return [::Google::Protobuf::Timestamp]
252
+ # The update time of the operation.
253
+ class AnalyzeAssetMetadata
254
+ include ::Google::Protobuf::MessageExts
255
+ extend ::Google::Protobuf::MessageExts::ClassMethods
256
+
257
+ # The status of analysis on each search capability.
258
+ # @!attribute [rw] state
259
+ # @return [::Google::Cloud::VisionAI::V1::AnalyzeAssetMetadata::AnalysisStatus::State]
260
+ # @!attribute [rw] status_message
261
+ # @return [::String]
262
+ # @!attribute [rw] search_capability
263
+ # @return [::Google::Cloud::VisionAI::V1::SearchCapability]
264
+ # The search capability requested.
265
+ class AnalysisStatus
266
+ include ::Google::Protobuf::MessageExts
267
+ extend ::Google::Protobuf::MessageExts::ClassMethods
268
+
269
+ # The state of the search capability.
270
+ module State
271
+ # The default process state should never happen.
272
+ STATE_UNSPECIFIED = 0
273
+
274
+ # The feature is in progress.
275
+ IN_PROGRESS = 1
276
+
277
+ # The process is successfully done.
278
+ SUCCEEDED = 2
279
+
280
+ # The process failed.
281
+ FAILED = 3
282
+ end
283
+ end
284
+ end
285
+
286
+ # Response message for AnalyzeAsset.
287
+ class AnalyzeAssetResponse
288
+ include ::Google::Protobuf::MessageExts
289
+ extend ::Google::Protobuf::MessageExts::ClassMethods
290
+ end
291
+
292
+ # The status of indexing for the asset.
293
+ # @!attribute [r] state
294
+ # @return [::Google::Cloud::VisionAI::V1::IndexingStatus::State]
295
+ # Output only. State of this asset's indexing.
296
+ # @!attribute [rw] status_message
297
+ # @return [::String]
298
+ # Detailed message describing the state.
299
+ class IndexingStatus
300
+ include ::Google::Protobuf::MessageExts
301
+ extend ::Google::Protobuf::MessageExts::ClassMethods
302
+
303
+ # State enum for this asset's indexing.
304
+ module State
305
+ # The default process state should never happen.
306
+ STATE_UNSPECIFIED = 0
307
+
308
+ # The indexing is in progress.
309
+ IN_PROGRESS = 1
310
+
311
+ # The process is successfully done.
312
+ SUCCEEDED = 2
313
+
314
+ # The process failed.
315
+ FAILED = 3
316
+ end
317
+ end
318
+
319
+ # Request message for IndexAsset.
320
+ # @!attribute [rw] name
321
+ # @return [::String]
322
+ # Required. The resource name of the asset to index.
323
+ # Format:
324
+ # `projects/{project_number}/locations/{location_id}/corpora/{corpus_id}/assets/{asset_id}`
325
+ # @!attribute [rw] index
326
+ # @return [::String]
327
+ # Optional. The name of the index.
328
+ # Format:
329
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/indexes/{index}`
330
+ class IndexAssetRequest
331
+ include ::Google::Protobuf::MessageExts
332
+ extend ::Google::Protobuf::MessageExts::ClassMethods
333
+ end
334
+
335
+ # Metadata for IndexAsset.
336
+ # @!attribute [rw] status
337
+ # @return [::Google::Cloud::VisionAI::V1::IndexingStatus]
338
+ # The status of indexing this asset.
339
+ # @!attribute [rw] start_time
340
+ # @return [::Google::Protobuf::Timestamp]
341
+ # The start time of the operation.
342
+ # @!attribute [rw] update_time
343
+ # @return [::Google::Protobuf::Timestamp]
344
+ # The update time of the operation.
345
+ class IndexAssetMetadata
346
+ include ::Google::Protobuf::MessageExts
347
+ extend ::Google::Protobuf::MessageExts::ClassMethods
348
+ end
349
+
350
+ # Response message for IndexAsset.
351
+ class IndexAssetResponse
352
+ include ::Google::Protobuf::MessageExts
353
+ extend ::Google::Protobuf::MessageExts::ClassMethods
354
+ end
355
+
356
+ # Request message for RemoveIndexAsset.
357
+ # @!attribute [rw] name
358
+ # @return [::String]
359
+ # Required. The resource name of the asset to index.
360
+ # Format:
361
+ # `projects/{project_number}/locations/{location_id}/corpora/{corpus_id}/assets/{asset_id}`
362
+ # @!attribute [rw] index
363
+ # @return [::String]
364
+ # Optional. The name of the index.
365
+ # Format:
366
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/indexes/{index}`
367
+ class RemoveIndexAssetRequest
368
+ include ::Google::Protobuf::MessageExts
369
+ extend ::Google::Protobuf::MessageExts::ClassMethods
370
+ end
371
+
372
+ # Metadata for RemoveIndexAsset.
373
+ # @!attribute [rw] indexing_status
374
+ # @return [::Google::Cloud::VisionAI::V1::IndexingStatus]
375
+ # The status of indexing this asset.
376
+ # @!attribute [rw] start_time
377
+ # @return [::Google::Protobuf::Timestamp]
378
+ # The start time of the operation.
379
+ # @!attribute [rw] update_time
380
+ # @return [::Google::Protobuf::Timestamp]
381
+ # The update time of the operation.
382
+ class RemoveIndexAssetMetadata
383
+ include ::Google::Protobuf::MessageExts
384
+ extend ::Google::Protobuf::MessageExts::ClassMethods
385
+ end
386
+
387
+ # Response message for RemoveIndexAsset.
388
+ class RemoveIndexAssetResponse
389
+ include ::Google::Protobuf::MessageExts
390
+ extend ::Google::Protobuf::MessageExts::ClassMethods
391
+ end
392
+
393
+ # An IndexedAsset is an asset that the index is built upon.
394
+ # @!attribute [rw] index
395
+ # @return [::String]
396
+ # Required. The index that this indexed asset belongs to.
397
+ # Format:
398
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/indexes/{index}`
399
+ # @!attribute [rw] asset
400
+ # @return [::String]
401
+ # Required. The resource name of the asset.
402
+ # Format:
403
+ # `projects/{project_number}/locations/{location_id}/corpora/{corpus_id}/assets/{asset_id}`
404
+ # @!attribute [r] create_time
405
+ # @return [::Google::Protobuf::Timestamp]
406
+ # Output only. The create timestamp.
407
+ # @!attribute [r] update_time
408
+ # @return [::Google::Protobuf::Timestamp]
409
+ # Output only. The update timestamp.
410
+ class IndexedAsset
411
+ include ::Google::Protobuf::MessageExts
412
+ extend ::Google::Protobuf::MessageExts::ClassMethods
413
+ end
414
+
415
+ # Request message for ViewIndexedAssets.
416
+ # @!attribute [rw] index
417
+ # @return [::String]
418
+ # Required. The index that owns this collection of assets.
419
+ # Format:
420
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/indexes/{index}`
421
+ # @!attribute [rw] page_size
422
+ # @return [::Integer]
423
+ # The maximum number of assets to return. The service may return fewer than
424
+ # this value.
425
+ # If unspecified, at most 50 assets will be returned.
426
+ # The maximum value is 1000; values above 1000 will be coerced to 1000.
427
+ # @!attribute [rw] page_token
428
+ # @return [::String]
429
+ # A page token, received from a previous `ViewIndexedAssets` call.
430
+ # Provide this to retrieve the subsequent page.
431
+ #
432
+ # When paginating, all other parameters provided to `ViewIndexedAssets` must
433
+ # match the call that provided the page token.
434
+ # @!attribute [rw] filter
435
+ # @return [::String]
436
+ # The filter applied to the returned list.
437
+ # Only the following filterings are supported:
438
+ # "asset_id = xxxx", which returns asset with specified id.
439
+ # "asset_id = xxxx, yyyy, zzzz", which returns assets with specified ids.
440
+ class ViewIndexedAssetsRequest
441
+ include ::Google::Protobuf::MessageExts
442
+ extend ::Google::Protobuf::MessageExts::ClassMethods
443
+ end
444
+
445
+ # Response message for ViewIndexedAssets.
446
+ # @!attribute [rw] indexed_assets
447
+ # @return [::Array<::Google::Cloud::VisionAI::V1::IndexedAsset>]
448
+ # The assets from the specified index.
449
+ # @!attribute [rw] next_page_token
450
+ # @return [::String]
451
+ # A token, which can be sent as `page_token` to retrieve the next page.
452
+ # If this field is omitted, there are no subsequent pages.
453
+ class ViewIndexedAssetsResponse
454
+ include ::Google::Protobuf::MessageExts
455
+ extend ::Google::Protobuf::MessageExts::ClassMethods
456
+ end
457
+
458
+ # Request message of CreateCorpus API.
459
+ # @!attribute [rw] parent
460
+ # @return [::String]
461
+ # Required. Form: `projects/{project_number}/locations/{location_id}`
462
+ # @!attribute [rw] corpus
463
+ # @return [::Google::Cloud::VisionAI::V1::Corpus]
464
+ # Required. The corpus to be created.
465
+ class CreateCorpusRequest
466
+ include ::Google::Protobuf::MessageExts
467
+ extend ::Google::Protobuf::MessageExts::ClassMethods
468
+ end
469
+
470
+ # Metadata for CreateCorpus API.
471
+ # @!attribute [rw] create_time
472
+ # @return [::Google::Protobuf::Timestamp]
473
+ # The create time of the create corpus operation.
474
+ # @!attribute [rw] update_time
475
+ # @return [::Google::Protobuf::Timestamp]
476
+ # The update time of the create corpus operation.
477
+ class CreateCorpusMetadata
478
+ include ::Google::Protobuf::MessageExts
479
+ extend ::Google::Protobuf::MessageExts::ClassMethods
480
+ end
481
+
482
+ # The capability and metadata of search capability.
483
+ # @!attribute [rw] type
484
+ # @return [::Google::Cloud::VisionAI::V1::SearchCapability::Type]
485
+ # The search capability to enable.
486
+ class SearchCapability
487
+ include ::Google::Protobuf::MessageExts
488
+ extend ::Google::Protobuf::MessageExts::ClassMethods
489
+
490
+ # Capability to perform different search on assets.
491
+ module Type
492
+ # Unspecified search capability, should never be used.
493
+ TYPE_UNSPECIFIED = 0
494
+
495
+ # Embedding search.
496
+ EMBEDDING_SEARCH = 1
497
+ end
498
+ end
499
+
500
+ # Setting for search capability to enable.
501
+ # @!attribute [rw] search_capabilities
502
+ # @return [::Array<::Google::Cloud::VisionAI::V1::SearchCapability>]
503
+ # The metadata of search capability to enable.
504
+ class SearchCapabilitySetting
505
+ include ::Google::Protobuf::MessageExts
506
+ extend ::Google::Protobuf::MessageExts::ClassMethods
507
+ end
508
+
509
+ # Metadata message for CreateCollectionRequest
510
+ # @!attribute [rw] operation_metadata
511
+ # @return [::Google::Cloud::VisionAI::V1::OperationMetadata]
512
+ # Common metadata of the long-running operation.
513
+ class CreateCollectionMetadata
514
+ include ::Google::Protobuf::MessageExts
515
+ extend ::Google::Protobuf::MessageExts::ClassMethods
516
+ end
517
+
518
+ # Request message for CreateCollection.
519
+ # @!attribute [rw] parent
520
+ # @return [::String]
521
+ # Required. The parent resource where this collection will be created.
522
+ # Format: `projects/{project_number}/locations/{location}/corpora/{corpus}`
523
+ # @!attribute [rw] collection
524
+ # @return [::Google::Cloud::VisionAI::V1::Collection]
525
+ # Required. The collection resource to be created.
526
+ # @!attribute [rw] collection_id
527
+ # @return [::String]
528
+ # Optional. The ID to use for the collection, which will become the final
529
+ # component of the resource name if user choose to specify. Otherwise,
530
+ # collection id will be generated by system.
531
+ #
532
+ # This value should be up to 55 characters, and valid characters
533
+ # are /[a-z][0-9]-/. The first character must be a letter, the last could be
534
+ # a letter or a number.
535
+ class CreateCollectionRequest
536
+ include ::Google::Protobuf::MessageExts
537
+ extend ::Google::Protobuf::MessageExts::ClassMethods
538
+ end
539
+
540
+ # Metadata message for DeleteCollectionRequest
541
+ # @!attribute [rw] operation_metadata
542
+ # @return [::Google::Cloud::VisionAI::V1::OperationMetadata]
543
+ # Common metadata of the long-running operation.
544
+ class DeleteCollectionMetadata
545
+ include ::Google::Protobuf::MessageExts
546
+ extend ::Google::Protobuf::MessageExts::ClassMethods
547
+ end
548
+
549
+ # Request message for DeleteCollectionRequest.
550
+ # @!attribute [rw] name
551
+ # @return [::String]
552
+ # Required. The name of the collection to delete. Format:
553
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/collections/{collection}`
554
+ class DeleteCollectionRequest
555
+ include ::Google::Protobuf::MessageExts
556
+ extend ::Google::Protobuf::MessageExts::ClassMethods
557
+ end
558
+
559
+ # Request message for GetCollectionRequest.
560
+ # @!attribute [rw] name
561
+ # @return [::String]
562
+ # Required. The name of the collection to retrieve. Format:
563
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/collections/{collection}`
564
+ class GetCollectionRequest
565
+ include ::Google::Protobuf::MessageExts
566
+ extend ::Google::Protobuf::MessageExts::ClassMethods
567
+ end
568
+
569
+ # Request message for UpdateCollectionRequest.
570
+ # @!attribute [rw] collection
571
+ # @return [::Google::Cloud::VisionAI::V1::Collection]
572
+ # Required. The collection to update.
573
+ #
574
+ # The collection's `name` field is used to identify the collection to be
575
+ # updated. Format:
576
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/collections/{collection}`
577
+ # @!attribute [rw] update_mask
578
+ # @return [::Google::Protobuf::FieldMask]
579
+ # The list of fields to be updated.
580
+ # - Unset `update_mask` or set `update_mask` to be a single "*" only will
581
+ # update all updatable fields with the value provided in `collection`.
582
+ # - To update `display_name` value to empty string, set it in the
583
+ # `collection`
584
+ # to empty string, and set `update_mask` with "display_name". Same applies
585
+ # to other updatable string fields in the `collection`.
586
+ class UpdateCollectionRequest
587
+ include ::Google::Protobuf::MessageExts
588
+ extend ::Google::Protobuf::MessageExts::ClassMethods
589
+ end
590
+
591
+ # Request message for ListCollections.
592
+ # @!attribute [rw] parent
593
+ # @return [::String]
594
+ # Required. The parent corpus. Format:
595
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}`
596
+ # @!attribute [rw] page_size
597
+ # @return [::Integer]
598
+ # The maximum number of collections to return. The service may return fewer
599
+ # than this value. If unspecified, at most 50 collections will be returned.
600
+ # The maximum value is 1000; values above 1000 will be coerced to 1000.
601
+ # @!attribute [rw] page_token
602
+ # @return [::String]
603
+ # A page token, received from a previous `ListCollectionsRequest` call.
604
+ # Provide this to retrieve the subsequent page.
605
+ #
606
+ # When paginating, all other parameters provided to `ListCollectionsRequest`
607
+ # must match the call that provided the page token.
608
+ class ListCollectionsRequest
609
+ include ::Google::Protobuf::MessageExts
610
+ extend ::Google::Protobuf::MessageExts::ClassMethods
611
+ end
612
+
613
+ # Response message for ListCollections.
614
+ # @!attribute [rw] collections
615
+ # @return [::Array<::Google::Cloud::VisionAI::V1::Collection>]
616
+ # The collections from the specified corpus.
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 ListCollectionsResponse
622
+ include ::Google::Protobuf::MessageExts
623
+ extend ::Google::Protobuf::MessageExts::ClassMethods
624
+ end
625
+
626
+ # Request message for AddCollectionItem.
627
+ # @!attribute [rw] item
628
+ # @return [::Google::Cloud::VisionAI::V1::CollectionItem]
629
+ # Required. The item to be added.
630
+ class AddCollectionItemRequest
631
+ include ::Google::Protobuf::MessageExts
632
+ extend ::Google::Protobuf::MessageExts::ClassMethods
633
+ end
634
+
635
+ # Response message for AddCollectionItem.
636
+ # @!attribute [rw] item
637
+ # @return [::Google::Cloud::VisionAI::V1::CollectionItem]
638
+ # The item that has already been added.
639
+ class AddCollectionItemResponse
640
+ include ::Google::Protobuf::MessageExts
641
+ extend ::Google::Protobuf::MessageExts::ClassMethods
642
+ end
643
+
644
+ # Request message for RemoveCollectionItem.
645
+ # @!attribute [rw] item
646
+ # @return [::Google::Cloud::VisionAI::V1::CollectionItem]
647
+ # Required. The item to be removed.
648
+ class RemoveCollectionItemRequest
649
+ include ::Google::Protobuf::MessageExts
650
+ extend ::Google::Protobuf::MessageExts::ClassMethods
651
+ end
652
+
653
+ # Request message for RemoveCollectionItem.
654
+ # @!attribute [rw] item
655
+ # @return [::Google::Cloud::VisionAI::V1::CollectionItem]
656
+ # The item that has already been removed.
657
+ class RemoveCollectionItemResponse
658
+ include ::Google::Protobuf::MessageExts
659
+ extend ::Google::Protobuf::MessageExts::ClassMethods
660
+ end
661
+
662
+ # Request message for ViewCollectionItems.
663
+ # @!attribute [rw] collection
664
+ # @return [::String]
665
+ # Required. The collection to view. Format:
666
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/collections/{collection}`
667
+ # @!attribute [rw] page_size
668
+ # @return [::Integer]
669
+ # The maximum number of collections to return. The service may return fewer
670
+ # than this value. If unspecified, at most 50 collections will be returned.
671
+ # The maximum value is 1000; values above 1000 will be coerced to 1000.
672
+ # @!attribute [rw] page_token
673
+ # @return [::String]
674
+ # A page token, received from a previous `ViewCollectionItemsRequest` call.
675
+ # Provide this to retrieve the subsequent page.
676
+ #
677
+ # When paginating, all other parameters provided to
678
+ # `ViewCollectionItemsRequest` must match the call that provided the page
679
+ # token.
680
+ class ViewCollectionItemsRequest
681
+ include ::Google::Protobuf::MessageExts
682
+ extend ::Google::Protobuf::MessageExts::ClassMethods
683
+ end
684
+
685
+ # Response message for ViewCollectionItems.
686
+ # @!attribute [rw] items
687
+ # @return [::Array<::Google::Cloud::VisionAI::V1::CollectionItem>]
688
+ # The items from the specified collection.
689
+ # @!attribute [rw] next_page_token
690
+ # @return [::String]
691
+ # A token, which can be sent as `page_token` to retrieve the next page.
692
+ # If this field is omitted, there are no subsequent pages.
693
+ class ViewCollectionItemsResponse
694
+ include ::Google::Protobuf::MessageExts
695
+ extend ::Google::Protobuf::MessageExts::ClassMethods
696
+ end
697
+
698
+ # A collection is a resource in a corpus. It serves as a container of
699
+ # references to original resources.
700
+ # @!attribute [r] name
701
+ # @return [::String]
702
+ # Output only. Resource name of the collection. Format:
703
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/collections/{collection}`
704
+ # @!attribute [rw] display_name
705
+ # @return [::String]
706
+ # Optional. The collection name for displaying.
707
+ # The name can be up to 256 characters long.
708
+ # @!attribute [rw] description
709
+ # @return [::String]
710
+ # Optional. Description of the collection. Can be up to 25000 characters
711
+ # long.
712
+ class Collection
713
+ include ::Google::Protobuf::MessageExts
714
+ extend ::Google::Protobuf::MessageExts::ClassMethods
715
+ end
716
+
717
+ # A CollectionItem is an item in a collection.
718
+ # Each item is a reference to the original resource in a collection.
719
+ # @!attribute [rw] collection
720
+ # @return [::String]
721
+ # Required. The collection name that this item belongs to. Format:
722
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/collections/{collection}`
723
+ # @!attribute [rw] type
724
+ # @return [::Google::Cloud::VisionAI::V1::CollectionItem::Type]
725
+ # Required. The type of item.
726
+ # @!attribute [rw] item_resource
727
+ # @return [::String]
728
+ # Required. The name of the CollectionItem. Its format depends on the `type`
729
+ # above. For ASSET:
730
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/assets/{asset}`
731
+ class CollectionItem
732
+ include ::Google::Protobuf::MessageExts
733
+ extend ::Google::Protobuf::MessageExts::ClassMethods
734
+
735
+ # CollectionItem types.
736
+ module Type
737
+ # The default type of item should never happen.
738
+ TYPE_UNSPECIFIED = 0
739
+
740
+ # Asset type item.
741
+ ASSET = 1
742
+ end
743
+ end
744
+
745
+ # Message for creating an Index.
746
+ # @!attribute [rw] parent
747
+ # @return [::String]
748
+ # Required. Value for the parent. The resource name of the Corpus under which
749
+ # this index is created. Format:
750
+ # `projects/{project_number}/locations/{location_id}/corpora/{corpus_id}`
751
+ # @!attribute [rw] index_id
752
+ # @return [::String]
753
+ # Optional. The ID for the index. This will become the final resource name
754
+ # for the index. If the user does not specify this value, it will be
755
+ # generated by system.
756
+ #
757
+ # This value should be up to 63 characters, and valid characters
758
+ # are /[a-z][0-9]-/. The first character must be a letter, the last could be
759
+ # a letter or a number.
760
+ # @!attribute [rw] index
761
+ # @return [::Google::Cloud::VisionAI::V1::Index]
762
+ # Required. The index being created.
763
+ class CreateIndexRequest
764
+ include ::Google::Protobuf::MessageExts
765
+ extend ::Google::Protobuf::MessageExts::ClassMethods
766
+ end
767
+
768
+ # Metadata message for CreateIndexRequest
769
+ # @!attribute [rw] operation_metadata
770
+ # @return [::Google::Cloud::VisionAI::V1::OperationMetadata]
771
+ # Common metadata of the long-running operation.
772
+ class CreateIndexMetadata
773
+ include ::Google::Protobuf::MessageExts
774
+ extend ::Google::Protobuf::MessageExts::ClassMethods
775
+ end
776
+
777
+ # Request message for UpdateIndex.
778
+ # @!attribute [rw] index
779
+ # @return [::Google::Cloud::VisionAI::V1::Index]
780
+ # Required. The resource being updated.
781
+ # @!attribute [rw] update_mask
782
+ # @return [::Google::Protobuf::FieldMask]
783
+ # Required. Field mask is used to specify the fields to be overwritten in the
784
+ # Index resource by the update. The fields specified in the update_mask are
785
+ # relative to the resource, not the full request. A field of the resource
786
+ # will be overwritten if it is in the mask. Empty field mask is not allowed.
787
+ # If the mask is "*", it triggers a full update of the index, and also a
788
+ # whole rebuild of index data.
789
+ class UpdateIndexRequest
790
+ include ::Google::Protobuf::MessageExts
791
+ extend ::Google::Protobuf::MessageExts::ClassMethods
792
+ end
793
+
794
+ # Metadata message for UpdateIndexRequest
795
+ # @!attribute [rw] operation_metadata
796
+ # @return [::Google::Cloud::VisionAI::V1::OperationMetadata]
797
+ # Common metadata of the long-running operation.
798
+ class UpdateIndexMetadata
799
+ include ::Google::Protobuf::MessageExts
800
+ extend ::Google::Protobuf::MessageExts::ClassMethods
801
+ end
802
+
803
+ # Request message for getting an Index.
804
+ # @!attribute [rw] name
805
+ # @return [::String]
806
+ # Required. Name of the Index resource.
807
+ # Format:
808
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/indexes/{index}`
809
+ class GetIndexRequest
810
+ include ::Google::Protobuf::MessageExts
811
+ extend ::Google::Protobuf::MessageExts::ClassMethods
812
+ end
813
+
814
+ # Request message for listing Indexes.
815
+ # @!attribute [rw] parent
816
+ # @return [::String]
817
+ # Required. The parent corpus that owns this collection of indexes.
818
+ # Format:
819
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}`
820
+ # @!attribute [rw] page_size
821
+ # @return [::Integer]
822
+ # The maximum number of indexes to return. The service may return fewer than
823
+ # this value.
824
+ # If unspecified, at most 50 indexes will be returned.
825
+ # The maximum value is 1000; values above 1000 will be coerced to 1000.
826
+ # @!attribute [rw] page_token
827
+ # @return [::String]
828
+ # A page token, received from a previous `ListIndexes` call.
829
+ # Provide this to retrieve the subsequent page.
830
+ #
831
+ # When paginating, all other parameters provided to `ListIndexes` must match
832
+ # the call that provided the page token.
833
+ class ListIndexesRequest
834
+ include ::Google::Protobuf::MessageExts
835
+ extend ::Google::Protobuf::MessageExts::ClassMethods
836
+ end
837
+
838
+ # Response message for ListIndexes.
839
+ # @!attribute [rw] indexes
840
+ # @return [::Array<::Google::Cloud::VisionAI::V1::Index>]
841
+ # The indexes under the specified corpus.
842
+ # @!attribute [rw] next_page_token
843
+ # @return [::String]
844
+ # A token, which can be sent as `page_token` to retrieve the next page.
845
+ # If this field is omitted, there are no subsequent pages.
846
+ class ListIndexesResponse
847
+ include ::Google::Protobuf::MessageExts
848
+ extend ::Google::Protobuf::MessageExts::ClassMethods
849
+ end
850
+
851
+ # Request message for DeleteIndex.
852
+ # @!attribute [rw] name
853
+ # @return [::String]
854
+ # Required. The name of the index to delete.
855
+ # Format:
856
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/indexes/{index}`
857
+ class DeleteIndexRequest
858
+ include ::Google::Protobuf::MessageExts
859
+ extend ::Google::Protobuf::MessageExts::ClassMethods
860
+ end
861
+
862
+ # Metadata message for DeleteIndexRequest
863
+ class DeleteIndexMetadata
864
+ include ::Google::Protobuf::MessageExts
865
+ extend ::Google::Protobuf::MessageExts::ClassMethods
866
+ end
867
+
868
+ # An Index is a resource in Corpus. It contains an indexed version of the
869
+ # assets and annotations. When deployed to an endpoint, it will allow users to
870
+ # search the Index.
871
+ # @!attribute [rw] entire_corpus
872
+ # @return [::Boolean]
873
+ # Include all assets under the corpus.
874
+ # @!attribute [r] name
875
+ # @return [::String]
876
+ # Output only. Resource name of the Index resource.
877
+ # Format:
878
+ # `projects/{project_number}/locations/{location_id}/corpora/{corpus_id}/indexes/{index_id}`
879
+ # @!attribute [rw] display_name
880
+ # @return [::String]
881
+ # Optional. Optional user-specified display name of the index.
882
+ # @!attribute [rw] description
883
+ # @return [::String]
884
+ # Optional. Optional description of the index.
885
+ # @!attribute [r] state
886
+ # @return [::Google::Cloud::VisionAI::V1::Index::State]
887
+ # Output only. State of the index.
888
+ # @!attribute [r] create_time
889
+ # @return [::Google::Protobuf::Timestamp]
890
+ # Output only. The create timestamp.
891
+ # @!attribute [r] update_time
892
+ # @return [::Google::Protobuf::Timestamp]
893
+ # Output only. The update timestamp.
894
+ # @!attribute [r] deployed_indexes
895
+ # @return [::Array<::Google::Cloud::VisionAI::V1::DeployedIndexReference>]
896
+ # Output only. References to the deployed index instance.
897
+ # Index of VIDEO_ON_DEMAND corpus can have at most one deployed index.
898
+ # Index of IMAGE corpus can have multiple deployed indexes.
899
+ class Index
900
+ include ::Google::Protobuf::MessageExts
901
+ extend ::Google::Protobuf::MessageExts::ClassMethods
902
+
903
+ # Enum representing the different states through which an Index might cycle
904
+ # during its lifetime.
905
+ module State
906
+ # The default value. Should not be used.
907
+ STATE_UNSPECIFIED = 0
908
+
909
+ # State CREATING.
910
+ CREATING = 1
911
+
912
+ # State CREATED.
913
+ CREATED = 2
914
+
915
+ # State UPDATING.
916
+ UPDATING = 3
917
+ end
918
+ end
919
+
920
+ # Points to a DeployedIndex.
921
+ # @!attribute [rw] index_endpoint
922
+ # @return [::String]
923
+ # Immutable. A resource name of the IndexEndpoint.
924
+ class DeployedIndexReference
925
+ include ::Google::Protobuf::MessageExts
926
+ extend ::Google::Protobuf::MessageExts::ClassMethods
927
+ end
928
+
929
+ # Corpus is a set of media contents for management.
930
+ # Within a corpus, media shares the same data schema. Search is also restricted
931
+ # within a single corpus.
932
+ # @!attribute [rw] name
933
+ # @return [::String]
934
+ # Resource name of the corpus.
935
+ # Format:
936
+ # `projects/{project_number}/locations/{location_id}/corpora/{corpus_id}`
937
+ # @!attribute [rw] display_name
938
+ # @return [::String]
939
+ # Required. The corpus name to shown in the UI. The name can be up to 32
940
+ # characters long.
941
+ # @!attribute [rw] description
942
+ # @return [::String]
943
+ # Optional. Description of the corpus. Can be up to 25000 characters long.
944
+ # @!attribute [rw] default_ttl
945
+ # @return [::Google::Protobuf::Duration]
946
+ # Optional. The default TTL value for all assets under the corpus without a
947
+ # asset level user-defined TTL. For STREAM_VIDEO type corpora, this is
948
+ # required and the maximum allowed
949
+ # default_ttl is 10 years.
950
+ # @!attribute [rw] type
951
+ # @return [::Google::Cloud::VisionAI::V1::Corpus::Type]
952
+ # Optional. Type of the asset inside corpus.
953
+ # @!attribute [rw] search_capability_setting
954
+ # @return [::Google::Cloud::VisionAI::V1::SearchCapabilitySetting]
955
+ # Default search capability setting on corpus level.
956
+ class Corpus
957
+ include ::Google::Protobuf::MessageExts
958
+ extend ::Google::Protobuf::MessageExts::ClassMethods
959
+
960
+ # Type of the asset inside the corpus.
961
+ module Type
962
+ # The default type, not supposed to be used. If this default type is used,
963
+ # the corpus will be created as STREAM_VIDEO corpus.
964
+ TYPE_UNSPECIFIED = 0
965
+
966
+ # Asset is a live streaming video.
967
+ STREAM_VIDEO = 1
968
+
969
+ # Asset is an image.
970
+ IMAGE = 2
971
+
972
+ # Asset is a batch video.
973
+ VIDEO_ON_DEMAND = 3
974
+ end
975
+ end
976
+
977
+ # Request message for GetCorpus.
978
+ # @!attribute [rw] name
979
+ # @return [::String]
980
+ # Required. The resource name of the corpus to retrieve.
981
+ class GetCorpusRequest
982
+ include ::Google::Protobuf::MessageExts
983
+ extend ::Google::Protobuf::MessageExts::ClassMethods
984
+ end
985
+
986
+ # Request message for UpdateCorpus.
987
+ # @!attribute [rw] corpus
988
+ # @return [::Google::Cloud::VisionAI::V1::Corpus]
989
+ # Required. The corpus which replaces the resource on the server.
990
+ # @!attribute [rw] update_mask
991
+ # @return [::Google::Protobuf::FieldMask]
992
+ # The list of fields to be updated.
993
+ class UpdateCorpusRequest
994
+ include ::Google::Protobuf::MessageExts
995
+ extend ::Google::Protobuf::MessageExts::ClassMethods
996
+ end
997
+
998
+ # Request message for ListCorpora.
999
+ # @!attribute [rw] parent
1000
+ # @return [::String]
1001
+ # Required. The resource name of the project from which to list corpora.
1002
+ # @!attribute [rw] page_size
1003
+ # @return [::Integer]
1004
+ # Requested page size. API may return fewer results than requested.
1005
+ # If negative, INVALID_ARGUMENT error will be returned.
1006
+ # If unspecified or 0, API will pick a default size, which is 10.
1007
+ # If the requested page size is larger than the maximum size, API will pick
1008
+ # use the maximum size, which is 20.
1009
+ # @!attribute [rw] page_token
1010
+ # @return [::String]
1011
+ # A token identifying a page of results for the server to return.
1012
+ # Typically obtained via
1013
+ # {::Google::Cloud::VisionAI::V1::ListCorporaResponse#next_page_token ListCorporaResponse.next_page_token}
1014
+ # of the previous
1015
+ # {::Google::Cloud::VisionAI::V1::Warehouse::Client#list_corpora Warehouse.ListCorpora}
1016
+ # call.
1017
+ # @!attribute [rw] filter
1018
+ # @return [::String]
1019
+ # The filter applied to the returned corpora list.
1020
+ # Only the following restrictions are supported:
1021
+ # `type=<Corpus.Type>`,
1022
+ # `type!=<Corpus.Type>`.
1023
+ class ListCorporaRequest
1024
+ include ::Google::Protobuf::MessageExts
1025
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1026
+ end
1027
+
1028
+ # Response message for ListCorpora.
1029
+ # @!attribute [rw] corpora
1030
+ # @return [::Array<::Google::Cloud::VisionAI::V1::Corpus>]
1031
+ # The corpora in the project.
1032
+ # @!attribute [rw] next_page_token
1033
+ # @return [::String]
1034
+ # A token to retrieve next page of results.
1035
+ # Pass to
1036
+ # {::Google::Cloud::VisionAI::V1::ListCorporaRequest#page_token ListCorporaRequest.page_token}
1037
+ # to obtain that page.
1038
+ class ListCorporaResponse
1039
+ include ::Google::Protobuf::MessageExts
1040
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1041
+ end
1042
+
1043
+ # Request message for DeleteCorpus.
1044
+ # @!attribute [rw] name
1045
+ # @return [::String]
1046
+ # Required. The resource name of the corpus to delete.
1047
+ class DeleteCorpusRequest
1048
+ include ::Google::Protobuf::MessageExts
1049
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1050
+ end
1051
+
1052
+ # Request message for AnalyzeCorpus.
1053
+ # @!attribute [rw] name
1054
+ # @return [::String]
1055
+ # Required. The parent corpus resource where the assets will be analyzed.
1056
+ # Format:
1057
+ # `projects/{project_number}/locations/{location_id}/corpora/{corpus_id}`
1058
+ class AnalyzeCorpusRequest
1059
+ include ::Google::Protobuf::MessageExts
1060
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1061
+ end
1062
+
1063
+ # The metadata message for AnalyzeCorpus LRO.
1064
+ # @!attribute [rw] metadata
1065
+ # @return [::Google::Cloud::VisionAI::V1::OperationMetadata]
1066
+ # The metadata of the operation.
1067
+ class AnalyzeCorpusMetadata
1068
+ include ::Google::Protobuf::MessageExts
1069
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1070
+ end
1071
+
1072
+ # The response message for AnalyzeCorpus LRO.
1073
+ class AnalyzeCorpusResponse
1074
+ include ::Google::Protobuf::MessageExts
1075
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1076
+ end
1077
+
1078
+ # Request message for CreateDataSchema.
1079
+ # @!attribute [rw] parent
1080
+ # @return [::String]
1081
+ # Required. The parent resource where this data schema will be created.
1082
+ # Format:
1083
+ # `projects/{project_number}/locations/{location_id}/corpora/{corpus_id}`
1084
+ # @!attribute [rw] data_schema
1085
+ # @return [::Google::Cloud::VisionAI::V1::DataSchema]
1086
+ # Required. The data schema to create.
1087
+ class CreateDataSchemaRequest
1088
+ include ::Google::Protobuf::MessageExts
1089
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1090
+ end
1091
+
1092
+ # Data schema indicates how the user specified annotation is interpreted in the
1093
+ # system.
1094
+ # @!attribute [rw] name
1095
+ # @return [::String]
1096
+ # Resource name of the data schema in the form of:
1097
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/dataSchemas/{data_schema}`
1098
+ # where \\{data_schema} part should be the same as the `key` field below.
1099
+ # @!attribute [rw] key
1100
+ # @return [::String]
1101
+ # Required. The key of this data schema. This key should be matching the key
1102
+ # of user specified annotation and unique inside corpus. This value can be up
1103
+ # to 63 characters, and valid characters are /[a-z][0-9]-/. The first
1104
+ # character must be a letter, the last could be a letter or a number.
1105
+ # @!attribute [rw] schema_details
1106
+ # @return [::Google::Cloud::VisionAI::V1::DataSchemaDetails]
1107
+ # The schema details mapping to the key.
1108
+ class DataSchema
1109
+ include ::Google::Protobuf::MessageExts
1110
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1111
+ end
1112
+
1113
+ # Data schema details indicates the data type and the data struct corresponding
1114
+ # to the key of user specified annotation.
1115
+ # @!attribute [rw] type
1116
+ # @return [::Google::Cloud::VisionAI::V1::DataSchemaDetails::DataType]
1117
+ # Type of the annotation.
1118
+ # @!attribute [rw] proto_any_config
1119
+ # @return [::Google::Cloud::VisionAI::V1::DataSchemaDetails::ProtoAnyConfig]
1120
+ # Config for protobuf any type.
1121
+ # @!attribute [rw] list_config
1122
+ # @return [::Google::Cloud::VisionAI::V1::DataSchemaDetails::ListConfig]
1123
+ # Config for List data type.
1124
+ # @!attribute [rw] customized_struct_config
1125
+ # @return [::Google::Cloud::VisionAI::V1::DataSchemaDetails::CustomizedStructConfig]
1126
+ # Config for CustomizedStruct data type.
1127
+ # @!attribute [rw] granularity
1128
+ # @return [::Google::Cloud::VisionAI::V1::DataSchemaDetails::Granularity]
1129
+ # The granularity associated with this DataSchema.
1130
+ # @!attribute [rw] search_strategy
1131
+ # @return [::Google::Cloud::VisionAI::V1::DataSchemaDetails::SearchStrategy]
1132
+ # The search strategy to be applied on the `key` above.
1133
+ class DataSchemaDetails
1134
+ include ::Google::Protobuf::MessageExts
1135
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1136
+
1137
+ # The configuration for `PROTO_ANY` data type.
1138
+ # @!attribute [rw] type_uri
1139
+ # @return [::String]
1140
+ # The type URI of the proto message.
1141
+ class ProtoAnyConfig
1142
+ include ::Google::Protobuf::MessageExts
1143
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1144
+ end
1145
+
1146
+ # The configuration for `LIST` data type.
1147
+ # @!attribute [rw] value_schema
1148
+ # @return [::Google::Cloud::VisionAI::V1::DataSchemaDetails]
1149
+ # The value's data schema in the list.
1150
+ class ListConfig
1151
+ include ::Google::Protobuf::MessageExts
1152
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1153
+ end
1154
+
1155
+ # The configuration for `CUSTOMIZED_STRUCT` data type.
1156
+ # @!attribute [rw] field_schemas
1157
+ # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::VisionAI::V1::DataSchemaDetails}]
1158
+ # Direct child elements data schemas.
1159
+ class CustomizedStructConfig
1160
+ include ::Google::Protobuf::MessageExts
1161
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1162
+
1163
+ # @!attribute [rw] key
1164
+ # @return [::String]
1165
+ # @!attribute [rw] value
1166
+ # @return [::Google::Cloud::VisionAI::V1::DataSchemaDetails]
1167
+ class FieldSchemasEntry
1168
+ include ::Google::Protobuf::MessageExts
1169
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1170
+ end
1171
+ end
1172
+
1173
+ # The search strategy for annotations value of the `key`.
1174
+ # @!attribute [rw] search_strategy_type
1175
+ # @return [::Google::Cloud::VisionAI::V1::DataSchemaDetails::SearchStrategy::SearchStrategyType]
1176
+ # The type of search strategy to be applied on the `key` above.
1177
+ # The allowed `search_strategy_type` is different for different data types,
1178
+ # which is documented in the DataSchemaDetails.DataType. Specifying
1179
+ # unsupported `search_strategy_type` for data types will result in
1180
+ # INVALID_ARGUMENT error.
1181
+ # @!attribute [rw] confidence_score_index_config
1182
+ # @return [::Google::Cloud::VisionAI::V1::DataSchemaDetails::SearchStrategy::ConfidenceScoreIndexConfig]
1183
+ # Optional. Configs the path to the confidence score, and the threshold.
1184
+ # Only if the score is greater than the threshold, current field will be
1185
+ # built into the index. Only applies to leaf nodes using EXACT_SEARCH or
1186
+ # SMART_SEARCH.
1187
+ class SearchStrategy
1188
+ include ::Google::Protobuf::MessageExts
1189
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1190
+
1191
+ # Filter on the confidence score. Only adds to index if the confidence
1192
+ # score is higher than the threshold.
1193
+ # Example data schema:
1194
+ # key: "name-confidence-pair"
1195
+ # type: CUSTOMIZED_STRUCT
1196
+ # granularity: GRANULARITY_PARTITION_LEVEL
1197
+ # customized_struct_config {
1198
+ # field_schemas {
1199
+ # key: "name"
1200
+ # type: STRING
1201
+ # granularity: GRANULARITY_PARTITION_LEVEL
1202
+ # search_strategy {
1203
+ # search_strategy_type: SMART_SEARCH
1204
+ # confidence_score_index_config {
1205
+ # field_path: "name-confidence-pair.score"
1206
+ # threshold: 0.6
1207
+ # }
1208
+ # }
1209
+ # }
1210
+ # field_schemas {
1211
+ # key: "score"
1212
+ # type: FLOAT
1213
+ # granularity: GRANULARITY_PARTITION_LEVEL
1214
+ # }
1215
+ # }
1216
+ # This means only "name" with score > 0.6 will be indexed.
1217
+ # @!attribute [rw] field_path
1218
+ # @return [::String]
1219
+ # Required. The path to the confidence score field. It is a string that
1220
+ # concatenates all the data schema keys along the path. See the example
1221
+ # above. If the data schema contains LIST, use '_ENTRIES' to concatenate.
1222
+ # Example data schema contains a list:
1223
+ # "key": "list-name-score",
1224
+ # "schemaDetails": {
1225
+ # "type": "LIST",
1226
+ # "granularity": "GRANULARITY_PARTITION_LEVEL",
1227
+ # "listConfig": {
1228
+ # "valueSchema": {
1229
+ # "type": "CUSTOMIZED_STRUCT",
1230
+ # "granularity": "GRANULARITY_PARTITION_LEVEL",
1231
+ # "customizedStructConfig": {
1232
+ # "fieldSchemas": {
1233
+ # "name": {
1234
+ # "type": "STRING",
1235
+ # "granularity": "GRANULARITY_PARTITION_LEVEL",
1236
+ # "searchStrategy": {
1237
+ # "searchStrategyType": "SMART_SEARCH"
1238
+ # "confidence_score_index_config": {
1239
+ # "field_path": "list-name-score._ENTRIES.score",
1240
+ # "threshold": "0.9",
1241
+ # }
1242
+ # }
1243
+ # },
1244
+ # "score": {
1245
+ # "type": "FLOAT",
1246
+ # "granularity": "GRANULARITY_PARTITION_LEVEL",
1247
+ # }
1248
+ # }
1249
+ # }
1250
+ # }
1251
+ # }
1252
+ # }
1253
+ # @!attribute [rw] threshold
1254
+ # @return [::Float]
1255
+ # Required. The threshold.
1256
+ class ConfidenceScoreIndexConfig
1257
+ include ::Google::Protobuf::MessageExts
1258
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1259
+ end
1260
+
1261
+ # The types of search strategies to be applied on the annotation key.
1262
+ module SearchStrategyType
1263
+ # Annotatation values of the `key` above will not be searchable.
1264
+ NO_SEARCH = 0
1265
+
1266
+ # When searching with `key`, the value must be exactly as the annotation
1267
+ # value that has been ingested.
1268
+ EXACT_SEARCH = 1
1269
+
1270
+ # When searching with `key`, Warehouse will perform broad search based on
1271
+ # semantic of the annotation value.
1272
+ SMART_SEARCH = 2
1273
+ end
1274
+ end
1275
+
1276
+ # Data type of the annotation.
1277
+ module DataType
1278
+ # Unspecified type.
1279
+ DATA_TYPE_UNSPECIFIED = 0
1280
+
1281
+ # Integer type.
1282
+ # Allowed search strategies:
1283
+ # - DataSchema.SearchStrategy.NO_SEARCH,
1284
+ # - DataSchema.SearchStrategy.EXACT_SEARCH.
1285
+ # Supports query by IntRangeArray.
1286
+ INTEGER = 1
1287
+
1288
+ # Float type.
1289
+ # Allowed search strategies:
1290
+ # - DataSchema.SearchStrategy.NO_SEARCH,
1291
+ # - DataSchema.SearchStrategy.EXACT_SEARCH.
1292
+ # Supports query by FloatRangeArray.
1293
+ FLOAT = 2
1294
+
1295
+ # String type.
1296
+ # Allowed search strategies:
1297
+ # - DataSchema.SearchStrategy.NO_SEARCH,
1298
+ # - DataSchema.SearchStrategy.EXACT_SEARCH,
1299
+ # - DataSchema.SearchStrategy.SMART_SEARCH.
1300
+ STRING = 3
1301
+
1302
+ # Supported formats:
1303
+ # %Y-%m-%dT%H:%M:%E*S%E*z (absl::RFC3339_full)
1304
+ # %Y-%m-%dT%H:%M:%E*S
1305
+ # %Y-%m-%dT%H:%M%E*z
1306
+ # %Y-%m-%dT%H:%M
1307
+ # %Y-%m-%dT%H%E*z
1308
+ # %Y-%m-%dT%H
1309
+ # %Y-%m-%d%E*z
1310
+ # %Y-%m-%d
1311
+ # %Y-%m
1312
+ # %Y
1313
+ # Allowed search strategies:
1314
+ # - DataSchema.SearchStrategy.NO_SEARCH,
1315
+ # - DataSchema.SearchStrategy.EXACT_SEARCH.
1316
+ # Supports query by DateTimeRangeArray.
1317
+ DATETIME = 5
1318
+
1319
+ # Geo coordinate type.
1320
+ # Allowed search strategies:
1321
+ # - DataSchema.SearchStrategy.NO_SEARCH,
1322
+ # - DataSchema.SearchStrategy.EXACT_SEARCH.
1323
+ # Supports query by GeoLocationArray.
1324
+ GEO_COORDINATE = 7
1325
+
1326
+ # Type to pass any proto as available in annotations.proto. Only use
1327
+ # internally.
1328
+ # Available proto types and its corresponding search behavior:
1329
+ # - ImageObjectDetectionPredictionResult, allows SMART_SEARCH on
1330
+ # display_names and NO_SEARCH.
1331
+ # - ClassificationPredictionResult, allows SMART_SEARCH on display_names
1332
+ # and NO_SEARCH.
1333
+ # - ImageSegmentationPredictionResult, allows NO_SEARCH.
1334
+ # - VideoActionRecognitionPredictionResult, allows SMART_SEARCH on
1335
+ # display_name and NO_SEARCH.
1336
+ # - VideoObjectTrackingPredictionResult, allows SMART_SEARCH on
1337
+ # display_name and NO_SEARCH.
1338
+ # - VideoClassificationPredictionResult, allows SMART_SEARCH on
1339
+ # display_name and NO_SEARCH.
1340
+ # - OccupancyCountingPredictionResult, allows EXACT_SEARCH on
1341
+ # stats.full_frame_count.count and NO_SEARCH.
1342
+ # - ObjectDetectionPredictionResult, allows SMART_SEARCH on
1343
+ # identified_boxes.entity.label_string and NO_SEARCH.
1344
+ PROTO_ANY = 8
1345
+
1346
+ # Boolean type.
1347
+ # Allowed search strategies:
1348
+ # - DataSchema.SearchStrategy.NO_SEARCH,
1349
+ # - DataSchema.SearchStrategy.EXACT_SEARCH.
1350
+ BOOLEAN = 9
1351
+
1352
+ # List type.
1353
+ # - Each element in the list must be of the exact same data schema;
1354
+ # otherwise, they are invalid arguments.
1355
+ # - List level cannot set search strategy. Leaf node level can do.
1356
+ # - Elements cannot be another list (no list of list).
1357
+ # - Elements can be CUSTOMIZED_STRUCT, and max number of layers is 10.
1358
+ LIST = 10
1359
+
1360
+ # Struct type.
1361
+ # - SearchStrategy:
1362
+ # * Data Schema that's CUSTOMIZED_STRUCT cannot set search strategy.
1363
+ # * Leaf-node elements allow setting search strategy based on element's
1364
+ # SearchStrategy restriction.
1365
+ # - Nested layer restrictions:
1366
+ # * Data Schema that's CUSTOMIZED_STRUCT allows its fields to be of
1367
+ # CUSTOMIZED_STRUCT as well, but the overall layers restriction is 10.
1368
+ CUSTOMIZED_STRUCT = 6
1369
+ end
1370
+
1371
+ # The granularity of annotations under this DataSchema.
1372
+ module Granularity
1373
+ # Unspecified granularity.
1374
+ GRANULARITY_UNSPECIFIED = 0
1375
+
1376
+ # Asset-level granularity (annotations must not contain partition info).
1377
+ GRANULARITY_ASSET_LEVEL = 1
1378
+
1379
+ # Partition-level granularity (annotations must contain partition info).
1380
+ GRANULARITY_PARTITION_LEVEL = 2
1381
+ end
1382
+ end
1383
+
1384
+ # Request message for UpdateDataSchema.
1385
+ # @!attribute [rw] data_schema
1386
+ # @return [::Google::Cloud::VisionAI::V1::DataSchema]
1387
+ # Required. The data schema's `name` field is used to identify the data
1388
+ # schema to be updated. Format:
1389
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/dataSchemas/{data_schema}`
1390
+ # @!attribute [rw] update_mask
1391
+ # @return [::Google::Protobuf::FieldMask]
1392
+ # The list of fields to be updated.
1393
+ class UpdateDataSchemaRequest
1394
+ include ::Google::Protobuf::MessageExts
1395
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1396
+ end
1397
+
1398
+ # Request message for GetDataSchema.
1399
+ # @!attribute [rw] name
1400
+ # @return [::String]
1401
+ # Required. The name of the data schema to retrieve.
1402
+ # Format:
1403
+ # `projects/{project_number}/locations/{location_id}/corpora/{corpus_id}/dataSchemas/{data_schema_id}`
1404
+ class GetDataSchemaRequest
1405
+ include ::Google::Protobuf::MessageExts
1406
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1407
+ end
1408
+
1409
+ # Request message for DeleteDataSchema.
1410
+ # @!attribute [rw] name
1411
+ # @return [::String]
1412
+ # Required. The name of the data schema to delete.
1413
+ # Format:
1414
+ # `projects/{project_number}/locations/{location_id}/corpora/{corpus_id}/dataSchemas/{data_schema_id}`
1415
+ class DeleteDataSchemaRequest
1416
+ include ::Google::Protobuf::MessageExts
1417
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1418
+ end
1419
+
1420
+ # Request message for ListDataSchemas.
1421
+ # @!attribute [rw] parent
1422
+ # @return [::String]
1423
+ # Required. The parent, which owns this collection of data schemas.
1424
+ # Format:
1425
+ # `projects/{project_number}/locations/{location_id}/corpora/{corpus_id}`
1426
+ # @!attribute [rw] page_size
1427
+ # @return [::Integer]
1428
+ # The maximum number of data schemas to return. The service may return fewer
1429
+ # than this value. If unspecified, at most 50 data schemas will be returned.
1430
+ # The maximum value is 1000; values above 1000 will be coerced to 1000.
1431
+ # @!attribute [rw] page_token
1432
+ # @return [::String]
1433
+ # A page token, received from a previous `ListDataSchemas` call.
1434
+ # Provide this to retrieve the subsequent page.
1435
+ #
1436
+ # When paginating, all other parameters provided to `ListDataSchemas` must
1437
+ # match the call that provided the page token.
1438
+ class ListDataSchemasRequest
1439
+ include ::Google::Protobuf::MessageExts
1440
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1441
+ end
1442
+
1443
+ # Response message for ListDataSchemas.
1444
+ # @!attribute [rw] data_schemas
1445
+ # @return [::Array<::Google::Cloud::VisionAI::V1::DataSchema>]
1446
+ # The data schemas from the specified corpus.
1447
+ # @!attribute [rw] next_page_token
1448
+ # @return [::String]
1449
+ # A token, which can be sent as `page_token` to retrieve the next page.
1450
+ # If this field is omitted, there are no subsequent pages.
1451
+ class ListDataSchemasResponse
1452
+ include ::Google::Protobuf::MessageExts
1453
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1454
+ end
1455
+
1456
+ # Request message for CreateAnnotation.
1457
+ # @!attribute [rw] parent
1458
+ # @return [::String]
1459
+ # Required. The parent resource where this annotation will be created.
1460
+ # Format:
1461
+ # `projects/{project_number}/locations/{location_id}/corpora/{corpus_id}/assets/{asset_id}`
1462
+ # @!attribute [rw] annotation
1463
+ # @return [::Google::Cloud::VisionAI::V1::Annotation]
1464
+ # Required. The annotation to create.
1465
+ # @!attribute [rw] annotation_id
1466
+ # @return [::String]
1467
+ # Optional. The ID to use for the annotation, which will become the final
1468
+ # component of the annotation's resource name if user choose to specify.
1469
+ # Otherwise, annotation id will be generated by system.
1470
+ #
1471
+ # This value should be up to 63 characters, and valid characters
1472
+ # are /[a-z][0-9]-/. The first character must be a letter, the last could be
1473
+ # a letter or a number.
1474
+ class CreateAnnotationRequest
1475
+ include ::Google::Protobuf::MessageExts
1476
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1477
+ end
1478
+
1479
+ # An annotation is a resource in asset. It represents a key-value mapping of
1480
+ # content in asset.
1481
+ # @!attribute [rw] name
1482
+ # @return [::String]
1483
+ # Resource name of the annotation.
1484
+ # Format:
1485
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/assets/{asset}/annotations/{annotation}`
1486
+ # @!attribute [rw] user_specified_annotation
1487
+ # @return [::Google::Cloud::VisionAI::V1::UserSpecifiedAnnotation]
1488
+ # User provided annotation.
1489
+ class Annotation
1490
+ include ::Google::Protobuf::MessageExts
1491
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1492
+ end
1493
+
1494
+ # Annotation provided by users.
1495
+ # @!attribute [rw] key
1496
+ # @return [::String]
1497
+ # Required. Key of the annotation. The key must be set with type by
1498
+ # CreateDataSchema.
1499
+ # @!attribute [rw] value
1500
+ # @return [::Google::Cloud::VisionAI::V1::AnnotationValue]
1501
+ # Value of the annotation. The value must be able to convert
1502
+ # to the type according to the data schema.
1503
+ # @!attribute [rw] partition
1504
+ # @return [::Google::Cloud::VisionAI::V1::Partition]
1505
+ # Partition information in time and space for the sub-asset level annotation.
1506
+ class UserSpecifiedAnnotation
1507
+ include ::Google::Protobuf::MessageExts
1508
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1509
+ end
1510
+
1511
+ # Location Coordinate Representation
1512
+ # @!attribute [rw] latitude
1513
+ # @return [::Float]
1514
+ # Latitude Coordinate. Degrees [-90 .. 90]
1515
+ # @!attribute [rw] longitude
1516
+ # @return [::Float]
1517
+ # Longitude Coordinate. Degrees [-180 .. 180]
1518
+ class GeoCoordinate
1519
+ include ::Google::Protobuf::MessageExts
1520
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1521
+ end
1522
+
1523
+ # Value of annotation, including all types available in data schema.
1524
+ # @!attribute [rw] int_value
1525
+ # @return [::Integer]
1526
+ # Value of int type annotation.
1527
+ # @!attribute [rw] float_value
1528
+ # @return [::Float]
1529
+ # Value of float type annotation.
1530
+ # @!attribute [rw] str_value
1531
+ # @return [::String]
1532
+ # Value of string type annotation.
1533
+ # @!attribute [rw] datetime_value
1534
+ # @return [::String]
1535
+ # Value of date time type annotation.
1536
+ # @!attribute [rw] geo_coordinate
1537
+ # @return [::Google::Cloud::VisionAI::V1::GeoCoordinate]
1538
+ # Value of geo coordinate type annotation.
1539
+ # @!attribute [rw] proto_any_value
1540
+ # @return [::Google::Protobuf::Any]
1541
+ # Value of any proto value.
1542
+ # @!attribute [rw] bool_value
1543
+ # @return [::Boolean]
1544
+ # Value of boolean type annotation.
1545
+ # @!attribute [rw] customized_struct_data_value
1546
+ # @return [::Google::Protobuf::Struct]
1547
+ # Value of customized struct annotation. This field does not have effects.
1548
+ # Use customized_struct_value instead for customized struct annotation.
1549
+ # @!attribute [rw] list_value
1550
+ # @return [::Google::Cloud::VisionAI::V1::AnnotationList]
1551
+ # Value of list type annotation.
1552
+ # @!attribute [rw] customized_struct_value
1553
+ # @return [::Google::Cloud::VisionAI::V1::AnnotationCustomizedStruct]
1554
+ # Value of custom struct type annotation.
1555
+ class AnnotationValue
1556
+ include ::Google::Protobuf::MessageExts
1557
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1558
+ end
1559
+
1560
+ # List representation in annotation.
1561
+ # @!attribute [rw] values
1562
+ # @return [::Array<::Google::Cloud::VisionAI::V1::AnnotationValue>]
1563
+ # The values of `LIST` data type annotation.
1564
+ class AnnotationList
1565
+ include ::Google::Protobuf::MessageExts
1566
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1567
+ end
1568
+
1569
+ # Customized struct represnation in annotation.
1570
+ # @!attribute [rw] elements
1571
+ # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::VisionAI::V1::AnnotationValue}]
1572
+ # A map from elements' keys to element's annotation value.
1573
+ class AnnotationCustomizedStruct
1574
+ include ::Google::Protobuf::MessageExts
1575
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1576
+
1577
+ # @!attribute [rw] key
1578
+ # @return [::String]
1579
+ # @!attribute [rw] value
1580
+ # @return [::Google::Cloud::VisionAI::V1::AnnotationValue]
1581
+ class ElementsEntry
1582
+ include ::Google::Protobuf::MessageExts
1583
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1584
+ end
1585
+ end
1586
+
1587
+ # Request message for GetAnnotation API.
1588
+ # @!attribute [rw] parent
1589
+ # @return [::String]
1590
+ # The parent, which owns this collection of annotations.
1591
+ # Format:
1592
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/assets/{asset}`
1593
+ # @!attribute [rw] page_size
1594
+ # @return [::Integer]
1595
+ # The maximum number of annotations to return. The service may return fewer
1596
+ # than this value. If unspecified, at most 50 annotations will be returned.
1597
+ # The maximum value is 1000; values above 1000 will be coerced to 1000.
1598
+ # @!attribute [rw] page_token
1599
+ # @return [::String]
1600
+ # A page token, received from a previous `ListAnnotations` call.
1601
+ # Provide this to retrieve the subsequent page.
1602
+ #
1603
+ # When paginating, all other parameters provided to `ListAnnotations` must
1604
+ # match the call that provided the page token.
1605
+ # @!attribute [rw] filter
1606
+ # @return [::String]
1607
+ # The filter applied to the returned list.
1608
+ # We only support filtering for the following fields:
1609
+ # For corpus of STREAM_VIDEO type:
1610
+ # `partition.temporal_partition.start_time`,
1611
+ # `partition.temporal_partition.end_time`, and `key`.
1612
+ # For corpus of VIDEO_ON_DEMAND type,
1613
+ # `partition.relative_temporal_partition.start_offset`,
1614
+ # `partition.relative_temporal_partition.end_offset`, and `key`.
1615
+ # For corpus of IMAGE type, only `key` is supported.
1616
+ # Timestamps are specified in the RFC-3339 format, and only one restriction
1617
+ # may be applied per field, joined by conjunctions.
1618
+ # Format:
1619
+ # "partition.temporal_partition.start_time > "2012-04-21T11:30:00-04:00" AND
1620
+ # partition.temporal_partition.end_time < "2012-04-22T11:30:00-04:00" AND
1621
+ # key = "example_key""
1622
+ class ListAnnotationsRequest
1623
+ include ::Google::Protobuf::MessageExts
1624
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1625
+ end
1626
+
1627
+ # Request message for ListAnnotations API.
1628
+ # @!attribute [rw] annotations
1629
+ # @return [::Array<::Google::Cloud::VisionAI::V1::Annotation>]
1630
+ # The annotations from the specified asset.
1631
+ # @!attribute [rw] next_page_token
1632
+ # @return [::String]
1633
+ # A token, which can be sent as `page_token` to retrieve the next page.
1634
+ # If this field is omitted, there are no subsequent pages.
1635
+ class ListAnnotationsResponse
1636
+ include ::Google::Protobuf::MessageExts
1637
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1638
+ end
1639
+
1640
+ # Request message for GetAnnotation API.
1641
+ # @!attribute [rw] name
1642
+ # @return [::String]
1643
+ # Required. The name of the annotation to retrieve.
1644
+ # Format:
1645
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/assets/{asset}/annotations/{annotation}`
1646
+ class GetAnnotationRequest
1647
+ include ::Google::Protobuf::MessageExts
1648
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1649
+ end
1650
+
1651
+ # Request message for UpdateAnnotation API.
1652
+ # @!attribute [rw] annotation
1653
+ # @return [::Google::Cloud::VisionAI::V1::Annotation]
1654
+ # Required. The annotation to update.
1655
+ # The annotation's `name` field is used to identify the annotation to be
1656
+ # updated. Format:
1657
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/assets/{asset}/annotations/{annotation}`
1658
+ # @!attribute [rw] update_mask
1659
+ # @return [::Google::Protobuf::FieldMask]
1660
+ # The list of fields to be updated.
1661
+ class UpdateAnnotationRequest
1662
+ include ::Google::Protobuf::MessageExts
1663
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1664
+ end
1665
+
1666
+ # Request message for DeleteAnnotation API.
1667
+ # @!attribute [rw] name
1668
+ # @return [::String]
1669
+ # Required. The name of the annotation to delete.
1670
+ # Format:
1671
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/assets/{asset}/annotations/{annotation}`
1672
+ class DeleteAnnotationRequest
1673
+ include ::Google::Protobuf::MessageExts
1674
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1675
+ end
1676
+
1677
+ # The request message for ImportAssets.
1678
+ # @!attribute [rw] assets_gcs_uri
1679
+ # @return [::String]
1680
+ # The file contains all assets information to be imported.
1681
+ # * The file is in JSONL format.
1682
+ # * Each line corresponding to one asset.
1683
+ # * Each line will be converted into InputImageAsset proto.
1684
+ # @!attribute [rw] parent
1685
+ # @return [::String]
1686
+ # Required. The parent corpus resource where the assets will be imported.
1687
+ # Format:
1688
+ # `projects/{project_number}/locations/{location_id}/corpora/{corpus_id}`
1689
+ class ImportAssetsRequest
1690
+ include ::Google::Protobuf::MessageExts
1691
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1692
+ end
1693
+
1694
+ # The metadata message for ImportAssets LRO.
1695
+ # @!attribute [rw] metadata
1696
+ # @return [::Google::Cloud::VisionAI::V1::OperationMetadata]
1697
+ # The metadata of the operation.
1698
+ class ImportAssetsMetadata
1699
+ include ::Google::Protobuf::MessageExts
1700
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1701
+ end
1702
+
1703
+ # The response message for ImportAssets LRO.
1704
+ class ImportAssetsResponse
1705
+ include ::Google::Protobuf::MessageExts
1706
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1707
+ end
1708
+
1709
+ # Request message for CreateSearchConfig.
1710
+ # @!attribute [rw] parent
1711
+ # @return [::String]
1712
+ # Required. The parent resource where this search configuration will be
1713
+ # created. Format:
1714
+ # `projects/{project_number}/locations/{location_id}/corpora/{corpus_id}`
1715
+ # @!attribute [rw] search_config
1716
+ # @return [::Google::Cloud::VisionAI::V1::SearchConfig]
1717
+ # Required. The search config to create.
1718
+ # @!attribute [rw] search_config_id
1719
+ # @return [::String]
1720
+ # Required. ID to use for the new search config. Will become the final
1721
+ # component of the SearchConfig's resource name. This value should be up to
1722
+ # 63 characters, and valid characters are /[a-z][0-9]-_/. The first character
1723
+ # must be a letter, the last could be a letter or a number.
1724
+ class CreateSearchConfigRequest
1725
+ include ::Google::Protobuf::MessageExts
1726
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1727
+ end
1728
+
1729
+ # Request message for UpdateSearchConfig.
1730
+ # @!attribute [rw] search_config
1731
+ # @return [::Google::Cloud::VisionAI::V1::SearchConfig]
1732
+ # Required. The search configuration to update.
1733
+ #
1734
+ # The search configuration's `name` field is used to identify the resource to
1735
+ # be updated. Format:
1736
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/searchConfigs/{search_config}`
1737
+ # @!attribute [rw] update_mask
1738
+ # @return [::Google::Protobuf::FieldMask]
1739
+ # The list of fields to be updated. If left unset, all field paths will be
1740
+ # updated/overwritten.
1741
+ class UpdateSearchConfigRequest
1742
+ include ::Google::Protobuf::MessageExts
1743
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1744
+ end
1745
+
1746
+ # Request message for GetSearchConfig.
1747
+ # @!attribute [rw] name
1748
+ # @return [::String]
1749
+ # Required. The name of the search configuration to retrieve.
1750
+ # Format:
1751
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/searchConfigs/{search_config}`
1752
+ class GetSearchConfigRequest
1753
+ include ::Google::Protobuf::MessageExts
1754
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1755
+ end
1756
+
1757
+ # Request message for DeleteSearchConfig.
1758
+ # @!attribute [rw] name
1759
+ # @return [::String]
1760
+ # Required. The name of the search configuration to delete.
1761
+ # Format:
1762
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/searchConfigs/{search_config}`
1763
+ class DeleteSearchConfigRequest
1764
+ include ::Google::Protobuf::MessageExts
1765
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1766
+ end
1767
+
1768
+ # Request message for ListSearchConfigs.
1769
+ # @!attribute [rw] parent
1770
+ # @return [::String]
1771
+ # Required. The parent, which owns this collection of search configurations.
1772
+ # Format:
1773
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}`
1774
+ # @!attribute [rw] page_size
1775
+ # @return [::Integer]
1776
+ # The maximum number of search configurations to return. The service may
1777
+ # return fewer than this value. If unspecified, a page size of 50 will be
1778
+ # used. The maximum value is 1000; values above 1000 will be coerced to 1000.
1779
+ # @!attribute [rw] page_token
1780
+ # @return [::String]
1781
+ # A page token, received from a previous `ListSearchConfigs` call.
1782
+ # Provide this to retrieve the subsequent page.
1783
+ #
1784
+ # When paginating, all other parameters provided to
1785
+ # `ListSearchConfigs` must match the call that provided the page
1786
+ # token.
1787
+ class ListSearchConfigsRequest
1788
+ include ::Google::Protobuf::MessageExts
1789
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1790
+ end
1791
+
1792
+ # Response message for ListSearchConfigs.
1793
+ # @!attribute [rw] search_configs
1794
+ # @return [::Array<::Google::Cloud::VisionAI::V1::SearchConfig>]
1795
+ # The search configurations from the specified corpus.
1796
+ # @!attribute [rw] next_page_token
1797
+ # @return [::String]
1798
+ # A token, which can be sent as `page_token` to retrieve the next page.
1799
+ # If this field is omitted, there are no subsequent pages.
1800
+ class ListSearchConfigsResponse
1801
+ include ::Google::Protobuf::MessageExts
1802
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1803
+ end
1804
+
1805
+ # SearchConfig stores different properties that will affect search
1806
+ # behaviors and search results.
1807
+ # @!attribute [rw] name
1808
+ # @return [::String]
1809
+ # Resource name of the search configuration.
1810
+ # For CustomSearchCriteria, search_config would be the search
1811
+ # operator name. For Facets, search_config would be the facet
1812
+ # dimension name.
1813
+ # Format:
1814
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/searchConfigs/{search_config}`
1815
+ # @!attribute [rw] facet_property
1816
+ # @return [::Google::Cloud::VisionAI::V1::FacetProperty]
1817
+ # Establishes a FacetDimension and associated specifications.
1818
+ # @!attribute [rw] search_criteria_property
1819
+ # @return [::Google::Cloud::VisionAI::V1::SearchCriteriaProperty]
1820
+ # Creates a mapping between a custom SearchCriteria and one or more UGA keys.
1821
+ class SearchConfig
1822
+ include ::Google::Protobuf::MessageExts
1823
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1824
+ end
1825
+
1826
+ # Message representing IndexEndpoint resource. Indexes are deployed into it.
1827
+ # @!attribute [r] name
1828
+ # @return [::String]
1829
+ # Output only. Resource name of the IndexEndpoint.
1830
+ # Format:
1831
+ # `projects/{project}/locations/{location}/indexEndpoints/{index_endpoint_id}`
1832
+ # @!attribute [rw] display_name
1833
+ # @return [::String]
1834
+ # Optional. Display name of the IndexEndpoint. Can be up to 32 characters
1835
+ # long.
1836
+ # @!attribute [rw] description
1837
+ # @return [::String]
1838
+ # Optional. Description of the IndexEndpoint. Can be up to 25000 characters
1839
+ # long.
1840
+ # @!attribute [r] deployed_index
1841
+ # @return [::Google::Cloud::VisionAI::V1::DeployedIndex]
1842
+ # Output only. The Index deployed in this IndexEndpoint.
1843
+ # @!attribute [r] state
1844
+ # @return [::Google::Cloud::VisionAI::V1::IndexEndpoint::State]
1845
+ # Output only. IndexEndpoint state.
1846
+ # @!attribute [rw] labels
1847
+ # @return [::Google::Protobuf::Map{::String => ::String}]
1848
+ # Optional. The labels applied to a resource must meet the following
1849
+ # requirements:
1850
+ #
1851
+ # * Each resource can have multiple labels, up to a maximum of 64.
1852
+ # * Each label must be a key-value pair.
1853
+ # * Keys have a minimum length of 1 character and a maximum length of 63
1854
+ # characters and cannot be empty. Values can be empty and have a maximum
1855
+ # length of 63 characters.
1856
+ # * Keys and values can contain only lowercase letters, numeric characters,
1857
+ # underscores, and dashes. All characters must use UTF-8 encoding, and
1858
+ # international characters are allowed.
1859
+ # * The key portion of a label must be unique. However, you can use the same
1860
+ # key with multiple resources.
1861
+ # * Keys must start with a lowercase letter or international character.
1862
+ #
1863
+ # See [Google Cloud
1864
+ # Document](https://cloud.google.com/resource-manager/docs/creating-managing-labels#requirements)
1865
+ # for more details.
1866
+ # @!attribute [r] create_time
1867
+ # @return [::Google::Protobuf::Timestamp]
1868
+ # Output only. Create timestamp.
1869
+ # @!attribute [r] update_time
1870
+ # @return [::Google::Protobuf::Timestamp]
1871
+ # Output only. Update timestamp.
1872
+ class IndexEndpoint
1873
+ include ::Google::Protobuf::MessageExts
1874
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1875
+
1876
+ # @!attribute [rw] key
1877
+ # @return [::String]
1878
+ # @!attribute [rw] value
1879
+ # @return [::String]
1880
+ class LabelsEntry
1881
+ include ::Google::Protobuf::MessageExts
1882
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1883
+ end
1884
+
1885
+ # IndexEndpoint stage.
1886
+ module State
1887
+ # The default value. Should not be used.
1888
+ STATE_UNSPECIFIED = 0
1889
+
1890
+ # State CREATING.
1891
+ CREATING = 1
1892
+
1893
+ # State CREATED.
1894
+ CREATED = 2
1895
+
1896
+ # State UPDATING.
1897
+ UPDATING = 3
1898
+
1899
+ # State FAILED.
1900
+ FAILED = 4
1901
+ end
1902
+ end
1903
+
1904
+ # Request message for CreateIndexEndpoint.
1905
+ # @!attribute [rw] parent
1906
+ # @return [::String]
1907
+ # Required. Format: `projects/{project}/locations/{location}`
1908
+ # @!attribute [rw] index_endpoint_id
1909
+ # @return [::String]
1910
+ # Optional. The ID to use for the IndexEndpoint, which will become the final
1911
+ # component of the IndexEndpoint's resource name if the user specifies it.
1912
+ # Otherwise, IndexEndpoint id will be autogenerated.
1913
+ #
1914
+ # This value should be up to 63 characters, and valid characters
1915
+ # are a-z, 0-9 and dash (-). The first character must be a letter, the last
1916
+ # must be a letter or a number.
1917
+ # @!attribute [rw] index_endpoint
1918
+ # @return [::Google::Cloud::VisionAI::V1::IndexEndpoint]
1919
+ # Required. The resource being created.
1920
+ class CreateIndexEndpointRequest
1921
+ include ::Google::Protobuf::MessageExts
1922
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1923
+ end
1924
+
1925
+ # Metadata message for CreateIndexEndpoint.
1926
+ # @!attribute [rw] operation_metadata
1927
+ # @return [::Google::Cloud::VisionAI::V1::OperationMetadata]
1928
+ # Common metadata of the long-running operation.
1929
+ class CreateIndexEndpointMetadata
1930
+ include ::Google::Protobuf::MessageExts
1931
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1932
+ end
1933
+
1934
+ # Request message for GetIndexEndpoint.
1935
+ # @!attribute [rw] name
1936
+ # @return [::String]
1937
+ # Required. Name of the IndexEndpoint resource.
1938
+ class GetIndexEndpointRequest
1939
+ include ::Google::Protobuf::MessageExts
1940
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1941
+ end
1942
+
1943
+ # Request message for ListIndexEndpoints.
1944
+ # @!attribute [rw] parent
1945
+ # @return [::String]
1946
+ # Required. Format: `projects/{project}/locations/{location}`
1947
+ # @!attribute [rw] page_size
1948
+ # @return [::Integer]
1949
+ # Optional. Requested page size. Server may return fewer items than
1950
+ # requested. The service may return fewer than this value. If unspecified, a
1951
+ # page size of 50 will be used. The maximum value is 1000; values above 1000
1952
+ # will be coerced to 1000.
1953
+ # @!attribute [rw] page_token
1954
+ # @return [::String]
1955
+ # Optional. A token identifying a page of results the server should return.
1956
+ # @!attribute [rw] filter
1957
+ # @return [::String]
1958
+ # Optional. The filter applied to the returned list.
1959
+ # We only support filtering for the `deployed_image_index.image_index` field.
1960
+ # However, to filter by a corpus instead of an image index, simply use
1961
+ # `deployed_image_index.corpus`, which will return all endpoints with
1962
+ # `deployed_image_index.image_index` inside of the given corpus.
1963
+ # A basic filter on image index would look like:
1964
+ # deployed_image_index.image_index =
1965
+ # "projects/123/locations/us-central1/corpora/my_corpus/imageIndexes/my_image_index"
1966
+ # A basic filter on corpus would look like:
1967
+ # deployed_image_index.corpus =
1968
+ # "projects/123/locations/us-central1/corpora/my_corpus"
1969
+ class ListIndexEndpointsRequest
1970
+ include ::Google::Protobuf::MessageExts
1971
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1972
+ end
1973
+
1974
+ # Response message for ListIndexEndpoints.
1975
+ # @!attribute [rw] index_endpoints
1976
+ # @return [::Array<::Google::Cloud::VisionAI::V1::IndexEndpoint>]
1977
+ # The list of IndexEndpoints.
1978
+ # @!attribute [rw] next_page_token
1979
+ # @return [::String]
1980
+ # A token identifying a page of results the server should return.
1981
+ class ListIndexEndpointsResponse
1982
+ include ::Google::Protobuf::MessageExts
1983
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1984
+ end
1985
+
1986
+ # Request message for UpdateIndexEndpoint.
1987
+ # @!attribute [rw] index_endpoint
1988
+ # @return [::Google::Cloud::VisionAI::V1::IndexEndpoint]
1989
+ # Required. The resource being updated.
1990
+ # @!attribute [rw] update_mask
1991
+ # @return [::Google::Protobuf::FieldMask]
1992
+ # Required. Field mask is used to specify the fields to be overwritten in the
1993
+ # IndexEndpoint resource by the update.
1994
+ # The fields specified in the update_mask are relative to the resource, not
1995
+ # the full request.
1996
+ # A field of the resource will be overwritten if it is in the mask.
1997
+ # Empty field mask is not allowed.
1998
+ # If the mask is "*", then this is a full replacement of the resource.
1999
+ class UpdateIndexEndpointRequest
2000
+ include ::Google::Protobuf::MessageExts
2001
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2002
+ end
2003
+
2004
+ # Metadata message for UpdateIndexEndpoint.
2005
+ # @!attribute [rw] operation_metadata
2006
+ # @return [::Google::Cloud::VisionAI::V1::OperationMetadata]
2007
+ # Common metadata of the long-running operation.
2008
+ class UpdateIndexEndpointMetadata
2009
+ include ::Google::Protobuf::MessageExts
2010
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2011
+ end
2012
+
2013
+ # Request message for DeleteIndexEndpoint.
2014
+ # @!attribute [rw] name
2015
+ # @return [::String]
2016
+ # Required. Name of the resource.
2017
+ class DeleteIndexEndpointRequest
2018
+ include ::Google::Protobuf::MessageExts
2019
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2020
+ end
2021
+
2022
+ # Metadata message for DeleteIndexEndpoint.
2023
+ # @!attribute [rw] operation_metadata
2024
+ # @return [::Google::Cloud::VisionAI::V1::OperationMetadata]
2025
+ # Common metadata of the long-running operation.
2026
+ class DeleteIndexEndpointMetadata
2027
+ include ::Google::Protobuf::MessageExts
2028
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2029
+ end
2030
+
2031
+ # Request message for DeployIndex.
2032
+ # @!attribute [rw] index_endpoint
2033
+ # @return [::String]
2034
+ # Required. IndexEndpoint the index is deployed to.
2035
+ # Format:
2036
+ # `projects/{project}/locations/{location}/indexEndpoints/{index_endpoint}`
2037
+ # @!attribute [rw] deployed_index
2038
+ # @return [::Google::Cloud::VisionAI::V1::DeployedIndex]
2039
+ # Required. Index to deploy.
2040
+ class DeployIndexRequest
2041
+ include ::Google::Protobuf::MessageExts
2042
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2043
+ end
2044
+
2045
+ # DeployIndex response once the operation is done.
2046
+ class DeployIndexResponse
2047
+ include ::Google::Protobuf::MessageExts
2048
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2049
+ end
2050
+
2051
+ # Metadata message for DeployIndex.
2052
+ # @!attribute [rw] operation_metadata
2053
+ # @return [::Google::Cloud::VisionAI::V1::OperationMetadata]
2054
+ # Common metadata of the long-running operation.
2055
+ # @!attribute [r] deployed_index
2056
+ # @return [::String]
2057
+ # Output only. The index being deployed.
2058
+ class DeployIndexMetadata
2059
+ include ::Google::Protobuf::MessageExts
2060
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2061
+ end
2062
+
2063
+ # Metadata message for UndeployIndex.
2064
+ # @!attribute [rw] operation_metadata
2065
+ # @return [::Google::Cloud::VisionAI::V1::OperationMetadata]
2066
+ # Common metadata of the long-running operation.
2067
+ # @!attribute [r] deployed_index
2068
+ # @return [::String]
2069
+ # Output only. The index being undeployed.
2070
+ class UndeployIndexMetadata
2071
+ include ::Google::Protobuf::MessageExts
2072
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2073
+ end
2074
+
2075
+ # Request message for UndeployIndexEndpoint.
2076
+ # @!attribute [rw] index_endpoint
2077
+ # @return [::String]
2078
+ # Required. Resource name of the IndexEndpoint resource on which the
2079
+ # undeployment will act. Format:
2080
+ # `projects/{project}/locations/{location}/indexEndpoints/{index_endpoint}`
2081
+ class UndeployIndexRequest
2082
+ include ::Google::Protobuf::MessageExts
2083
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2084
+ end
2085
+
2086
+ # UndeployIndex response once the operation is done.
2087
+ class UndeployIndexResponse
2088
+ include ::Google::Protobuf::MessageExts
2089
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2090
+ end
2091
+
2092
+ # A deployment of an Index.
2093
+ # @!attribute [rw] index
2094
+ # @return [::String]
2095
+ # Required. Name of the deployed Index.
2096
+ # Format:
2097
+ # `projects/{project_number}/locations/{location_id}/corpora/{corpus_id}/indexes/{index_id}`
2098
+ class DeployedIndex
2099
+ include ::Google::Protobuf::MessageExts
2100
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2101
+ end
2102
+
2103
+ # Central configuration for a facet.
2104
+ # @!attribute [rw] fixed_range_bucket_spec
2105
+ # @return [::Google::Cloud::VisionAI::V1::FacetProperty::FixedRangeBucketSpec]
2106
+ # Fixed range facet bucket config.
2107
+ # @!attribute [rw] custom_range_bucket_spec
2108
+ # @return [::Google::Cloud::VisionAI::V1::FacetProperty::CustomRangeBucketSpec]
2109
+ # Custom range facet bucket config.
2110
+ # @!attribute [rw] datetime_bucket_spec
2111
+ # @return [::Google::Cloud::VisionAI::V1::FacetProperty::DateTimeBucketSpec]
2112
+ # Datetime range facet bucket config.
2113
+ # @!attribute [rw] mapped_fields
2114
+ # @return [::Array<::String>]
2115
+ # Name of the facets, which are the dimensions users want to use to refine
2116
+ # search results. `mapped_fields` will match UserSpecifiedDataSchema keys.
2117
+ #
2118
+ # For example, user can add a bunch of UGAs with the same key, such as
2119
+ # player:adam, player:bob, player:charles. When multiple mapped_fields are
2120
+ # specified, will merge their value together as final facet value. E.g.
2121
+ # home_team: a, home_team:b, away_team:a, away_team:c, when facet_field =
2122
+ # [home_team, away_team], facet_value will be [a, b, c].
2123
+ #
2124
+ # UNLESS this is a 1:1 facet dimension (mapped_fields.size() == 1) AND the
2125
+ # mapped_field equals the parent SearchConfig.name, the parent must
2126
+ # also contain a SearchCriteriaProperty that maps to the same fields.
2127
+ # mapped_fields must not be empty.
2128
+ # @!attribute [rw] display_name
2129
+ # @return [::String]
2130
+ # Display name of the facet. To be used by UI for facet rendering.
2131
+ # @!attribute [rw] result_size
2132
+ # @return [::Integer]
2133
+ # Maximum number of unique bucket to return for one facet. Bucket number can
2134
+ # be large for high-cardinality facet such as "player". We only return top-n
2135
+ # most related ones to user. If it's <= 0, the server will decide the
2136
+ # appropriate result_size.
2137
+ # @!attribute [rw] bucket_type
2138
+ # @return [::Google::Cloud::VisionAI::V1::FacetBucketType]
2139
+ # Facet bucket type e.g. value, range.
2140
+ class FacetProperty
2141
+ include ::Google::Protobuf::MessageExts
2142
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2143
+
2144
+ # If bucket type is FIXED_RANGE, specify how values are bucketized. Use
2145
+ # FixedRangeBucketSpec when you want to create multiple buckets with equal
2146
+ # granularities. Using integer bucket value as an example, when
2147
+ # bucket_start = 0, bucket_granularity = 10, bucket_count = 5, this facet
2148
+ # will be aggregated via the following buckets:
2149
+ # [-inf, 0), [0, 10), [10, 20), [20, 30), [30, inf).
2150
+ # Notably, bucket_count <= 1 is an invalid spec.
2151
+ # @!attribute [rw] bucket_start
2152
+ # @return [::Google::Cloud::VisionAI::V1::FacetValue]
2153
+ # Lower bound of the bucket. NOTE: Only integer type is currently supported
2154
+ # for this field.
2155
+ # @!attribute [rw] bucket_granularity
2156
+ # @return [::Google::Cloud::VisionAI::V1::FacetValue]
2157
+ # Bucket granularity. NOTE: Only integer type is currently supported for
2158
+ # this field.
2159
+ # @!attribute [rw] bucket_count
2160
+ # @return [::Integer]
2161
+ # Total number of buckets.
2162
+ class FixedRangeBucketSpec
2163
+ include ::Google::Protobuf::MessageExts
2164
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2165
+ end
2166
+
2167
+ # If bucket type is CUSTOM_RANGE, specify how values are bucketized. Use
2168
+ # integer bucket value as an example, when the endpoints are 0, 10, 100, and
2169
+ # 1000, we will generate the following facets:
2170
+ # [-inf, 0), [0, 10), [10, 100), [100, 1000), [1000, inf).
2171
+ # Notably:
2172
+ # - endpoints must be listed in ascending order. Otherwise, the SearchConfig
2173
+ # API will reject the facet config.
2174
+ # - < 1 endpoints is an invalid spec.
2175
+ # @!attribute [rw] endpoints
2176
+ # @return [::Array<::Google::Cloud::VisionAI::V1::FacetValue>]
2177
+ # Currently, only integer type is supported for this field.
2178
+ class CustomRangeBucketSpec
2179
+ include ::Google::Protobuf::MessageExts
2180
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2181
+ end
2182
+
2183
+ # If bucket type is DATE, specify how date values are bucketized.
2184
+ # @!attribute [rw] granularity
2185
+ # @return [::Google::Cloud::VisionAI::V1::FacetProperty::DateTimeBucketSpec::Granularity]
2186
+ # Granularity of date type facet.
2187
+ class DateTimeBucketSpec
2188
+ include ::Google::Protobuf::MessageExts
2189
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2190
+
2191
+ # Granularity enum for the datetime bucket.
2192
+ module Granularity
2193
+ # Unspecified granularity.
2194
+ GRANULARITY_UNSPECIFIED = 0
2195
+
2196
+ # Granularity is year.
2197
+ YEAR = 1
2198
+
2199
+ # Granularity is month.
2200
+ MONTH = 2
2201
+
2202
+ # Granularity is day.
2203
+ DAY = 3
2204
+ end
2205
+ end
2206
+ end
2207
+
2208
+ # Search resource: SearchHypernym.
2209
+ # For example,
2210
+ # { hypernym: "vehicle"
2211
+ # hyponyms: ["sedan", "truck"] }
2212
+ # This means in SMART_SEARCH mode, searching for "vehicle" will also return
2213
+ # results with "sedan" or "truck" as annotations.
2214
+ # @!attribute [rw] name
2215
+ # @return [::String]
2216
+ # Resource name of the SearchHypernym.
2217
+ # Format:
2218
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/searchHypernyms/{search_hypernym}`
2219
+ # @!attribute [rw] hypernym
2220
+ # @return [::String]
2221
+ # Optional. The hypernym.
2222
+ # @!attribute [rw] hyponyms
2223
+ # @return [::Array<::String>]
2224
+ # Optional. Hyponyms that the hypernym is mapped to.
2225
+ class SearchHypernym
2226
+ include ::Google::Protobuf::MessageExts
2227
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2228
+ end
2229
+
2230
+ # Request message for creating SearchHypernym.
2231
+ # @!attribute [rw] parent
2232
+ # @return [::String]
2233
+ # Required. The parent resource where this SearchHypernym will be created.
2234
+ # Format: `projects/{project_number}/locations/{location}/corpora/{corpus}`
2235
+ # @!attribute [rw] search_hypernym
2236
+ # @return [::Google::Cloud::VisionAI::V1::SearchHypernym]
2237
+ # Required. The SearchHypernym to create.
2238
+ # @!attribute [rw] search_hypernym_id
2239
+ # @return [::String]
2240
+ # Optional. The search hypernym id.
2241
+ # If omitted, a random UUID will be generated.
2242
+ class CreateSearchHypernymRequest
2243
+ include ::Google::Protobuf::MessageExts
2244
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2245
+ end
2246
+
2247
+ # Request message for updating SearchHypernym.
2248
+ # @!attribute [rw] search_hypernym
2249
+ # @return [::Google::Cloud::VisionAI::V1::SearchHypernym]
2250
+ # Required. The SearchHypernym to update.
2251
+ # The search hypernym's `name` field is used to identify the search hypernym
2252
+ # to be updated. Format:
2253
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/searchHypernyms/{search_hypernym}`
2254
+ # @!attribute [rw] update_mask
2255
+ # @return [::Google::Protobuf::FieldMask]
2256
+ # The list of fields to be updated. If left unset, all field paths will be
2257
+ # updated/overwritten.
2258
+ class UpdateSearchHypernymRequest
2259
+ include ::Google::Protobuf::MessageExts
2260
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2261
+ end
2262
+
2263
+ # Request message for getting SearchHypernym.
2264
+ # @!attribute [rw] name
2265
+ # @return [::String]
2266
+ # Required. The name of the SearchHypernym to retrieve.
2267
+ # Format:
2268
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/searchHypernyms/{search_hypernym}`
2269
+ class GetSearchHypernymRequest
2270
+ include ::Google::Protobuf::MessageExts
2271
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2272
+ end
2273
+
2274
+ # Request message for deleting SearchHypernym.
2275
+ # @!attribute [rw] name
2276
+ # @return [::String]
2277
+ # Required. The name of the SearchHypernym to delete.
2278
+ # Format:
2279
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}/searchHypernyms/{search_hypernym}`
2280
+ class DeleteSearchHypernymRequest
2281
+ include ::Google::Protobuf::MessageExts
2282
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2283
+ end
2284
+
2285
+ # Request message for listing SearchHypernyms.
2286
+ # @!attribute [rw] parent
2287
+ # @return [::String]
2288
+ # Required. The parent, which owns this collection of SearchHypernyms.
2289
+ # Format:
2290
+ # `projects/{project_number}/locations/{location}/corpora/{corpus}`
2291
+ # @!attribute [rw] page_size
2292
+ # @return [::Integer]
2293
+ # The maximum number of SearchHypernyms returned. The service may
2294
+ # return fewer than this value. If unspecified, a page size of 50 will be
2295
+ # used. The maximum value is 1000; values above 1000 will be coerced to 1000.
2296
+ # @!attribute [rw] page_token
2297
+ # @return [::String]
2298
+ # A page token, received from a previous `SearchHypernym` call.
2299
+ # Provide this to retrieve the subsequent page.
2300
+ #
2301
+ # When paginating, all other parameters provided to
2302
+ # `SearchHypernym` must match the call that provided the page
2303
+ # token.
2304
+ class ListSearchHypernymsRequest
2305
+ include ::Google::Protobuf::MessageExts
2306
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2307
+ end
2308
+
2309
+ # Response message for listing SearchHypernyms.
2310
+ # @!attribute [rw] search_hypernyms
2311
+ # @return [::Array<::Google::Cloud::VisionAI::V1::SearchHypernym>]
2312
+ # The SearchHypernyms from the specified corpus.
2313
+ # @!attribute [rw] next_page_token
2314
+ # @return [::String]
2315
+ # A token, which can be sent as `page_token` to retrieve the next page.
2316
+ # If this field is omitted, there are no subsequent pages.
2317
+ class ListSearchHypernymsResponse
2318
+ include ::Google::Protobuf::MessageExts
2319
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2320
+ end
2321
+
2322
+ # Central configuration for custom search criteria.
2323
+ # @!attribute [rw] mapped_fields
2324
+ # @return [::Array<::String>]
2325
+ # Each mapped_field corresponds to a UGA key. To understand how this property
2326
+ # works, take the following example. In the SearchConfig table, the
2327
+ # user adds this entry:
2328
+ # search_config {
2329
+ # name: "person"
2330
+ # search_criteria_property {
2331
+ # mapped_fields: "player"
2332
+ # mapped_fields: "coach"
2333
+ # }
2334
+ # }
2335
+ #
2336
+ # Now, when a user issues a query like:
2337
+ # criteria {
2338
+ # field: "person"
2339
+ # text_array {
2340
+ # txt_values: "Tom Brady"
2341
+ # txt_values: "Bill Belichick"
2342
+ # }
2343
+ # }
2344
+ #
2345
+ # MWH search will return search documents where (player=Tom Brady ||
2346
+ # coach=Tom Brady || player=Bill Belichick || coach=Bill Belichick).
2347
+ class SearchCriteriaProperty
2348
+ include ::Google::Protobuf::MessageExts
2349
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2350
+ end
2351
+
2352
+ # Definition of a single value with generic type.
2353
+ # @!attribute [rw] string_value
2354
+ # @return [::String]
2355
+ # String type value.
2356
+ # @!attribute [rw] integer_value
2357
+ # @return [::Integer]
2358
+ # Integer type value.
2359
+ # @!attribute [rw] datetime_value
2360
+ # @return [::Google::Type::DateTime]
2361
+ # Datetime type value.
2362
+ class FacetValue
2363
+ include ::Google::Protobuf::MessageExts
2364
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2365
+ end
2366
+
2367
+ # Holds the facet value, selections state, and metadata.
2368
+ # @!attribute [rw] value
2369
+ # @return [::Google::Cloud::VisionAI::V1::FacetValue]
2370
+ # Singular value.
2371
+ # @!attribute [rw] range
2372
+ # @return [::Google::Cloud::VisionAI::V1::FacetBucket::Range]
2373
+ # Range value.
2374
+ # @!attribute [rw] selected
2375
+ # @return [::Boolean]
2376
+ # Whether one facet bucket is selected. This field represents user's facet
2377
+ # selection. It is set by frontend in SearchVideosRequest.
2378
+ class FacetBucket
2379
+ include ::Google::Protobuf::MessageExts
2380
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2381
+
2382
+ # The range of values [start, end) for which faceting is applied.
2383
+ # @!attribute [rw] start
2384
+ # @return [::Google::Cloud::VisionAI::V1::FacetValue]
2385
+ # Start of the range. Non-existence indicates some bound (e.g. -inf).
2386
+ # @!attribute [rw] end
2387
+ # @return [::Google::Cloud::VisionAI::V1::FacetValue]
2388
+ # End of the range. Non-existence indicates some bound (e.g. inf).
2389
+ class Range
2390
+ include ::Google::Protobuf::MessageExts
2391
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2392
+ end
2393
+ end
2394
+
2395
+ # A group of facet buckets to be passed back and forth between backend &
2396
+ # frontend.
2397
+ # @!attribute [rw] facet_id
2398
+ # @return [::String]
2399
+ # Unique id of the facet group.
2400
+ # @!attribute [rw] display_name
2401
+ # @return [::String]
2402
+ # Display name of the facet. To be used by UI for facet rendering.
2403
+ # @!attribute [rw] buckets
2404
+ # @return [::Array<::Google::Cloud::VisionAI::V1::FacetBucket>]
2405
+ # Buckets associated with the facet. E.g. for "Team" facet, the bucket
2406
+ # can be 49ers, patriots, etc.
2407
+ # @!attribute [rw] bucket_type
2408
+ # @return [::Google::Cloud::VisionAI::V1::FacetBucketType]
2409
+ # Facet bucket type.
2410
+ # @!attribute [rw] fetch_matched_annotations
2411
+ # @return [::Boolean]
2412
+ # If true, return query matched annotations for this facet group's selection.
2413
+ # This option is only applicable for facets based on partition level
2414
+ # annotations. It supports the following facet values:
2415
+ # - INTEGER
2416
+ # - STRING (DataSchema.SearchStrategy.EXACT_SEARCH only)
2417
+ class FacetGroup
2418
+ include ::Google::Protobuf::MessageExts
2419
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2420
+ end
2421
+
2422
+ # Request message for IngestAsset API.
2423
+ # @!attribute [rw] config
2424
+ # @return [::Google::Cloud::VisionAI::V1::IngestAssetRequest::Config]
2425
+ # Provides information for the data and the asset resource name that the
2426
+ # data belongs to. The first `IngestAssetRequest` message must only contain
2427
+ # a `Config` message.
2428
+ # @!attribute [rw] time_indexed_data
2429
+ # @return [::Google::Cloud::VisionAI::V1::IngestAssetRequest::TimeIndexedData]
2430
+ # Data to be ingested.
2431
+ class IngestAssetRequest
2432
+ include ::Google::Protobuf::MessageExts
2433
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2434
+
2435
+ # Configuration for the data.
2436
+ # @!attribute [rw] video_type
2437
+ # @return [::Google::Cloud::VisionAI::V1::IngestAssetRequest::Config::VideoType]
2438
+ # Type information for video data.
2439
+ # @!attribute [rw] asset
2440
+ # @return [::String]
2441
+ # Required. The resource name of the asset that the ingested data belongs
2442
+ # to.
2443
+ class Config
2444
+ include ::Google::Protobuf::MessageExts
2445
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2446
+
2447
+ # Type information for video data.
2448
+ # @!attribute [rw] container_format
2449
+ # @return [::Google::Cloud::VisionAI::V1::IngestAssetRequest::Config::VideoType::ContainerFormat]
2450
+ # Container format of the video data.
2451
+ class VideoType
2452
+ include ::Google::Protobuf::MessageExts
2453
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2454
+
2455
+ # Container format of the video.
2456
+ module ContainerFormat
2457
+ # The default type, not supposed to be used.
2458
+ CONTAINER_FORMAT_UNSPECIFIED = 0
2459
+
2460
+ # Mp4 container format.
2461
+ CONTAINER_FORMAT_MP4 = 1
2462
+ end
2463
+ end
2464
+ end
2465
+
2466
+ # Contains the data and the corresponding time range this data is for.
2467
+ # @!attribute [rw] data
2468
+ # @return [::String]
2469
+ # Data to be ingested.
2470
+ # @!attribute [rw] temporal_partition
2471
+ # @return [::Google::Cloud::VisionAI::V1::Partition::TemporalPartition]
2472
+ # Time range of the data.
2473
+ class TimeIndexedData
2474
+ include ::Google::Protobuf::MessageExts
2475
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2476
+ end
2477
+ end
2478
+
2479
+ # Response message for IngestAsset API.
2480
+ # @!attribute [rw] successfully_ingested_partition
2481
+ # @return [::Google::Cloud::VisionAI::V1::Partition::TemporalPartition]
2482
+ # Time range of the data that has been successfully ingested.
2483
+ class IngestAssetResponse
2484
+ include ::Google::Protobuf::MessageExts
2485
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2486
+ end
2487
+
2488
+ # Request message for ClipAsset API.
2489
+ # @!attribute [rw] name
2490
+ # @return [::String]
2491
+ # Required. The resource name of the asset to request clips for.
2492
+ # Format:
2493
+ # `projects/{project_number}/locations/{location_id}/corpora/{corpus_id}/assets/{asset_id}`
2494
+ # @!attribute [rw] temporal_partition
2495
+ # @return [::Google::Cloud::VisionAI::V1::Partition::TemporalPartition]
2496
+ # Required. The time range to request clips for.
2497
+ class ClipAssetRequest
2498
+ include ::Google::Protobuf::MessageExts
2499
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2500
+ end
2501
+
2502
+ # Response message for ClipAsset API.
2503
+ # @!attribute [rw] time_indexed_uris
2504
+ # @return [::Array<::Google::Cloud::VisionAI::V1::ClipAssetResponse::TimeIndexedUri>]
2505
+ # A list of signed uris to download the video clips that cover the requested
2506
+ # time range ordered by time.
2507
+ class ClipAssetResponse
2508
+ include ::Google::Protobuf::MessageExts
2509
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2510
+
2511
+ # Signed uri with corresponding time range.
2512
+ # @!attribute [rw] temporal_partition
2513
+ # @return [::Google::Cloud::VisionAI::V1::Partition::TemporalPartition]
2514
+ # Time range of the video that the uri is for.
2515
+ # @!attribute [rw] uri
2516
+ # @return [::String]
2517
+ # Signed uri to download the video clip.
2518
+ class TimeIndexedUri
2519
+ include ::Google::Protobuf::MessageExts
2520
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2521
+ end
2522
+ end
2523
+
2524
+ # Request message for GenerateHlsUri API.
2525
+ # @!attribute [rw] name
2526
+ # @return [::String]
2527
+ # Required. The resource name of the asset to request clips for.
2528
+ # Format:
2529
+ # `projects/{project_number}/locations/{location_id}/corpora/{corpus_id}/assets/{asset_id}`
2530
+ # @!attribute [rw] temporal_partitions
2531
+ # @return [::Array<::Google::Cloud::VisionAI::V1::Partition::TemporalPartition>]
2532
+ # The time range to request clips for. Will be ignored if `get_live_view` is
2533
+ # set to True. The total time range requested should be smaller than 24h.
2534
+ # @!attribute [rw] live_view_enabled
2535
+ # @return [::Boolean]
2536
+ # Option to exclusively show a livestream of the asset with up to 3 minutes
2537
+ # of backlog data.
2538
+ class GenerateHlsUriRequest
2539
+ include ::Google::Protobuf::MessageExts
2540
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2541
+ end
2542
+
2543
+ # Response message for GenerateHlsUri API.
2544
+ # @!attribute [rw] uri
2545
+ # @return [::String]
2546
+ # A signed uri to download the HLS manifest corresponding to the requested
2547
+ # times.
2548
+ # @!attribute [rw] temporal_partitions
2549
+ # @return [::Array<::Google::Cloud::VisionAI::V1::Partition::TemporalPartition>]
2550
+ # A list of temporal partitions of the content returned in the order they
2551
+ # appear in the stream.
2552
+ class GenerateHlsUriResponse
2553
+ include ::Google::Protobuf::MessageExts
2554
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2555
+ end
2556
+
2557
+ # Request message for SearchAssets.
2558
+ # @!attribute [rw] schema_key_sorting_strategy
2559
+ # @return [::Google::Cloud::VisionAI::V1::SchemaKeySortingStrategy]
2560
+ # Sort by the value under the data schema key.
2561
+ # @!attribute [rw] corpus
2562
+ # @return [::String]
2563
+ # Required. The parent corpus to search.
2564
+ # Format: `projects/{project_id}/locations/{location_id}/corpora/{corpus_id}`
2565
+ # @!attribute [rw] page_size
2566
+ # @return [::Integer]
2567
+ # The number of results to be returned in this page. If it's 0, the server
2568
+ # will decide the appropriate page_size.
2569
+ # @!attribute [rw] page_token
2570
+ # @return [::String]
2571
+ # The continuation token to fetch the next page. If empty, it means it is
2572
+ # fetching the first page.
2573
+ # @!attribute [rw] content_time_ranges
2574
+ # @return [::Google::Cloud::VisionAI::V1::DateTimeRangeArray]
2575
+ # Time ranges that matching video content must fall within. If no ranges are
2576
+ # provided, there will be no time restriction. This field is treated just
2577
+ # like the criteria below, but defined separately for convenience as it is
2578
+ # used frequently. Note that if the end_time is in the future, it will be
2579
+ # clamped to the time the request was received.
2580
+ # @!attribute [rw] criteria
2581
+ # @return [::Array<::Google::Cloud::VisionAI::V1::Criteria>]
2582
+ # Criteria applied to search results.
2583
+ # @!attribute [rw] facet_selections
2584
+ # @return [::Array<::Google::Cloud::VisionAI::V1::FacetGroup>]
2585
+ # Stores most recent facet selection state. Only facet groups with user's
2586
+ # selection will be presented here. Selection state is either selected or
2587
+ # unselected. Only selected facet buckets will be used as search criteria.
2588
+ # @!attribute [rw] result_annotation_keys
2589
+ # @return [::Array<::String>]
2590
+ # A list of annotation keys to specify the annotations to be retrieved and
2591
+ # returned with each search result.
2592
+ # Annotation granularity must be GRANULARITY_ASSET_LEVEL and its search
2593
+ # strategy must not be NO_SEARCH.
2594
+ # @!attribute [rw] search_query
2595
+ # @return [::String]
2596
+ # Global search query. Allows user to search assets without needing to
2597
+ # specify which field the value belongs to.
2598
+ class SearchAssetsRequest
2599
+ include ::Google::Protobuf::MessageExts
2600
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2601
+ end
2602
+
2603
+ # Request message for SearchIndexEndpoint.
2604
+ # @!attribute [rw] image_query
2605
+ # @return [::Google::Cloud::VisionAI::V1::ImageQuery]
2606
+ # An image-only query.
2607
+ # @!attribute [rw] text_query
2608
+ # @return [::String]
2609
+ # A text-only query.
2610
+ # @!attribute [rw] index_endpoint
2611
+ # @return [::String]
2612
+ # Required. The index endpoint to search.
2613
+ # Format:
2614
+ # `projects/{project_id}/locations/{location_id}/indexEndpoints/{index_endpoint_id}`
2615
+ # @!attribute [rw] criteria
2616
+ # @return [::Array<::Google::Cloud::VisionAI::V1::Criteria>]
2617
+ # Criteria applied to search results.
2618
+ # @!attribute [rw] exclusion_criteria
2619
+ # @return [::Array<::Google::Cloud::VisionAI::V1::Criteria>]
2620
+ # Criteria to exclude from search results.
2621
+ # Note that `fetch_matched_annotations` will be ignored.
2622
+ # @!attribute [rw] page_size
2623
+ # @return [::Integer]
2624
+ # Requested page size. API may return fewer results than requested.
2625
+ # If negative, INVALID_ARGUMENT error will be returned.
2626
+ # If unspecified or 0, API will pick a default size, which is 10.
2627
+ # If the requested page size is larger than the maximum size, API will pick
2628
+ # the maximum size, which is 100.
2629
+ # @!attribute [rw] page_token
2630
+ # @return [::String]
2631
+ # The continuation token to fetch the next page. If empty, it means it is
2632
+ # fetching the first page.
2633
+ class SearchIndexEndpointRequest
2634
+ include ::Google::Protobuf::MessageExts
2635
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2636
+ end
2637
+
2638
+ # Image query for search endpoint request.
2639
+ # @!attribute [rw] input_image
2640
+ # @return [::String]
2641
+ # Input image in raw bytes.
2642
+ # @!attribute [rw] asset
2643
+ # @return [::String]
2644
+ # Resource name of the asset. Only supported in IMAGE corpus type.
2645
+ # Format:
2646
+ # `projects/{project_number}/locations/{location_id}/corpora/{corpus_id}/assets/{asset_id}`
2647
+ class ImageQuery
2648
+ include ::Google::Protobuf::MessageExts
2649
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2650
+ end
2651
+
2652
+ # A strategy to specify how to sort by data schema key.
2653
+ # @!attribute [rw] options
2654
+ # @return [::Array<::Google::Cloud::VisionAI::V1::SchemaKeySortingStrategy::Option>]
2655
+ # Options in the front have high priority than those in the back.
2656
+ class SchemaKeySortingStrategy
2657
+ include ::Google::Protobuf::MessageExts
2658
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2659
+
2660
+ # Option for one data schema key.
2661
+ # @!attribute [rw] data_schema_key
2662
+ # @return [::String]
2663
+ # The data used to sort.
2664
+ # @!attribute [rw] sort_decreasing
2665
+ # @return [::Boolean]
2666
+ # Whether to sort in decreasing order or increasing order.
2667
+ # By default, results are sorted in incresing order.
2668
+ # @!attribute [rw] aggregate_method
2669
+ # @return [::Google::Cloud::VisionAI::V1::SchemaKeySortingStrategy::Option::AggregateMethod]
2670
+ # Aggregate method for the current data schema key.
2671
+ class Option
2672
+ include ::Google::Protobuf::MessageExts
2673
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2674
+
2675
+ # When one result has multiple values with the same key, specify
2676
+ # which value is used to sort. By default, AGGREGATE_METHOD_LARGEST
2677
+ # is used when results are sorted in decreasing order,
2678
+ # AGGREGATE_METHOD_SMALLEST is used when results are sorted in
2679
+ # incresing order.
2680
+ module AggregateMethod
2681
+ # The unspecified aggregate method will be overwritten as mentioned
2682
+ # above.
2683
+ AGGREGATE_METHOD_UNSPECIFIED = 0
2684
+
2685
+ # Take the (lexicographical or numerical) largest value to sort.
2686
+ AGGREGATE_METHOD_LARGEST = 1
2687
+
2688
+ # Take the (lexicographical or numerical) smallest value to sort.
2689
+ AGGREGATE_METHOD_SMALLEST = 2
2690
+ end
2691
+ end
2692
+ end
2693
+
2694
+ # The metadata for DeleteAsset API that embeds in
2695
+ # {::Google::Longrunning::Operation#metadata metadata} field.
2696
+ class DeleteAssetMetadata
2697
+ include ::Google::Protobuf::MessageExts
2698
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2699
+ end
2700
+
2701
+ # Stores the criteria-annotation matching results for each search result item.
2702
+ # @!attribute [rw] criteria
2703
+ # @return [::Google::Cloud::VisionAI::V1::Criteria]
2704
+ # The criteria used for matching. It can be an input search criteria or a
2705
+ # criteria converted from a facet selection.
2706
+ # @!attribute [rw] matched_annotations
2707
+ # @return [::Array<::Google::Cloud::VisionAI::V1::Annotation>]
2708
+ # Matched annotations for the criteria.
2709
+ # @!attribute [rw] status
2710
+ # @return [::Google::Rpc::Status]
2711
+ # Status of the match result. Possible values:
2712
+ # FAILED_PRECONDITION - the criteria is not eligible for match.
2713
+ # OK - matching is performed.
2714
+ class AnnotationMatchingResult
2715
+ include ::Google::Protobuf::MessageExts
2716
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2717
+ end
2718
+
2719
+ # Search result contains asset name and corresponding time ranges.
2720
+ # @!attribute [rw] asset
2721
+ # @return [::String]
2722
+ # The resource name of the asset.
2723
+ # Format:
2724
+ # `projects/{project_number}/locations/{location_id}/corpora/{corpus_id}/assets/{asset_id}`
2725
+ # @!attribute [rw] segments
2726
+ # @deprecated This field is deprecated and may be removed in the next major version update.
2727
+ # @return [::Array<::Google::Cloud::VisionAI::V1::Partition::TemporalPartition>]
2728
+ # The matched asset segments.
2729
+ # Deprecated: please use singular `segment` field.
2730
+ # @!attribute [rw] segment
2731
+ # @return [::Google::Cloud::VisionAI::V1::Partition::TemporalPartition]
2732
+ # The matched asset segment.
2733
+ # @!attribute [rw] relevance
2734
+ # @return [::Float]
2735
+ # Relevance of this `SearchResultItem` to user search request.
2736
+ # Currently available only in Image Warehouse, and by default represents
2737
+ # cosine similarity. In the future can be other measures such as "dot
2738
+ # product" or "topicality" requested in the search request.
2739
+ # @!attribute [rw] requested_annotations
2740
+ # @return [::Array<::Google::Cloud::VisionAI::V1::Annotation>]
2741
+ # Search result annotations specified by result_annotation_keys in search
2742
+ # request.
2743
+ # @!attribute [rw] annotation_matching_results
2744
+ # @return [::Array<::Google::Cloud::VisionAI::V1::AnnotationMatchingResult>]
2745
+ # Criteria or facet-selection based annotation matching results associated to
2746
+ # this search result item. Only contains results for criteria or
2747
+ # facet_selections with fetch_matched_annotations=true.
2748
+ class SearchResultItem
2749
+ include ::Google::Protobuf::MessageExts
2750
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2751
+ end
2752
+
2753
+ # Response message for SearchAssets.
2754
+ # @!attribute [rw] search_result_items
2755
+ # @return [::Array<::Google::Cloud::VisionAI::V1::SearchResultItem>]
2756
+ # Returned search results.
2757
+ # @!attribute [rw] next_page_token
2758
+ # @return [::String]
2759
+ # The next-page continuation token.
2760
+ # @!attribute [rw] facet_results
2761
+ # @return [::Array<::Google::Cloud::VisionAI::V1::FacetGroup>]
2762
+ # Facet search results of a given query, which contains user's
2763
+ # already-selected facet values and updated facet search results.
2764
+ class SearchAssetsResponse
2765
+ include ::Google::Protobuf::MessageExts
2766
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2767
+ end
2768
+
2769
+ # Response message for SearchIndexEndpoint.
2770
+ # @!attribute [rw] search_result_items
2771
+ # @return [::Array<::Google::Cloud::VisionAI::V1::SearchResultItem>]
2772
+ # Returned search results.
2773
+ # @!attribute [rw] next_page_token
2774
+ # @return [::String]
2775
+ # The next-page continuation token.
2776
+ # If this field is omitted, there are no subsequent pages.
2777
+ class SearchIndexEndpointResponse
2778
+ include ::Google::Protobuf::MessageExts
2779
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2780
+ end
2781
+
2782
+ # Integer range type.
2783
+ # @!attribute [rw] start
2784
+ # @return [::Integer]
2785
+ # Start of the int range.
2786
+ # @!attribute [rw] end
2787
+ # @return [::Integer]
2788
+ # End of the int range.
2789
+ class IntRange
2790
+ include ::Google::Protobuf::MessageExts
2791
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2792
+ end
2793
+
2794
+ # Float range type.
2795
+ # @!attribute [rw] start
2796
+ # @return [::Float]
2797
+ # Start of the float range.
2798
+ # @!attribute [rw] end
2799
+ # @return [::Float]
2800
+ # End of the float range.
2801
+ class FloatRange
2802
+ include ::Google::Protobuf::MessageExts
2803
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2804
+ end
2805
+
2806
+ # A list of string-type values.
2807
+ # @!attribute [rw] txt_values
2808
+ # @return [::Array<::String>]
2809
+ # String type values.
2810
+ class StringArray
2811
+ include ::Google::Protobuf::MessageExts
2812
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2813
+ end
2814
+
2815
+ # A list of integer range values.
2816
+ # @!attribute [rw] int_ranges
2817
+ # @return [::Array<::Google::Cloud::VisionAI::V1::IntRange>]
2818
+ # Int range values.
2819
+ class IntRangeArray
2820
+ include ::Google::Protobuf::MessageExts
2821
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2822
+ end
2823
+
2824
+ # A list of float range values.
2825
+ # @!attribute [rw] float_ranges
2826
+ # @return [::Array<::Google::Cloud::VisionAI::V1::FloatRange>]
2827
+ # Float range values.
2828
+ class FloatRangeArray
2829
+ include ::Google::Protobuf::MessageExts
2830
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2831
+ end
2832
+
2833
+ # Datetime range type.
2834
+ # @!attribute [rw] start
2835
+ # @return [::Google::Type::DateTime]
2836
+ # Start date time.
2837
+ # @!attribute [rw] end
2838
+ # @return [::Google::Type::DateTime]
2839
+ # End data time.
2840
+ class DateTimeRange
2841
+ include ::Google::Protobuf::MessageExts
2842
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2843
+ end
2844
+
2845
+ # A list of datetime range values.
2846
+ # @!attribute [rw] date_time_ranges
2847
+ # @return [::Array<::Google::Cloud::VisionAI::V1::DateTimeRange>]
2848
+ # Date time ranges.
2849
+ class DateTimeRangeArray
2850
+ include ::Google::Protobuf::MessageExts
2851
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2852
+ end
2853
+
2854
+ # Representation of a circle area.
2855
+ # @!attribute [rw] latitude
2856
+ # @return [::Float]
2857
+ # Latitude of circle area's center. Degrees [-90 .. 90]
2858
+ # @!attribute [rw] longitude
2859
+ # @return [::Float]
2860
+ # Longitude of circle area's center. Degrees [-180 .. 180]
2861
+ # @!attribute [rw] radius_meter
2862
+ # @return [::Float]
2863
+ # Radius of the circle area in meters.
2864
+ class CircleArea
2865
+ include ::Google::Protobuf::MessageExts
2866
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2867
+ end
2868
+
2869
+ # A list of locations.
2870
+ # @!attribute [rw] circle_areas
2871
+ # @return [::Array<::Google::Cloud::VisionAI::V1::CircleArea>]
2872
+ # A list of circle areas.
2873
+ class GeoLocationArray
2874
+ include ::Google::Protobuf::MessageExts
2875
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2876
+ end
2877
+
2878
+ # @!attribute [rw] value
2879
+ # @return [::Boolean]
2880
+ class BoolValue
2881
+ include ::Google::Protobuf::MessageExts
2882
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2883
+ end
2884
+
2885
+ # Filter criteria applied to current search results.
2886
+ # @!attribute [rw] text_array
2887
+ # @return [::Google::Cloud::VisionAI::V1::StringArray]
2888
+ # The text values associated with the field.
2889
+ # @!attribute [rw] int_range_array
2890
+ # @return [::Google::Cloud::VisionAI::V1::IntRangeArray]
2891
+ # The integer ranges associated with the field.
2892
+ # @!attribute [rw] float_range_array
2893
+ # @return [::Google::Cloud::VisionAI::V1::FloatRangeArray]
2894
+ # The float ranges associated with the field.
2895
+ # @!attribute [rw] date_time_range_array
2896
+ # @return [::Google::Cloud::VisionAI::V1::DateTimeRangeArray]
2897
+ # The datetime ranges associated with the field.
2898
+ # @!attribute [rw] geo_location_array
2899
+ # @return [::Google::Cloud::VisionAI::V1::GeoLocationArray]
2900
+ # Geo Location array.
2901
+ # @!attribute [rw] bool_value
2902
+ # @return [::Google::Cloud::VisionAI::V1::BoolValue]
2903
+ # A Boolean value.
2904
+ # @!attribute [rw] field
2905
+ # @return [::String]
2906
+ # The UGA field or ML field to apply filtering criteria.
2907
+ # @!attribute [rw] fetch_matched_annotations
2908
+ # @return [::Boolean]
2909
+ # If true, return query matched annotations for this criteria.
2910
+ # This option is only applicable for inclusion criteria, i.e., not exclusion
2911
+ # criteria, with partition level annotations. It supports the following data
2912
+ # types:
2913
+ # - INTEGER
2914
+ # - FLOAT
2915
+ # - STRING (DataSchema.SearchStrategy.EXACT_SEARCH only)
2916
+ # - BOOLEAN
2917
+ class Criteria
2918
+ include ::Google::Protobuf::MessageExts
2919
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2920
+ end
2921
+
2922
+ # Partition to specify the partition in time and space for sub-asset level
2923
+ # annotation.
2924
+ # @!attribute [rw] temporal_partition
2925
+ # @return [::Google::Cloud::VisionAI::V1::Partition::TemporalPartition]
2926
+ # Partition of asset in time.
2927
+ # @!attribute [rw] spatial_partition
2928
+ # @return [::Google::Cloud::VisionAI::V1::Partition::SpatialPartition]
2929
+ # Partition of asset in space.
2930
+ # @!attribute [rw] relative_temporal_partition
2931
+ # @return [::Google::Cloud::VisionAI::V1::Partition::RelativeTemporalPartition]
2932
+ # Partition of asset in time.
2933
+ class Partition
2934
+ include ::Google::Protobuf::MessageExts
2935
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2936
+
2937
+ # Partition of asset in UTC Epoch time. Supported by STREAM_VIDEO corpus
2938
+ # type.
2939
+ # @!attribute [rw] start_time
2940
+ # @return [::Google::Protobuf::Timestamp]
2941
+ # Start time of the partition.
2942
+ # @!attribute [rw] end_time
2943
+ # @return [::Google::Protobuf::Timestamp]
2944
+ # End time of the partition.
2945
+ class TemporalPartition
2946
+ include ::Google::Protobuf::MessageExts
2947
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2948
+ end
2949
+
2950
+ # Partition of asset in space.
2951
+ # @!attribute [rw] x_min
2952
+ # @return [::Integer]
2953
+ # The minimum x coordinate value.
2954
+ # @!attribute [rw] y_min
2955
+ # @return [::Integer]
2956
+ # The minimum y coordinate value.
2957
+ # @!attribute [rw] x_max
2958
+ # @return [::Integer]
2959
+ # The maximum x coordinate value.
2960
+ # @!attribute [rw] y_max
2961
+ # @return [::Integer]
2962
+ # The maximum y coordinate value.
2963
+ class SpatialPartition
2964
+ include ::Google::Protobuf::MessageExts
2965
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2966
+ end
2967
+
2968
+ # Partition of asset in relative time. Supported by VIDEO_ON_DEMAND corpus
2969
+ # type.
2970
+ # @!attribute [rw] start_offset
2971
+ # @return [::Google::Protobuf::Duration]
2972
+ # Start time offset of the partition.
2973
+ # @!attribute [rw] end_offset
2974
+ # @return [::Google::Protobuf::Duration]
2975
+ # End time offset of the partition.
2976
+ class RelativeTemporalPartition
2977
+ include ::Google::Protobuf::MessageExts
2978
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2979
+ end
2980
+ end
2981
+
2982
+ # Different types for a facet bucket.
2983
+ module FacetBucketType
2984
+ # Unspecified type.
2985
+ FACET_BUCKET_TYPE_UNSPECIFIED = 0
2986
+
2987
+ # Value type.
2988
+ FACET_BUCKET_TYPE_VALUE = 1
2989
+
2990
+ # Datetime type.
2991
+ FACET_BUCKET_TYPE_DATETIME = 2
2992
+
2993
+ # Fixed Range type.
2994
+ FACET_BUCKET_TYPE_FIXED_RANGE = 3
2995
+
2996
+ # Custom Range type.
2997
+ FACET_BUCKET_TYPE_CUSTOM_RANGE = 4
2998
+ end
2999
+ end
3000
+ end
3001
+ end
3002
+ end