google-cloud-vision_ai-v1 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 125b7f4c100f03758e1def2cde1fb0a42e6497d782201f48303d34f5ecabd94e
4
- data.tar.gz: b010e7a3a960c8bacc6b75bbddc66217e1b65485a6460c7ea30bb50df0bfe00d
3
+ metadata.gz: a47e6abb0e98d91829f4cf5ae11c17c939d75bc97d398b3005078a3cd75023d3
4
+ data.tar.gz: 49c2608a295ebce6a4161e4b279489212e1a13a5ce9a0dec1774e8972f23b0bc
5
5
  SHA512:
6
- metadata.gz: dee75044ec83caa86aadf6a6aa225e599fc3f858ce1fdc52f4b0457e169160f452aa4055200bf0d67042f67ff02cf9639d4d9b4001d65fab611f2a13be3d83d2
7
- data.tar.gz: 923c98427667de4e41807a43dc12a13ab64fffabc709394f6677cc5bff2677cdca4dc94b4b63dcccfbaa4c577b3024dd44c2a207fcc291890f0b2c54844c51e4
6
+ metadata.gz: b8f89c080ec0fc300eb0adc2a030f9f4693d48d9cee23bb7839aa8bfc22143f498454b2e9e5ed1c17136d43c62fa0e57488d422d53449fd6a26230aed3828407
7
+ data.tar.gz: a178380b0073bf6426b9ec4d6a9a9428d466b488d6bbd200eac115329ccb19fb64e58646189c6b9472891ed2fd02f73d590f9a12d2d39db102d928b03f8d5eae
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module VisionAI
23
23
  module V1
24
- VERSION = "0.1.0"
24
+ VERSION = "0.2.0"
25
25
  end
26
26
  end
27
27
  end
@@ -3410,6 +3410,7 @@ module Google
3410
3410
  end
3411
3411
 
3412
3412
  ##
3413
+ # Supported by STREAM_VIDEO corpus type.
3413
3414
  # Generates clips for downloading. The api takes in a time range, and
3414
3415
  # generates a clip of the first content available after start_time and
3415
3416
  # before end_time, which may overflow beyond these bounds.
@@ -3092,6 +3092,7 @@ module Google
3092
3092
  end
3093
3093
 
3094
3094
  ##
3095
+ # Supported by STREAM_VIDEO corpus type.
3095
3096
  # Generates clips for downloading. The api takes in a time range, and
3096
3097
  # generates a clip of the first content available after start_time and
3097
3098
  # before end_time, which may overflow beyond these bounds.
@@ -20,7 +20,7 @@ require 'google/rpc/status_pb'
20
20
  require 'google/type/datetime_pb'
21
21
 
22
22
 
23
- descriptor_data = "\n(google/cloud/visionai/v1/warehouse.proto\x12\x18google.cloud.visionai.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a%google/cloud/visionai/v1/common.proto\x1a#google/longrunning/operations.proto\x1a\x19google/protobuf/any.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a google/protobuf/field_mask.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17google/rpc/status.proto\x1a\x1agoogle/type/datetime.proto\"\xaa\x01\n\x12\x43reateAssetRequest\x12\x36\n\x06parent\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1evisionai.googleapis.com/Corpus\x12\x33\n\x05\x61sset\x18\x02 \x01(\x0b\x32\x1f.google.cloud.visionai.v1.AssetB\x03\xe0\x41\x02\x12\x1a\n\x08\x61sset_id\x18\x03 \x01(\tB\x03\xe0\x41\x01H\x00\x88\x01\x01\x42\x0b\n\t_asset_id\"F\n\x0fGetAssetRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Asset\"\x81\x01\n\x11ListAssetsRequest\x12\x35\n\x06parent\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\x12\x1dvisionai.googleapis.com/Asset\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x0e\n\x06\x66ilter\x18\x05 \x01(\t\"^\n\x12ListAssetsResponse\x12/\n\x06\x61ssets\x18\x01 \x03(\x0b\x32\x1f.google.cloud.visionai.v1.Asset\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"z\n\x12UpdateAssetRequest\x12\x33\n\x05\x61sset\x18\x01 \x01(\x0b\x32\x1f.google.cloud.visionai.v1.AssetB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\"I\n\x12\x44\x65leteAssetRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Asset\"\x97\x02\n\x0b\x41ssetSource\x12P\n\x10\x61sset_gcs_source\x18\x01 \x01(\x0b\x32\x34.google.cloud.visionai.v1.AssetSource.AssetGcsSourceH\x00\x12T\n\x12\x61sset_content_data\x18\x02 \x01(\x0b\x32\x36.google.cloud.visionai.v1.AssetSource.AssetContentDataH\x00\x1a!\n\x0e\x41ssetGcsSource\x12\x0f\n\x07gcs_uri\x18\x01 \x01(\t\x1a.\n\x10\x41ssetContentData\x12\x1a\n\x12\x61sset_content_data\x18\x01 \x01(\x0c\x42\r\n\x0bsource_form\"\x86\x01\n\x12UploadAssetRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Asset\x12;\n\x0c\x61sset_source\x18\x02 \x01(\x0b\x32%.google.cloud.visionai.v1.AssetSource\"\x15\n\x13UploadAssetResponse\"v\n\x13UploadAssetMetadata\x12.\n\nstart_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12/\n\x0bupdate_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"R\n\x1bGenerateRetrievalUrlRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Asset\"2\n\x1cGenerateRetrievalUrlResponse\x12\x12\n\nsigned_uri\x18\x01 \x01(\t\"\x86\x02\n\x05\x41sset\x12\x0c\n\x04name\x18\x01 \x01(\t\x12&\n\x03ttl\x18\x02 \x01(\x0b\x32\x19.google.protobuf.Duration\x12S\n\x10\x61sset_gcs_source\x18\x04 \x01(\x0b\x32\x34.google.cloud.visionai.v1.AssetSource.AssetGcsSourceB\x03\xe0\x41\x03:r\xea\x41o\n\x1dvisionai.googleapis.com/Asset\x12Nprojects/{project_number}/locations/{location}/corpora/{corpus}/assets/{asset}\"J\n\x13\x41nalyzeAssetRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Asset\"\xe1\x03\n\x14\x41nalyzeAssetMetadata\x12V\n\x0f\x61nalysis_status\x18\x01 \x03(\x0b\x32=.google.cloud.visionai.v1.AnalyzeAssetMetadata.AnalysisStatus\x12.\n\nstart_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12/\n\x0bupdate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a\x8f\x02\n\x0e\x41nalysisStatus\x12R\n\x05state\x18\x02 \x01(\x0e\x32\x43.google.cloud.visionai.v1.AnalyzeAssetMetadata.AnalysisStatus.State\x12\x16\n\x0estatus_message\x18\x03 \x01(\t\x12\x45\n\x11search_capability\x18\x04 \x01(\x0b\x32*.google.cloud.visionai.v1.SearchCapability\"J\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0f\n\x0bIN_PROGRESS\x10\x01\x12\r\n\tSUCCEEDED\x10\x02\x12\n\n\x06\x46\x41ILED\x10\x03\"\x16\n\x14\x41nalyzeAssetResponse\"\xb8\x01\n\x0eIndexingStatus\x12\x42\n\x05state\x18\x02 \x01(\x0e\x32..google.cloud.visionai.v1.IndexingStatus.StateB\x03\xe0\x41\x03\x12\x16\n\x0estatus_message\x18\x03 \x01(\t\"J\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0f\n\x0bIN_PROGRESS\x10\x01\x12\r\n\tSUCCEEDED\x10\x02\x12\n\n\x06\x46\x41ILED\x10\x03\"~\n\x11IndexAssetRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Asset\x12\x34\n\x05index\x18\x02 \x01(\tB%\xe0\x41\x01\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Index\"\xaf\x01\n\x12IndexAssetMetadata\x12\x38\n\x06status\x18\x04 \x01(\x0b\x32(.google.cloud.visionai.v1.IndexingStatus\x12.\n\nstart_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12/\n\x0bupdate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\x14\n\x12IndexAssetResponse\"\x84\x01\n\x17RemoveIndexAssetRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Asset\x12\x34\n\x05index\x18\x02 \x01(\tB%\xe0\x41\x01\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Index\"\xbe\x01\n\x18RemoveIndexAssetMetadata\x12\x41\n\x0findexing_status\x18\x01 \x01(\x0b\x32(.google.cloud.visionai.v1.IndexingStatus\x12.\n\nstart_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12/\n\x0bupdate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\x1a\n\x18RemoveIndexAssetResponse\"\xe6\x01\n\x0cIndexedAsset\x12\x34\n\x05index\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Index\x12\x34\n\x05\x61sset\x18\x02 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Asset\x12\x34\n\x0b\x63reate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x34\n\x0bupdate_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\"\x87\x01\n\x18ViewIndexedAssetsRequest\x12\x34\n\x05index\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Index\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x0e\n\x06\x66ilter\x18\x04 \x01(\t\"t\n\x19ViewIndexedAssetsResponse\x12>\n\x0eindexed_assets\x18\x01 \x03(\x0b\x32&.google.cloud.visionai.v1.IndexedAsset\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"a\n\x13\x43reateCorpusRequest\x12\x13\n\x06parent\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x35\n\x06\x63orpus\x18\x02 \x01(\x0b\x32 .google.cloud.visionai.v1.CorpusB\x03\xe0\x41\x02\"x\n\x14\x43reateCorpusMetadata\x12/\n\x0b\x63reate_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12/\n\x0bupdate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\x85\x01\n\x10SearchCapability\x12=\n\x04type\x18\x01 \x01(\x0e\x32/.google.cloud.visionai.v1.SearchCapability.Type\"2\n\x04Type\x12\x14\n\x10TYPE_UNSPECIFIED\x10\x00\x12\x14\n\x10\x45MBEDDING_SEARCH\x10\x01\"b\n\x17SearchCapabilitySetting\x12G\n\x13search_capabilities\x18\x01 \x03(\x0b\x32*.google.cloud.visionai.v1.SearchCapability\"c\n\x18\x43reateCollectionMetadata\x12G\n\x12operation_metadata\x18\x01 \x01(\x0b\x32+.google.cloud.visionai.v1.OperationMetadata\"\xc3\x01\n\x17\x43reateCollectionRequest\x12\x36\n\x06parent\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1evisionai.googleapis.com/Corpus\x12=\n\ncollection\x18\x02 \x01(\x0b\x32$.google.cloud.visionai.v1.CollectionB\x03\xe0\x41\x02\x12\x1f\n\rcollection_id\x18\x03 \x01(\tB\x03\xe0\x41\x01H\x00\x88\x01\x01\x42\x10\n\x0e_collection_id\"c\n\x18\x44\x65leteCollectionMetadata\x12G\n\x12operation_metadata\x18\x01 \x01(\x0b\x32+.google.cloud.visionai.v1.OperationMetadata\"S\n\x17\x44\x65leteCollectionRequest\x12\x38\n\x04name\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\n\"visionai.googleapis.com/Collection\"P\n\x14GetCollectionRequest\x12\x38\n\x04name\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\n\"visionai.googleapis.com/Collection\"\x89\x01\n\x17UpdateCollectionRequest\x12=\n\ncollection\x18\x01 \x01(\x0b\x32$.google.cloud.visionai.v1.CollectionB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\"{\n\x16ListCollectionsRequest\x12:\n\x06parent\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\x12\"visionai.googleapis.com/Collection\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"m\n\x17ListCollectionsResponse\x12\x39\n\x0b\x63ollections\x18\x01 \x03(\x0b\x32$.google.cloud.visionai.v1.Collection\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"W\n\x18\x41\x64\x64\x43ollectionItemRequest\x12;\n\x04item\x18\x01 \x01(\x0b\x32(.google.cloud.visionai.v1.CollectionItemB\x03\xe0\x41\x02\"S\n\x19\x41\x64\x64\x43ollectionItemResponse\x12\x36\n\x04item\x18\x01 \x01(\x0b\x32(.google.cloud.visionai.v1.CollectionItem\"Z\n\x1bRemoveCollectionItemRequest\x12;\n\x04item\x18\x01 \x01(\x0b\x32(.google.cloud.visionai.v1.CollectionItemB\x03\xe0\x41\x02\"V\n\x1cRemoveCollectionItemResponse\x12\x36\n\x04item\x18\x01 \x01(\x0b\x32(.google.cloud.visionai.v1.CollectionItem\"\x83\x01\n\x1aViewCollectionItemsRequest\x12>\n\ncollection\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\n\"visionai.googleapis.com/Collection\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"o\n\x1bViewCollectionItemsResponse\x12\x37\n\x05items\x18\x01 \x03(\x0b\x32(.google.cloud.visionai.v1.CollectionItem\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\xd8\x01\n\nCollection\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12\x19\n\x0c\x64isplay_name\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x18\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x03\xe0\x41\x01:\x81\x01\xea\x41~\n\"visionai.googleapis.com/Collection\x12Xprojects/{project_number}/locations/{location}/corpora/{corpus}/collections/{collection}\"\xd7\x01\n\x0e\x43ollectionItem\x12>\n\ncollection\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\n\"visionai.googleapis.com/Collection\x12@\n\x04type\x18\x02 \x01(\x0e\x32-.google.cloud.visionai.v1.CollectionItem.TypeB\x03\xe0\x41\x02\x12\x1a\n\ritem_resource\x18\x03 \x01(\tB\x03\xe0\x41\x02\"\'\n\x04Type\x12\x14\n\x10TYPE_UNSPECIFIED\x10\x00\x12\t\n\x05\x41SSET\x10\x01\"\x98\x01\n\x12\x43reateIndexRequest\x12\x36\n\x06parent\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1evisionai.googleapis.com/Corpus\x12\x15\n\x08index_id\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x33\n\x05index\x18\x03 \x01(\x0b\x32\x1f.google.cloud.visionai.v1.IndexB\x03\xe0\x41\x02\"^\n\x13\x43reateIndexMetadata\x12G\n\x12operation_metadata\x18\x01 \x01(\x0b\x32+.google.cloud.visionai.v1.OperationMetadata\"\x7f\n\x12UpdateIndexRequest\x12\x33\n\x05index\x18\x01 \x01(\x0b\x32\x1f.google.cloud.visionai.v1.IndexB\x03\xe0\x41\x02\x12\x34\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x02\"^\n\x13UpdateIndexMetadata\x12G\n\x12operation_metadata\x18\x01 \x01(\x0b\x32+.google.cloud.visionai.v1.OperationMetadata\"F\n\x0fGetIndexRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Index\"r\n\x12ListIndexesRequest\x12\x35\n\x06parent\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\x12\x1dvisionai.googleapis.com/Index\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"`\n\x13ListIndexesResponse\x12\x30\n\x07indexes\x18\x01 \x03(\x0b\x32\x1f.google.cloud.visionai.v1.Index\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"I\n\x12\x44\x65leteIndexRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Index\"\x15\n\x13\x44\x65leteIndexMetadata\"\xae\x04\n\x05Index\x12\x17\n\rentire_corpus\x18\t \x01(\x08H\x00\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12\x19\n\x0c\x64isplay_name\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x18\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x39\n\x05state\x18\x04 \x01(\x0e\x32%.google.cloud.visionai.v1.Index.StateB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x34\n\x0bupdate_time\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12O\n\x10\x64\x65ployed_indexes\x18\x08 \x03(\x0b\x32\x30.google.cloud.visionai.v1.DeployedIndexReferenceB\x03\xe0\x41\x03\"G\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0c\n\x08\x43REATING\x10\x01\x12\x0b\n\x07\x43REATED\x10\x02\x12\x0c\n\x08UPDATING\x10\x03:s\xea\x41p\n\x1dvisionai.googleapis.com/Index\x12Oprojects/{project_number}/locations/{location}/corpora/{corpus}/indexes/{index}B\x0e\n\x0c\x61sset_filter\"_\n\x16\x44\x65ployedIndexReference\x12\x45\n\x0eindex_endpoint\x18\x01 \x01(\tB-\xe0\x41\x05\xfa\x41\'\n%visionai.googleapis.com/IndexEndpoint\"\xc6\x03\n\x06\x43orpus\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x19\n\x0c\x64isplay_name\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x33\n\x0b\x64\x65\x66\x61ult_ttl\x18\x05 \x01(\x0b\x32\x19.google.protobuf.DurationB\x03\xe0\x41\x01\x12\x38\n\x04type\x18\x07 \x01(\x0e\x32%.google.cloud.visionai.v1.Corpus.TypeB\x03\xe0\x41\x01\x12T\n\x19search_capability_setting\x18\x08 \x01(\x0b\x32\x31.google.cloud.visionai.v1.SearchCapabilitySetting\"N\n\x04Type\x12\x14\n\x10TYPE_UNSPECIFIED\x10\x00\x12\x10\n\x0cSTREAM_VIDEO\x10\x01\x12\t\n\x05IMAGE\x10\x02\x12\x13\n\x0fVIDEO_ON_DEMAND\x10\x03:d\xea\x41\x61\n\x1evisionai.googleapis.com/Corpus\x12?projects/{project_number}/locations/{location}/corpora/{corpus}\"H\n\x10GetCorpusRequest\x12\x34\n\x04name\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1evisionai.googleapis.com/Corpus\"}\n\x13UpdateCorpusRequest\x12\x35\n\x06\x63orpus\x18\x01 \x01(\x0b\x32 .google.cloud.visionai.v1.CorpusB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\"`\n\x12ListCorporaRequest\x12\x13\n\x06parent\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x0e\n\x06\x66ilter\x18\x05 \x01(\t\"a\n\x13ListCorporaResponse\x12\x31\n\x07\x63orpora\x18\x01 \x03(\x0b\x32 .google.cloud.visionai.v1.Corpus\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"K\n\x13\x44\x65leteCorpusRequest\x12\x34\n\x04name\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1evisionai.googleapis.com/Corpus\"L\n\x14\x41nalyzeCorpusRequest\x12\x34\n\x04name\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1evisionai.googleapis.com/Corpus\"V\n\x15\x41nalyzeCorpusMetadata\x12=\n\x08metadata\x18\x01 \x01(\x0b\x32+.google.cloud.visionai.v1.OperationMetadata\"\x17\n\x15\x41nalyzeCorpusResponse\"\x91\x01\n\x17\x43reateDataSchemaRequest\x12\x36\n\x06parent\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1evisionai.googleapis.com/Corpus\x12>\n\x0b\x64\x61ta_schema\x18\x02 \x01(\x0b\x32$.google.cloud.visionai.v1.DataSchemaB\x03\xe0\x41\x02\"\xf6\x01\n\nDataSchema\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x10\n\x03key\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x43\n\x0eschema_details\x18\x03 \x01(\x0b\x32+.google.cloud.visionai.v1.DataSchemaDetails:\x82\x01\xea\x41\x7f\n\"visionai.googleapis.com/DataSchema\x12Yprojects/{project_number}/locations/{location}/corpora/{corpus}/dataSchemas/{data_schema}\"\xd4\x0c\n\x11\x44\x61taSchemaDetails\x12G\n\x04type\x18\x01 \x01(\x0e\x32\x34.google.cloud.visionai.v1.DataSchemaDetails.DataTypeH\x00\x88\x01\x01\x12T\n\x10proto_any_config\x18\x06 \x01(\x0b\x32:.google.cloud.visionai.v1.DataSchemaDetails.ProtoAnyConfig\x12K\n\x0blist_config\x18\x08 \x01(\x0b\x32\x36.google.cloud.visionai.v1.DataSchemaDetails.ListConfig\x12\x64\n\x18\x63ustomized_struct_config\x18\t \x01(\x0b\x32\x42.google.cloud.visionai.v1.DataSchemaDetails.CustomizedStructConfig\x12Q\n\x0bgranularity\x18\x05 \x01(\x0e\x32\x37.google.cloud.visionai.v1.DataSchemaDetails.GranularityH\x01\x88\x01\x01\x12S\n\x0fsearch_strategy\x18\x07 \x01(\x0b\x32:.google.cloud.visionai.v1.DataSchemaDetails.SearchStrategy\x1a\"\n\x0eProtoAnyConfig\x12\x10\n\x08type_uri\x18\x01 \x01(\t\x1aO\n\nListConfig\x12\x41\n\x0cvalue_schema\x18\x01 \x01(\x0b\x32+.google.cloud.visionai.v1.DataSchemaDetails\x1a\xe7\x01\n\x16\x43ustomizedStructConfig\x12k\n\rfield_schemas\x18\x01 \x03(\x0b\x32T.google.cloud.visionai.v1.DataSchemaDetails.CustomizedStructConfig.FieldSchemasEntry\x1a`\n\x11\x46ieldSchemasEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12:\n\x05value\x18\x02 \x01(\x0b\x32+.google.cloud.visionai.v1.DataSchemaDetails:\x02\x38\x01\x1a\xb7\x03\n\x0eSearchStrategy\x12p\n\x14search_strategy_type\x18\x01 \x01(\x0e\x32M.google.cloud.visionai.v1.DataSchemaDetails.SearchStrategy.SearchStrategyTypeH\x00\x88\x01\x01\x12\x81\x01\n\x1d\x63onfidence_score_index_config\x18\x02 \x01(\x0b\x32U.google.cloud.visionai.v1.DataSchemaDetails.SearchStrategy.ConfidenceScoreIndexConfigB\x03\xe0\x41\x01\x1aM\n\x1a\x43onfidenceScoreIndexConfig\x12\x17\n\nfield_path\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x16\n\tthreshold\x18\x02 \x01(\x02\x42\x03\xe0\x41\x02\"G\n\x12SearchStrategyType\x12\r\n\tNO_SEARCH\x10\x00\x12\x10\n\x0c\x45XACT_SEARCH\x10\x01\x12\x10\n\x0cSMART_SEARCH\x10\x02\x42\x17\n\x15_search_strategy_type\"\xa8\x01\n\x08\x44\x61taType\x12\x19\n\x15\x44\x41TA_TYPE_UNSPECIFIED\x10\x00\x12\x0b\n\x07INTEGER\x10\x01\x12\t\n\x05\x46LOAT\x10\x02\x12\n\n\x06STRING\x10\x03\x12\x0c\n\x08\x44\x41TETIME\x10\x05\x12\x12\n\x0eGEO_COORDINATE\x10\x07\x12\r\n\tPROTO_ANY\x10\x08\x12\x0b\n\x07\x42OOLEAN\x10\t\x12\x08\n\x04LIST\x10\n\x12\x15\n\x11\x43USTOMIZED_STRUCT\x10\x06\"h\n\x0bGranularity\x12\x1b\n\x17GRANULARITY_UNSPECIFIED\x10\x00\x12\x1b\n\x17GRANULARITY_ASSET_LEVEL\x10\x01\x12\x1f\n\x1bGRANULARITY_PARTITION_LEVEL\x10\x02\x42\x07\n\x05_typeB\x0e\n\x0c_granularity\"\x8a\x01\n\x17UpdateDataSchemaRequest\x12>\n\x0b\x64\x61ta_schema\x18\x01 \x01(\x0b\x32$.google.cloud.visionai.v1.DataSchemaB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\"P\n\x14GetDataSchemaRequest\x12\x38\n\x04name\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\n\"visionai.googleapis.com/DataSchema\"S\n\x17\x44\x65leteDataSchemaRequest\x12\x38\n\x04name\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\n\"visionai.googleapis.com/DataSchema\"{\n\x16ListDataSchemasRequest\x12:\n\x06parent\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\x12\"visionai.googleapis.com/DataSchema\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"n\n\x17ListDataSchemasResponse\x12:\n\x0c\x64\x61ta_schemas\x18\x01 \x03(\x0b\x32$.google.cloud.visionai.v1.DataSchema\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\xc2\x01\n\x17\x43reateAnnotationRequest\x12\x35\n\x06parent\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Asset\x12=\n\nannotation\x18\x02 \x01(\x0b\x32$.google.cloud.visionai.v1.AnnotationB\x03\xe0\x41\x02\x12\x1f\n\rannotation_id\x18\x03 \x01(\tB\x03\xe0\x41\x01H\x00\x88\x01\x01\x42\x10\n\x0e_annotation_id\"\x84\x02\n\nAnnotation\x12\x0c\n\x04name\x18\x01 \x01(\t\x12T\n\x19user_specified_annotation\x18\x02 \x01(\x0b\x32\x31.google.cloud.visionai.v1.UserSpecifiedAnnotation:\x91\x01\xea\x41\x8d\x01\n\"visionai.googleapis.com/Annotation\x12gprojects/{project_number}/locations/{location}/corpora/{corpus}/assets/{asset}/annotations/{annotation}\"\x9d\x01\n\x17UserSpecifiedAnnotation\x12\x10\n\x03key\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x38\n\x05value\x18\x02 \x01(\x0b\x32).google.cloud.visionai.v1.AnnotationValue\x12\x36\n\tpartition\x18\x03 \x01(\x0b\x32#.google.cloud.visionai.v1.Partition\"4\n\rGeoCoordinate\x12\x10\n\x08latitude\x18\x01 \x01(\x01\x12\x11\n\tlongitude\x18\x02 \x01(\x01\"\xd9\x03\n\x0f\x41nnotationValue\x12\x13\n\tint_value\x18\x01 \x01(\x03H\x00\x12\x15\n\x0b\x66loat_value\x18\x02 \x01(\x02H\x00\x12\x13\n\tstr_value\x18\x03 \x01(\tH\x00\x12\x18\n\x0e\x64\x61tetime_value\x18\x05 \x01(\tH\x00\x12\x41\n\x0egeo_coordinate\x18\x07 \x01(\x0b\x32\'.google.cloud.visionai.v1.GeoCoordinateH\x00\x12/\n\x0fproto_any_value\x18\x08 \x01(\x0b\x32\x14.google.protobuf.AnyH\x00\x12\x14\n\nbool_value\x18\t \x01(\x08H\x00\x12?\n\x1c\x63ustomized_struct_data_value\x18\n \x01(\x0b\x32\x17.google.protobuf.StructH\x00\x12>\n\nlist_value\x18\x0b \x01(\x0b\x32(.google.cloud.visionai.v1.AnnotationListH\x00\x12W\n\x17\x63ustomized_struct_value\x18\x06 \x01(\x0b\x32\x34.google.cloud.visionai.v1.AnnotationCustomizedStructH\x00\x42\x07\n\x05value\"K\n\x0e\x41nnotationList\x12\x39\n\x06values\x18\x01 \x03(\x0b\x32).google.cloud.visionai.v1.AnnotationValue\"\xce\x01\n\x1a\x41nnotationCustomizedStruct\x12T\n\x08\x65lements\x18\x02 \x03(\x0b\x32\x42.google.cloud.visionai.v1.AnnotationCustomizedStruct.ElementsEntry\x1aZ\n\rElementsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x38\n\x05value\x18\x02 \x01(\x0b\x32).google.cloud.visionai.v1.AnnotationValue:\x02\x38\x01\"\x83\x01\n\x16ListAnnotationsRequest\x12\x32\n\x06parent\x18\x01 \x01(\tB\"\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Asset\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x0e\n\x06\x66ilter\x18\x04 \x01(\t\"m\n\x17ListAnnotationsResponse\x12\x39\n\x0b\x61nnotations\x18\x01 \x03(\x0b\x32$.google.cloud.visionai.v1.Annotation\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"P\n\x14GetAnnotationRequest\x12\x38\n\x04name\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\n\"visionai.googleapis.com/Annotation\"\x89\x01\n\x17UpdateAnnotationRequest\x12=\n\nannotation\x18\x01 \x01(\x0b\x32$.google.cloud.visionai.v1.AnnotationB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\"S\n\x17\x44\x65leteAnnotationRequest\x12\x38\n\x04name\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\n\"visionai.googleapis.com/Annotation\"q\n\x13ImportAssetsRequest\x12\x18\n\x0e\x61ssets_gcs_uri\x18\x02 \x01(\tH\x00\x12\x36\n\x06parent\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1evisionai.googleapis.com/CorpusB\x08\n\x06source\"U\n\x14ImportAssetsMetadata\x12=\n\x08metadata\x18\x01 \x01(\x0b\x32+.google.cloud.visionai.v1.OperationMetadata\"\x16\n\x14ImportAssetsResponse\"\xbc\x01\n\x19\x43reateSearchConfigRequest\x12<\n\x06parent\x18\x01 \x01(\tB,\xe0\x41\x02\xfa\x41&\x12$visionai.googleapis.com/SearchConfig\x12\x42\n\rsearch_config\x18\x02 \x01(\x0b\x32&.google.cloud.visionai.v1.SearchConfigB\x03\xe0\x41\x02\x12\x1d\n\x10search_config_id\x18\x03 \x01(\tB\x03\xe0\x41\x02\"\x90\x01\n\x19UpdateSearchConfigRequest\x12\x42\n\rsearch_config\x18\x01 \x01(\x0b\x32&.google.cloud.visionai.v1.SearchConfigB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\"T\n\x16GetSearchConfigRequest\x12:\n\x04name\x18\x01 \x01(\tB,\xe0\x41\x02\xfa\x41&\n$visionai.googleapis.com/SearchConfig\"W\n\x19\x44\x65leteSearchConfigRequest\x12:\n\x04name\x18\x01 \x01(\tB,\xe0\x41\x02\xfa\x41&\n$visionai.googleapis.com/SearchConfig\"\x7f\n\x18ListSearchConfigsRequest\x12<\n\x06parent\x18\x01 \x01(\tB,\xe0\x41\x02\xfa\x41&\x12$visionai.googleapis.com/SearchConfig\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"t\n\x19ListSearchConfigsResponse\x12>\n\x0esearch_configs\x18\x01 \x03(\x0b\x32&.google.cloud.visionai.v1.SearchConfig\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\xbd\x02\n\x0cSearchConfig\x12\x0c\n\x04name\x18\x01 \x01(\t\x12?\n\x0e\x66\x61\x63\x65t_property\x18\x02 \x01(\x0b\x32\'.google.cloud.visionai.v1.FacetProperty\x12R\n\x18search_criteria_property\x18\x03 \x01(\x0b\x32\x30.google.cloud.visionai.v1.SearchCriteriaProperty:\x89\x01\xea\x41\x85\x01\n$visionai.googleapis.com/SearchConfig\x12]projects/{project_number}/locations/{location}/corpora/{corpus}/searchConfigs/{search_config}\"\x8f\x05\n\rIndexEndpoint\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12\x19\n\x0c\x64isplay_name\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x18\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x44\n\x0e\x64\x65ployed_index\x18\t \x01(\x0b\x32\'.google.cloud.visionai.v1.DeployedIndexB\x03\xe0\x41\x03\x12\x41\n\x05state\x18\x05 \x01(\x0e\x32-.google.cloud.visionai.v1.IndexEndpoint.StateB\x03\xe0\x41\x03\x12H\n\x06labels\x18\x06 \x03(\x0b\x32\x33.google.cloud.visionai.v1.IndexEndpoint.LabelsEntryB\x03\xe0\x41\x01\x12\x34\n\x0b\x63reate_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x34\n\x0bupdate_time\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"S\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0c\n\x08\x43REATING\x10\x01\x12\x0b\n\x07\x43REATED\x10\x02\x12\x0c\n\x08UPDATING\x10\x03\x12\n\n\x06\x46\x41ILED\x10\x04:s\xea\x41p\n%visionai.googleapis.com/IndexEndpoint\x12Gprojects/{project}/locations/{location}/indexEndpoints/{index_endpoint}\"\xbd\x01\n\x1a\x43reateIndexEndpointRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!locations.googleapis.com/Location\x12\x1e\n\x11index_endpoint_id\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x44\n\x0eindex_endpoint\x18\x03 \x01(\x0b\x32\'.google.cloud.visionai.v1.IndexEndpointB\x03\xe0\x41\x02\"f\n\x1b\x43reateIndexEndpointMetadata\x12G\n\x12operation_metadata\x18\x01 \x01(\x0b\x32+.google.cloud.visionai.v1.OperationMetadata\"V\n\x17GetIndexEndpointRequest\x12;\n\x04name\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%visionai.googleapis.com/IndexEndpoint\"\x9c\x01\n\x19ListIndexEndpointsRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!locations.googleapis.com/Location\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x13\n\x06\x66ilter\x18\x04 \x01(\tB\x03\xe0\x41\x01\"w\n\x1aListIndexEndpointsResponse\x12@\n\x0findex_endpoints\x18\x01 \x03(\x0b\x32\'.google.cloud.visionai.v1.IndexEndpoint\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\x98\x01\n\x1aUpdateIndexEndpointRequest\x12\x44\n\x0eindex_endpoint\x18\x01 \x01(\x0b\x32\'.google.cloud.visionai.v1.IndexEndpointB\x03\xe0\x41\x02\x12\x34\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x02\"f\n\x1bUpdateIndexEndpointMetadata\x12G\n\x12operation_metadata\x18\x01 \x01(\x0b\x32+.google.cloud.visionai.v1.OperationMetadata\"Y\n\x1a\x44\x65leteIndexEndpointRequest\x12;\n\x04name\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%visionai.googleapis.com/IndexEndpoint\"f\n\x1b\x44\x65leteIndexEndpointMetadata\x12G\n\x12operation_metadata\x18\x01 \x01(\x0b\x32+.google.cloud.visionai.v1.OperationMetadata\"\xa1\x01\n\x12\x44\x65ployIndexRequest\x12\x45\n\x0eindex_endpoint\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%visionai.googleapis.com/IndexEndpoint\x12\x44\n\x0e\x64\x65ployed_index\x18\x03 \x01(\x0b\x32\'.google.cloud.visionai.v1.DeployedIndexB\x03\xe0\x41\x02\"\x15\n\x13\x44\x65ployIndexResponse\"\x9d\x01\n\x13\x44\x65ployIndexMetadata\x12G\n\x12operation_metadata\x18\x01 \x01(\x0b\x32+.google.cloud.visionai.v1.OperationMetadata\x12=\n\x0e\x64\x65ployed_index\x18\x02 \x01(\tB%\xe0\x41\x03\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Index\"\x9f\x01\n\x15UndeployIndexMetadata\x12G\n\x12operation_metadata\x18\x01 \x01(\x0b\x32+.google.cloud.visionai.v1.OperationMetadata\x12=\n\x0e\x64\x65ployed_index\x18\x02 \x01(\tB%\xe0\x41\x03\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Index\"]\n\x14UndeployIndexRequest\x12\x45\n\x0eindex_endpoint\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%visionai.googleapis.com/IndexEndpoint\"\x17\n\x15UndeployIndexResponse\"E\n\rDeployedIndex\x12\x34\n\x05index\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Index\"\x84\x07\n\rFacetProperty\x12_\n\x17\x66ixed_range_bucket_spec\x18\x05 \x01(\x0b\x32<.google.cloud.visionai.v1.FacetProperty.FixedRangeBucketSpecH\x00\x12\x61\n\x18\x63ustom_range_bucket_spec\x18\x06 \x01(\x0b\x32=.google.cloud.visionai.v1.FacetProperty.CustomRangeBucketSpecH\x00\x12Z\n\x14\x64\x61tetime_bucket_spec\x18\x07 \x01(\x0b\x32:.google.cloud.visionai.v1.FacetProperty.DateTimeBucketSpecH\x00\x12\x15\n\rmapped_fields\x18\x01 \x03(\t\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12\x13\n\x0bresult_size\x18\x03 \x01(\x03\x12>\n\x0b\x62ucket_type\x18\x04 \x01(\x0e\x32).google.cloud.visionai.v1.FacetBucketType\x1a\xaa\x01\n\x14\x46ixedRangeBucketSpec\x12:\n\x0c\x62ucket_start\x18\x01 \x01(\x0b\x32$.google.cloud.visionai.v1.FacetValue\x12@\n\x12\x62ucket_granularity\x18\x02 \x01(\x0b\x32$.google.cloud.visionai.v1.FacetValue\x12\x14\n\x0c\x62ucket_count\x18\x03 \x01(\x05\x1aP\n\x15\x43ustomRangeBucketSpec\x12\x37\n\tendpoints\x18\x01 \x03(\x0b\x32$.google.cloud.visionai.v1.FacetValue\x1a\xbb\x01\n\x12\x44\x61teTimeBucketSpec\x12[\n\x0bgranularity\x18\x01 \x01(\x0e\x32\x46.google.cloud.visionai.v1.FacetProperty.DateTimeBucketSpec.Granularity\"H\n\x0bGranularity\x12\x1b\n\x17GRANULARITY_UNSPECIFIED\x10\x00\x12\x08\n\x04YEAR\x10\x01\x12\t\n\x05MONTH\x10\x02\x12\x07\n\x03\x44\x41Y\x10\x03\x42\x14\n\x12range_facet_config\"\xde\x01\n\x0eSearchHypernym\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x15\n\x08hypernym\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x15\n\x08hyponyms\x18\x03 \x03(\tB\x03\xe0\x41\x01:\x8f\x01\xea\x41\x8b\x01\n&visionai.googleapis.com/SearchHypernym\x12\x61projects/{project_number}/locations/{location}/corpora/{corpus}/searchHypernyms/{search_hypernym}\"\xda\x01\n\x1b\x43reateSearchHypernymRequest\x12\x36\n\x06parent\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1evisionai.googleapis.com/Corpus\x12\x46\n\x0fsearch_hypernym\x18\x02 \x01(\x0b\x32(.google.cloud.visionai.v1.SearchHypernymB\x03\xe0\x41\x02\x12$\n\x12search_hypernym_id\x18\x03 \x01(\tB\x03\xe0\x41\x01H\x00\x88\x01\x01\x42\x15\n\x13_search_hypernym_id\"\x96\x01\n\x1bUpdateSearchHypernymRequest\x12\x46\n\x0fsearch_hypernym\x18\x01 \x01(\x0b\x32(.google.cloud.visionai.v1.SearchHypernymB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\"X\n\x18GetSearchHypernymRequest\x12<\n\x04name\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&visionai.googleapis.com/SearchHypernym\"[\n\x1b\x44\x65leteSearchHypernymRequest\x12<\n\x04name\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&visionai.googleapis.com/SearchHypernym\"\x83\x01\n\x1aListSearchHypernymsRequest\x12>\n\x06parent\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\x12&visionai.googleapis.com/SearchHypernym\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"z\n\x1bListSearchHypernymsResponse\x12\x42\n\x10search_hypernyms\x18\x01 \x03(\x0b\x32(.google.cloud.visionai.v1.SearchHypernym\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"/\n\x16SearchCriteriaProperty\x12\x15\n\rmapped_fields\x18\x01 \x03(\t\"w\n\nFacetValue\x12\x16\n\x0cstring_value\x18\x01 \x01(\tH\x00\x12\x17\n\rinteger_value\x18\x02 \x01(\x03H\x00\x12/\n\x0e\x64\x61tetime_value\x18\x03 \x01(\x0b\x32\x15.google.type.DateTimeH\x00\x42\x07\n\x05value\"\x95\x02\n\x0b\x46\x61\x63\x65tBucket\x12\x35\n\x05value\x18\x02 \x01(\x0b\x32$.google.cloud.visionai.v1.FacetValueH\x00\x12<\n\x05range\x18\x04 \x01(\x0b\x32+.google.cloud.visionai.v1.FacetBucket.RangeH\x00\x12\x10\n\x08selected\x18\x03 \x01(\x08\x1ao\n\x05Range\x12\x33\n\x05start\x18\x01 \x01(\x0b\x32$.google.cloud.visionai.v1.FacetValue\x12\x31\n\x03\x65nd\x18\x02 \x01(\x0b\x32$.google.cloud.visionai.v1.FacetValueB\x0e\n\x0c\x62ucket_value\"\xcf\x01\n\nFacetGroup\x12\x10\n\x08\x66\x61\x63\x65t_id\x18\x01 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12\x36\n\x07\x62uckets\x18\x03 \x03(\x0b\x32%.google.cloud.visionai.v1.FacetBucket\x12>\n\x0b\x62ucket_type\x18\x04 \x01(\x0e\x32).google.cloud.visionai.v1.FacetBucketType\x12!\n\x19\x66\x65tch_matched_annotations\x18\x05 \x01(\x08\"\xa8\x05\n\x12IngestAssetRequest\x12\x45\n\x06\x63onfig\x18\x01 \x01(\x0b\x32\x33.google.cloud.visionai.v1.IngestAssetRequest.ConfigH\x00\x12Y\n\x11time_indexed_data\x18\x02 \x01(\x0b\x32<.google.cloud.visionai.v1.IngestAssetRequest.TimeIndexedDataH\x00\x1a\xe6\x02\n\x06\x43onfig\x12S\n\nvideo_type\x18\x02 \x01(\x0b\x32=.google.cloud.visionai.v1.IngestAssetRequest.Config.VideoTypeH\x00\x12\x34\n\x05\x61sset\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Asset\x1a\xc3\x01\n\tVideoType\x12g\n\x10\x63ontainer_format\x18\x01 \x01(\x0e\x32M.google.cloud.visionai.v1.IngestAssetRequest.Config.VideoType.ContainerFormat\"M\n\x0f\x43ontainerFormat\x12 \n\x1c\x43ONTAINER_FORMAT_UNSPECIFIED\x10\x00\x12\x18\n\x14\x43ONTAINER_FORMAT_MP4\x10\x01\x42\x0b\n\tdata_type\x1ar\n\x0fTimeIndexedData\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\x12Q\n\x12temporal_partition\x18\x02 \x01(\x0b\x32\x35.google.cloud.visionai.v1.Partition.TemporalPartitionB\x13\n\x11streaming_request\"u\n\x13IngestAssetResponse\x12^\n\x1fsuccessfully_ingested_partition\x18\x01 \x01(\x0b\x32\x35.google.cloud.visionai.v1.Partition.TemporalPartition\"\x9f\x01\n\x10\x43lipAssetRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Asset\x12V\n\x12temporal_partition\x18\x02 \x01(\x0b\x32\x35.google.cloud.visionai.v1.Partition.TemporalPartitionB\x03\xe0\x41\x02\"\xdc\x01\n\x11\x43lipAssetResponse\x12U\n\x11time_indexed_uris\x18\x01 \x03(\x0b\x32:.google.cloud.visionai.v1.ClipAssetResponse.TimeIndexedUri\x1ap\n\x0eTimeIndexedUri\x12Q\n\x12temporal_partition\x18\x01 \x01(\x0b\x32\x35.google.cloud.visionai.v1.Partition.TemporalPartition\x12\x0b\n\x03uri\x18\x02 \x01(\t\"\xbb\x01\n\x15GenerateHlsUriRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Asset\x12R\n\x13temporal_partitions\x18\x02 \x03(\x0b\x32\x35.google.cloud.visionai.v1.Partition.TemporalPartition\x12\x19\n\x11live_view_enabled\x18\x03 \x01(\x08\"y\n\x16GenerateHlsUriResponse\x12\x0b\n\x03uri\x18\x01 \x01(\t\x12R\n\x13temporal_partitions\x18\x02 \x03(\x0b\x32\x35.google.cloud.visionai.v1.Partition.TemporalPartition\"\xd3\x03\n\x13SearchAssetsRequest\x12Y\n\x1bschema_key_sorting_strategy\x18\t \x01(\x0b\x32\x32.google.cloud.visionai.v1.SchemaKeySortingStrategyH\x00\x12\x36\n\x06\x63orpus\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1evisionai.googleapis.com/Corpus\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12I\n\x13\x63ontent_time_ranges\x18\x05 \x01(\x0b\x32,.google.cloud.visionai.v1.DateTimeRangeArray\x12\x34\n\x08\x63riteria\x18\x04 \x03(\x0b\x32\".google.cloud.visionai.v1.Criteria\x12>\n\x10\x66\x61\x63\x65t_selections\x18\x06 \x03(\x0b\x32$.google.cloud.visionai.v1.FacetGroup\x12\x1e\n\x16result_annotation_keys\x18\x08 \x03(\t\x12\x14\n\x0csearch_query\x18\n \x01(\tB\x0b\n\tsort_spec\"\xdc\x02\n\x1aSearchIndexEndpointRequest\x12;\n\x0bimage_query\x18\x02 \x01(\x0b\x32$.google.cloud.visionai.v1.ImageQueryH\x00\x12\x14\n\ntext_query\x18\x03 \x01(\tH\x00\x12\x45\n\x0eindex_endpoint\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%visionai.googleapis.com/IndexEndpoint\x12\x34\n\x08\x63riteria\x18\x04 \x03(\x0b\x32\".google.cloud.visionai.v1.Criteria\x12>\n\x12\x65xclusion_criteria\x18\x07 \x03(\x0b\x32\".google.cloud.visionai.v1.Criteria\x12\x11\n\tpage_size\x18\x05 \x01(\x05\x12\x12\n\npage_token\x18\x06 \x01(\tB\x07\n\x05query\"a\n\nImageQuery\x12\x15\n\x0binput_image\x18\x01 \x01(\x0cH\x00\x12\x33\n\x05\x61sset\x18\x02 \x01(\tB\"\xfa\x41\x1f\n\x1dvisionai.googleapis.com/AssetH\x00\x42\x07\n\x05image\"\x94\x03\n\x18SchemaKeySortingStrategy\x12J\n\x07options\x18\x01 \x03(\x0b\x32\x39.google.cloud.visionai.v1.SchemaKeySortingStrategy.Option\x1a\xab\x02\n\x06Option\x12\x17\n\x0f\x64\x61ta_schema_key\x18\x01 \x01(\t\x12\x17\n\x0fsort_decreasing\x18\x02 \x01(\x08\x12h\n\x10\x61ggregate_method\x18\x03 \x01(\x0e\x32I.google.cloud.visionai.v1.SchemaKeySortingStrategy.Option.AggregateMethodH\x00\x88\x01\x01\"p\n\x0f\x41ggregateMethod\x12 \n\x1c\x41GGREGATE_METHOD_UNSPECIFIED\x10\x00\x12\x1c\n\x18\x41GGREGATE_METHOD_LARGEST\x10\x01\x12\x1d\n\x19\x41GGREGATE_METHOD_SMALLEST\x10\x02\x42\x13\n\x11_aggregate_method\"\x15\n\x13\x44\x65leteAssetMetadata\"\xb7\x01\n\x18\x41nnotationMatchingResult\x12\x34\n\x08\x63riteria\x18\x01 \x01(\x0b\x32\".google.cloud.visionai.v1.Criteria\x12\x41\n\x13matched_annotations\x18\x02 \x03(\x0b\x32$.google.cloud.visionai.v1.Annotation\x12\"\n\x06status\x18\x03 \x01(\x0b\x32\x12.google.rpc.Status\"\xe7\x02\n\x10SearchResultItem\x12\r\n\x05\x61sset\x18\x01 \x01(\t\x12K\n\x08segments\x18\x02 \x03(\x0b\x32\x35.google.cloud.visionai.v1.Partition.TemporalPartitionB\x02\x18\x01\x12\x46\n\x07segment\x18\x05 \x01(\x0b\x32\x35.google.cloud.visionai.v1.Partition.TemporalPartition\x12\x11\n\trelevance\x18\x06 \x01(\x01\x12\x43\n\x15requested_annotations\x18\x03 \x03(\x0b\x32$.google.cloud.visionai.v1.Annotation\x12W\n\x1b\x61nnotation_matching_results\x18\x04 \x03(\x0b\x32\x32.google.cloud.visionai.v1.AnnotationMatchingResult\"\xb5\x01\n\x14SearchAssetsResponse\x12G\n\x13search_result_items\x18\x01 \x03(\x0b\x32*.google.cloud.visionai.v1.SearchResultItem\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12;\n\rfacet_results\x18\x03 \x03(\x0b\x32$.google.cloud.visionai.v1.FacetGroup\"\x7f\n\x1bSearchIndexEndpointResponse\x12G\n\x13search_result_items\x18\x01 \x03(\x0b\x32*.google.cloud.visionai.v1.SearchResultItem\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"B\n\x08IntRange\x12\x12\n\x05start\x18\x01 \x01(\x03H\x00\x88\x01\x01\x12\x10\n\x03\x65nd\x18\x02 \x01(\x03H\x01\x88\x01\x01\x42\x08\n\x06_startB\x06\n\x04_end\"D\n\nFloatRange\x12\x12\n\x05start\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x10\n\x03\x65nd\x18\x02 \x01(\x02H\x01\x88\x01\x01\x42\x08\n\x06_startB\x06\n\x04_end\"!\n\x0bStringArray\x12\x12\n\ntxt_values\x18\x01 \x03(\t\"G\n\rIntRangeArray\x12\x36\n\nint_ranges\x18\x01 \x03(\x0b\x32\".google.cloud.visionai.v1.IntRange\"M\n\x0f\x46loatRangeArray\x12:\n\x0c\x66loat_ranges\x18\x01 \x03(\x0b\x32$.google.cloud.visionai.v1.FloatRange\"Y\n\rDateTimeRange\x12$\n\x05start\x18\x01 \x01(\x0b\x32\x15.google.type.DateTime\x12\"\n\x03\x65nd\x18\x02 \x01(\x0b\x32\x15.google.type.DateTime\"W\n\x12\x44\x61teTimeRangeArray\x12\x41\n\x10\x64\x61te_time_ranges\x18\x01 \x03(\x0b\x32\'.google.cloud.visionai.v1.DateTimeRange\"G\n\nCircleArea\x12\x10\n\x08latitude\x18\x01 \x01(\x01\x12\x11\n\tlongitude\x18\x02 \x01(\x01\x12\x14\n\x0cradius_meter\x18\x03 \x01(\x01\"N\n\x10GeoLocationArray\x12:\n\x0c\x63ircle_areas\x18\x01 \x03(\x0b\x32$.google.cloud.visionai.v1.CircleArea\"\x1a\n\tBoolValue\x12\r\n\x05value\x18\x01 \x01(\x08\"\xe2\x03\n\x08\x43riteria\x12;\n\ntext_array\x18\x02 \x01(\x0b\x32%.google.cloud.visionai.v1.StringArrayH\x00\x12\x42\n\x0fint_range_array\x18\x03 \x01(\x0b\x32\'.google.cloud.visionai.v1.IntRangeArrayH\x00\x12\x46\n\x11\x66loat_range_array\x18\x04 \x01(\x0b\x32).google.cloud.visionai.v1.FloatRangeArrayH\x00\x12M\n\x15\x64\x61te_time_range_array\x18\x05 \x01(\x0b\x32,.google.cloud.visionai.v1.DateTimeRangeArrayH\x00\x12H\n\x12geo_location_array\x18\x06 \x01(\x0b\x32*.google.cloud.visionai.v1.GeoLocationArrayH\x00\x12\x39\n\nbool_value\x18\x07 \x01(\x0b\x32#.google.cloud.visionai.v1.BoolValueH\x00\x12\r\n\x05\x66ield\x18\x01 \x01(\t\x12!\n\x19\x66\x65tch_matched_annotations\x18\x08 \x01(\x08\x42\x07\n\x05value\"\x90\x05\n\tPartition\x12Q\n\x12temporal_partition\x18\x01 \x01(\x0b\x32\x35.google.cloud.visionai.v1.Partition.TemporalPartition\x12O\n\x11spatial_partition\x18\x02 \x01(\x0b\x32\x34.google.cloud.visionai.v1.Partition.SpatialPartition\x12\x62\n\x1brelative_temporal_partition\x18\x03 \x01(\x0b\x32=.google.cloud.visionai.v1.Partition.RelativeTemporalPartition\x1aq\n\x11TemporalPartition\x12.\n\nstart_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12,\n\x08\x65nd_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a\x8a\x01\n\x10SpatialPartition\x12\x12\n\x05x_min\x18\x01 \x01(\x03H\x00\x88\x01\x01\x12\x12\n\x05y_min\x18\x02 \x01(\x03H\x01\x88\x01\x01\x12\x12\n\x05x_max\x18\x03 \x01(\x03H\x02\x88\x01\x01\x12\x12\n\x05y_max\x18\x04 \x01(\x03H\x03\x88\x01\x01\x42\x08\n\x06_x_minB\x08\n\x06_y_minB\x08\n\x06_x_maxB\x08\n\x06_y_max\x1a{\n\x19RelativeTemporalPartition\x12/\n\x0cstart_offset\x18\x01 \x01(\x0b\x32\x19.google.protobuf.Duration\x12-\n\nend_offset\x18\x02 \x01(\x0b\x32\x19.google.protobuf.Duration*\xb8\x01\n\x0f\x46\x61\x63\x65tBucketType\x12!\n\x1d\x46\x41\x43\x45T_BUCKET_TYPE_UNSPECIFIED\x10\x00\x12\x1b\n\x17\x46\x41\x43\x45T_BUCKET_TYPE_VALUE\x10\x01\x12\x1e\n\x1a\x46\x41\x43\x45T_BUCKET_TYPE_DATETIME\x10\x02\x12!\n\x1d\x46\x41\x43\x45T_BUCKET_TYPE_FIXED_RANGE\x10\x03\x12\"\n\x1e\x46\x41\x43\x45T_BUCKET_TYPE_CUSTOM_RANGE\x10\x04\x32\x91\x66\n\tWarehouse\x12\xb9\x01\n\x0b\x43reateAsset\x12,.google.cloud.visionai.v1.CreateAssetRequest\x1a\x1f.google.cloud.visionai.v1.Asset\"[\xda\x41\x15parent,asset,asset_id\x82\xd3\xe4\x93\x02=\"4/v1/{parent=projects/*/locations/*/corpora/*}/assets:\x05\x61sset\x12\xbb\x01\n\x0bUpdateAsset\x12,.google.cloud.visionai.v1.UpdateAssetRequest\x1a\x1f.google.cloud.visionai.v1.Asset\"]\xda\x41\x11\x61sset,update_mask\x82\xd3\xe4\x93\x02\x43\x32:/v1/{asset.name=projects/*/locations/*/corpora/*/assets/*}:\x05\x61sset\x12\x9b\x01\n\x08GetAsset\x12).google.cloud.visionai.v1.GetAssetRequest\x1a\x1f.google.cloud.visionai.v1.Asset\"C\xda\x41\x04name\x82\xd3\xe4\x93\x02\x36\x12\x34/v1/{name=projects/*/locations/*/corpora/*/assets/*}\x12\xae\x01\n\nListAssets\x12+.google.cloud.visionai.v1.ListAssetsRequest\x1a,.google.cloud.visionai.v1.ListAssetsResponse\"E\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x36\x12\x34/v1/{parent=projects/*/locations/*/corpora/*}/assets\x12\xce\x01\n\x0b\x44\x65leteAsset\x12,.google.cloud.visionai.v1.DeleteAssetRequest\x1a\x1d.google.longrunning.Operation\"r\xca\x41,\n\x15google.protobuf.Empty\x12\x13\x44\x65leteAssetMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02\x36*4/v1/{name=projects/*/locations/*/corpora/*/assets/*}\x12\xcf\x01\n\x0bUploadAsset\x12,.google.cloud.visionai.v1.UploadAssetRequest\x1a\x1d.google.longrunning.Operation\"s\xca\x41*\n\x13UploadAssetResponse\x12\x13UploadAssetMetadata\x82\xd3\xe4\x93\x02@\";/v1/{name=projects/*/locations/*/corpora/*/assets/*}:upload:\x01*\x12\xdb\x01\n\x14GenerateRetrievalUrl\x12\x35.google.cloud.visionai.v1.GenerateRetrievalUrlRequest\x1a\x36.google.cloud.visionai.v1.GenerateRetrievalUrlResponse\"T\x82\xd3\xe4\x93\x02N\"I/v1/{name=projects/*/locations/*/corpora/*/assets/*}:generateRetrievalUrl:\x01*\x12\xd4\x01\n\x0c\x41nalyzeAsset\x12-.google.cloud.visionai.v1.AnalyzeAssetRequest\x1a\x1d.google.longrunning.Operation\"v\xca\x41,\n\x14\x41nalyzeAssetResponse\x12\x14\x41nalyzeAssetMetadata\x82\xd3\xe4\x93\x02\x41\"</v1/{name=projects/*/locations/*/corpora/*/assets/*}:analyze:\x01*\x12\xca\x01\n\nIndexAsset\x12+.google.cloud.visionai.v1.IndexAssetRequest\x1a\x1d.google.longrunning.Operation\"p\xca\x41(\n\x12IndexAssetResponse\x12\x12IndexAssetMetadata\x82\xd3\xe4\x93\x02?\":/v1/{name=projects/*/locations/*/corpora/*/assets/*}:index:\x01*\x12\xe9\x01\n\x10RemoveIndexAsset\x12\x31.google.cloud.visionai.v1.RemoveIndexAssetRequest\x1a\x1d.google.longrunning.Operation\"\x82\x01\xca\x41\x34\n\x18RemoveIndexAssetResponse\x12\x18RemoveIndexAssetMetadata\x82\xd3\xe4\x93\x02\x45\"@/v1/{name=projects/*/locations/*/corpora/*/assets/*}:removeIndex:\x01*\x12\xcf\x01\n\x11ViewIndexedAssets\x12\x32.google.cloud.visionai.v1.ViewIndexedAssetsRequest\x1a\x33.google.cloud.visionai.v1.ViewIndexedAssetsResponse\"Q\xda\x41\x05index\x82\xd3\xe4\x93\x02\x43\x12\x41/v1/{index=projects/*/locations/*/corpora/*/indexes/*}:viewAssets\x12\xd7\x01\n\x0b\x43reateIndex\x12,.google.cloud.visionai.v1.CreateIndexRequest\x1a\x1d.google.longrunning.Operation\"{\xca\x41\x1c\n\x05Index\x12\x13\x43reateIndexMetadata\xda\x41\x15parent,index,index_id\x82\xd3\xe4\x93\x02>\"5/v1/{parent=projects/*/locations/*/corpora/*}/indexes:\x05index\x12\xd9\x01\n\x0bUpdateIndex\x12,.google.cloud.visionai.v1.UpdateIndexRequest\x1a\x1d.google.longrunning.Operation\"}\xca\x41\x1c\n\x05Index\x12\x13UpdateIndexMetadata\xda\x41\x11index,update_mask\x82\xd3\xe4\x93\x02\x44\x32;/v1/{index.name=projects/*/locations/*/corpora/*/indexes/*}:\x05index\x12\x9c\x01\n\x08GetIndex\x12).google.cloud.visionai.v1.GetIndexRequest\x1a\x1f.google.cloud.visionai.v1.Index\"D\xda\x41\x04name\x82\xd3\xe4\x93\x02\x37\x12\x35/v1/{name=projects/*/locations/*/corpora/*/indexes/*}\x12\xb2\x01\n\x0bListIndexes\x12,.google.cloud.visionai.v1.ListIndexesRequest\x1a-.google.cloud.visionai.v1.ListIndexesResponse\"F\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x37\x12\x35/v1/{parent=projects/*/locations/*/corpora/*}/indexes\x12\xcf\x01\n\x0b\x44\x65leteIndex\x12,.google.cloud.visionai.v1.DeleteIndexRequest\x1a\x1d.google.longrunning.Operation\"s\xca\x41,\n\x15google.protobuf.Empty\x12\x13\x44\x65leteIndexMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02\x37*5/v1/{name=projects/*/locations/*/corpora/*/indexes/*}\x12\xca\x01\n\x0c\x43reateCorpus\x12-.google.cloud.visionai.v1.CreateCorpusRequest\x1a\x1d.google.longrunning.Operation\"l\xca\x41\x1e\n\x06\x43orpus\x12\x14\x43reateCorpusMetadata\xda\x41\rparent,corpus\x82\xd3\xe4\x93\x02\x35\"+/v1/{parent=projects/*/locations/*}/corpora:\x06\x63orpus\x12\x95\x01\n\tGetCorpus\x12*.google.cloud.visionai.v1.GetCorpusRequest\x1a .google.cloud.visionai.v1.Corpus\":\xda\x41\x04name\x82\xd3\xe4\x93\x02-\x12+/v1/{name=projects/*/locations/*/corpora/*}\x12\xb8\x01\n\x0cUpdateCorpus\x12-.google.cloud.visionai.v1.UpdateCorpusRequest\x1a .google.cloud.visionai.v1.Corpus\"W\xda\x41\x12\x63orpus,update_mask\x82\xd3\xe4\x93\x02<22/v1/{corpus.name=projects/*/locations/*/corpora/*}:\x06\x63orpus\x12\xa8\x01\n\x0bListCorpora\x12,.google.cloud.visionai.v1.ListCorporaRequest\x1a-.google.cloud.visionai.v1.ListCorporaResponse\"<\xda\x41\x06parent\x82\xd3\xe4\x93\x02-\x12+/v1/{parent=projects/*/locations/*}/corpora\x12\x91\x01\n\x0c\x44\x65leteCorpus\x12-.google.cloud.visionai.v1.DeleteCorpusRequest\x1a\x16.google.protobuf.Empty\":\xda\x41\x04name\x82\xd3\xe4\x93\x02-*+/v1/{name=projects/*/locations/*/corpora/*}\x12\xcf\x01\n\rAnalyzeCorpus\x12..google.cloud.visionai.v1.AnalyzeCorpusRequest\x1a\x1d.google.longrunning.Operation\"o\xca\x41.\n\x15\x41nalyzeCorpusResponse\x12\x15\x41nalyzeCorpusMetadata\x82\xd3\xe4\x93\x02\x38\"3/v1/{name=projects/*/locations/*/corpora/*}:analyze:\x01*\x12\xd0\x01\n\x10\x43reateDataSchema\x12\x31.google.cloud.visionai.v1.CreateDataSchemaRequest\x1a$.google.cloud.visionai.v1.DataSchema\"c\xda\x41\x12parent,data_schema\x82\xd3\xe4\x93\x02H\"9/v1/{parent=projects/*/locations/*/corpora/*}/dataSchemas:\x0b\x64\x61ta_schema\x12\xe1\x01\n\x10UpdateDataSchema\x12\x31.google.cloud.visionai.v1.UpdateDataSchemaRequest\x1a$.google.cloud.visionai.v1.DataSchema\"t\xda\x41\x17\x64\x61ta_schema,update_mask\x82\xd3\xe4\x93\x02T2E/v1/{data_schema.name=projects/*/locations/*/corpora/*/dataSchemas/*}:\x0b\x64\x61ta_schema\x12\xaf\x01\n\rGetDataSchema\x12..google.cloud.visionai.v1.GetDataSchemaRequest\x1a$.google.cloud.visionai.v1.DataSchema\"H\xda\x41\x04name\x82\xd3\xe4\x93\x02;\x12\x39/v1/{name=projects/*/locations/*/corpora/*/dataSchemas/*}\x12\xa7\x01\n\x10\x44\x65leteDataSchema\x12\x31.google.cloud.visionai.v1.DeleteDataSchemaRequest\x1a\x16.google.protobuf.Empty\"H\xda\x41\x04name\x82\xd3\xe4\x93\x02;*9/v1/{name=projects/*/locations/*/corpora/*/dataSchemas/*}\x12\xc2\x01\n\x0fListDataSchemas\x12\x30.google.cloud.visionai.v1.ListDataSchemasRequest\x1a\x31.google.cloud.visionai.v1.ListDataSchemasResponse\"J\xda\x41\x06parent\x82\xd3\xe4\x93\x02;\x12\x39/v1/{parent=projects/*/locations/*/corpora/*}/dataSchemas\x12\xe5\x01\n\x10\x43reateAnnotation\x12\x31.google.cloud.visionai.v1.CreateAnnotationRequest\x1a$.google.cloud.visionai.v1.Annotation\"x\xda\x41\x1fparent,annotation,annotation_id\x82\xd3\xe4\x93\x02P\"B/v1/{parent=projects/*/locations/*/corpora/*/assets/*}/annotations:\nannotation\x12\xb8\x01\n\rGetAnnotation\x12..google.cloud.visionai.v1.GetAnnotationRequest\x1a$.google.cloud.visionai.v1.Annotation\"Q\xda\x41\x04name\x82\xd3\xe4\x93\x02\x44\x12\x42/v1/{name=projects/*/locations/*/corpora/*/assets/*/annotations/*}\x12\xcb\x01\n\x0fListAnnotations\x12\x30.google.cloud.visionai.v1.ListAnnotationsRequest\x1a\x31.google.cloud.visionai.v1.ListAnnotationsResponse\"S\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x44\x12\x42/v1/{parent=projects/*/locations/*/corpora/*/assets/*}/annotations\x12\xe7\x01\n\x10UpdateAnnotation\x12\x31.google.cloud.visionai.v1.UpdateAnnotationRequest\x1a$.google.cloud.visionai.v1.Annotation\"z\xda\x41\x16\x61nnotation,update_mask\x82\xd3\xe4\x93\x02[2M/v1/{annotation.name=projects/*/locations/*/corpora/*/assets/*/annotations/*}:\nannotation\x12\xb0\x01\n\x10\x44\x65leteAnnotation\x12\x31.google.cloud.visionai.v1.DeleteAnnotationRequest\x1a\x16.google.protobuf.Empty\"Q\xda\x41\x04name\x82\xd3\xe4\x93\x02\x44*B/v1/{name=projects/*/locations/*/corpora/*/assets/*/annotations/*}\x12p\n\x0bIngestAsset\x12,.google.cloud.visionai.v1.IngestAssetRequest\x1a-.google.cloud.visionai.v1.IngestAssetResponse\"\x00(\x01\x30\x01\x12\xaa\x01\n\tClipAsset\x12*.google.cloud.visionai.v1.ClipAssetRequest\x1a+.google.cloud.visionai.v1.ClipAssetResponse\"D\x82\xd3\xe4\x93\x02>\"9/v1/{name=projects/*/locations/*/corpora/*/assets/*}:clip:\x01*\x12\xc3\x01\n\x0eGenerateHlsUri\x12/.google.cloud.visionai.v1.GenerateHlsUriRequest\x1a\x30.google.cloud.visionai.v1.GenerateHlsUriResponse\"N\x82\xd3\xe4\x93\x02H\"C/v1/{name=projects/*/locations/*/corpora/*/assets/*}:generateHlsUri:\x01*\x12\xd3\x01\n\x0cImportAssets\x12-.google.cloud.visionai.v1.ImportAssetsRequest\x1a\x1d.google.longrunning.Operation\"u\xca\x41,\n\x14ImportAssetsResponse\x12\x14ImportAssetsMetadata\x82\xd3\xe4\x93\x02@\";/v1/{parent=projects/*/locations/*/corpora/*}/assets:import:\x01*\x12\xed\x01\n\x12\x43reateSearchConfig\x12\x33.google.cloud.visionai.v1.CreateSearchConfigRequest\x1a&.google.cloud.visionai.v1.SearchConfig\"z\xda\x41%parent,search_config,search_config_id\x82\xd3\xe4\x93\x02L\";/v1/{parent=projects/*/locations/*/corpora/*}/searchConfigs:\rsearch_config\x12\xef\x01\n\x12UpdateSearchConfig\x12\x33.google.cloud.visionai.v1.UpdateSearchConfigRequest\x1a&.google.cloud.visionai.v1.SearchConfig\"|\xda\x41\x19search_config,update_mask\x82\xd3\xe4\x93\x02Z2I/v1/{search_config.name=projects/*/locations/*/corpora/*/searchConfigs/*}:\rsearch_config\x12\xb7\x01\n\x0fGetSearchConfig\x12\x30.google.cloud.visionai.v1.GetSearchConfigRequest\x1a&.google.cloud.visionai.v1.SearchConfig\"J\xda\x41\x04name\x82\xd3\xe4\x93\x02=\x12;/v1/{name=projects/*/locations/*/corpora/*/searchConfigs/*}\x12\xad\x01\n\x12\x44\x65leteSearchConfig\x12\x33.google.cloud.visionai.v1.DeleteSearchConfigRequest\x1a\x16.google.protobuf.Empty\"J\xda\x41\x04name\x82\xd3\xe4\x93\x02=*;/v1/{name=projects/*/locations/*/corpora/*/searchConfigs/*}\x12\xca\x01\n\x11ListSearchConfigs\x12\x32.google.cloud.visionai.v1.ListSearchConfigsRequest\x1a\x33.google.cloud.visionai.v1.ListSearchConfigsResponse\"L\xda\x41\x06parent\x82\xd3\xe4\x93\x02=\x12;/v1/{parent=projects/*/locations/*/corpora/*}/searchConfigs\x12\xfc\x01\n\x14\x43reateSearchHypernym\x12\x35.google.cloud.visionai.v1.CreateSearchHypernymRequest\x1a(.google.cloud.visionai.v1.SearchHypernym\"\x82\x01\xda\x41)parent,search_hypernym,search_hypernym_id\x82\xd3\xe4\x93\x02P\"=/v1/{parent=projects/*/locations/*/corpora/*}/searchHypernyms:\x0fsearch_hypernym\x12\xfe\x01\n\x14UpdateSearchHypernym\x12\x35.google.cloud.visionai.v1.UpdateSearchHypernymRequest\x1a(.google.cloud.visionai.v1.SearchHypernym\"\x84\x01\xda\x41\x1bsearch_hypernym,update_mask\x82\xd3\xe4\x93\x02`2M/v1/{search_hypernym.name=projects/*/locations/*/corpora/*/searchHypernyms/*}:\x0fsearch_hypernym\x12\xbf\x01\n\x11GetSearchHypernym\x12\x32.google.cloud.visionai.v1.GetSearchHypernymRequest\x1a(.google.cloud.visionai.v1.SearchHypernym\"L\xda\x41\x04name\x82\xd3\xe4\x93\x02?\x12=/v1/{name=projects/*/locations/*/corpora/*/searchHypernyms/*}\x12\xb3\x01\n\x14\x44\x65leteSearchHypernym\x12\x35.google.cloud.visionai.v1.DeleteSearchHypernymRequest\x1a\x16.google.protobuf.Empty\"L\xda\x41\x04name\x82\xd3\xe4\x93\x02?*=/v1/{name=projects/*/locations/*/corpora/*/searchHypernyms/*}\x12\xd2\x01\n\x13ListSearchHypernyms\x12\x34.google.cloud.visionai.v1.ListSearchHypernymsRequest\x1a\x35.google.cloud.visionai.v1.ListSearchHypernymsResponse\"N\xda\x41\x06parent\x82\xd3\xe4\x93\x02?\x12=/v1/{parent=projects/*/locations/*/corpora/*}/searchHypernyms\x12\xb4\x01\n\x0cSearchAssets\x12-.google.cloud.visionai.v1.SearchAssetsRequest\x1a..google.cloud.visionai.v1.SearchAssetsResponse\"E\x82\xd3\xe4\x93\x02?\":/v1/{corpus=projects/*/locations/*/corpora/*}:searchAssets:\x01*\x12\xdf\x01\n\x13SearchIndexEndpoint\x12\x34.google.cloud.visionai.v1.SearchIndexEndpointRequest\x1a\x35.google.cloud.visionai.v1.SearchIndexEndpointResponse\"[\x82\xd3\xe4\x93\x02U\"P/v1/{index_endpoint=projects/*/locations/*/indexEndpoints/*}:searchIndexEndpoint:\x01*\x12\x90\x02\n\x13\x43reateIndexEndpoint\x12\x34.google.cloud.visionai.v1.CreateIndexEndpointRequest\x1a\x1d.google.longrunning.Operation\"\xa3\x01\xca\x41,\n\rIndexEndpoint\x12\x1b\x43reateIndexEndpointMetadata\xda\x41\'parent,index_endpoint,index_endpoint_id\x82\xd3\xe4\x93\x02\x44\"2/v1/{parent=projects/*/locations/*}/indexEndpoints:\x0eindex_endpoint\x12\xb1\x01\n\x10GetIndexEndpoint\x12\x31.google.cloud.visionai.v1.GetIndexEndpointRequest\x1a\'.google.cloud.visionai.v1.IndexEndpoint\"A\xda\x41\x04name\x82\xd3\xe4\x93\x02\x34\x12\x32/v1/{name=projects/*/locations/*/indexEndpoints/*}\x12\xc4\x01\n\x12ListIndexEndpoints\x12\x33.google.cloud.visionai.v1.ListIndexEndpointsRequest\x1a\x34.google.cloud.visionai.v1.ListIndexEndpointsResponse\"C\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x34\x12\x32/v1/{parent=projects/*/locations/*}/indexEndpoints\x12\x92\x02\n\x13UpdateIndexEndpoint\x12\x34.google.cloud.visionai.v1.UpdateIndexEndpointRequest\x1a\x1d.google.longrunning.Operation\"\xa5\x01\xca\x41,\n\rIndexEndpoint\x12\x1bUpdateIndexEndpointMetadata\xda\x41\x1aindex_endpoint,update_mask\x82\xd3\xe4\x93\x02S2A/v1/{index_endpoint.name=projects/*/locations/*/indexEndpoints/*}:\x0eindex_endpoint\x12\xe4\x01\n\x13\x44\x65leteIndexEndpoint\x12\x34.google.cloud.visionai.v1.DeleteIndexEndpointRequest\x1a\x1d.google.longrunning.Operation\"x\xca\x41\x34\n\x15google.protobuf.Empty\x12\x1b\x44\x65leteIndexEndpointMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02\x34*2/v1/{name=projects/*/locations/*/indexEndpoints/*}\x12\xdd\x01\n\x0b\x44\x65ployIndex\x12,.google.cloud.visionai.v1.DeployIndexRequest\x1a\x1d.google.longrunning.Operation\"\x80\x01\xca\x41*\n\x13\x44\x65ployIndexResponse\x12\x13\x44\x65ployIndexMetadata\x82\xd3\xe4\x93\x02M\"H/v1/{index_endpoint=projects/*/locations/*/indexEndpoints/*}:deployIndex:\x01*\x12\xe7\x01\n\rUndeployIndex\x12..google.cloud.visionai.v1.UndeployIndexRequest\x1a\x1d.google.longrunning.Operation\"\x86\x01\xca\x41.\n\x15UndeployIndexResponse\x12\x15UndeployIndexMetadata\x82\xd3\xe4\x93\x02O\"J/v1/{index_endpoint=projects/*/locations/*/indexEndpoints/*}:undeployIndex:\x01*\x12\xff\x01\n\x10\x43reateCollection\x12\x31.google.cloud.visionai.v1.CreateCollectionRequest\x1a\x1d.google.longrunning.Operation\"\x98\x01\xca\x41&\n\nCollection\x12\x18\x43reateCollectionMetadata\xda\x41\x1fparent,collection,collection_id\x82\xd3\xe4\x93\x02G\"9/v1/{parent=projects/*/locations/*/corpora/*}/collections:\ncollection\x12\xe2\x01\n\x10\x44\x65leteCollection\x12\x31.google.cloud.visionai.v1.DeleteCollectionRequest\x1a\x1d.google.longrunning.Operation\"|\xca\x41\x31\n\x15google.protobuf.Empty\x12\x18\x44\x65leteCollectionMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02;*9/v1/{name=projects/*/locations/*/corpora/*/collections/*}\x12\xaf\x01\n\rGetCollection\x12..google.cloud.visionai.v1.GetCollectionRequest\x1a$.google.cloud.visionai.v1.Collection\"H\xda\x41\x04name\x82\xd3\xe4\x93\x02;\x12\x39/v1/{name=projects/*/locations/*/corpora/*/collections/*}\x12\xde\x01\n\x10UpdateCollection\x12\x31.google.cloud.visionai.v1.UpdateCollectionRequest\x1a$.google.cloud.visionai.v1.Collection\"q\xda\x41\x16\x63ollection,update_mask\x82\xd3\xe4\x93\x02R2D/v1/{collection.name=projects/*/locations/*/corpora/*/collections/*}:\ncollection\x12\xc2\x01\n\x0fListCollections\x12\x30.google.cloud.visionai.v1.ListCollectionsRequest\x1a\x31.google.cloud.visionai.v1.ListCollectionsResponse\"J\xda\x41\x06parent\x82\xd3\xe4\x93\x02;\x12\x39/v1/{parent=projects/*/locations/*/corpora/*}/collections\x12\xe6\x01\n\x11\x41\x64\x64\x43ollectionItem\x12\x32.google.cloud.visionai.v1.AddCollectionItemRequest\x1a\x33.google.cloud.visionai.v1.AddCollectionItemResponse\"h\xda\x41\x04item\x82\xd3\xe4\x93\x02[\"V/v1/{item.collection=projects/*/locations/*/corpora/*/collections/*}:addCollectionItem:\x01*\x12\xf2\x01\n\x14RemoveCollectionItem\x12\x35.google.cloud.visionai.v1.RemoveCollectionItemRequest\x1a\x36.google.cloud.visionai.v1.RemoveCollectionItemResponse\"k\xda\x41\x04item\x82\xd3\xe4\x93\x02^\"Y/v1/{item.collection=projects/*/locations/*/corpora/*/collections/*}:removeCollectionItem:\x01*\x12\xec\x01\n\x13ViewCollectionItems\x12\x34.google.cloud.visionai.v1.ViewCollectionItemsRequest\x1a\x35.google.cloud.visionai.v1.ViewCollectionItemsResponse\"h\xda\x41\ncollection\x82\xd3\xe4\x93\x02U\x12S/v1/{collection=projects/*/locations/*/corpora/*/collections/*}:viewCollectionItems\x1aK\xca\x41\x17visionai.googleapis.com\xd2\x41.https://www.googleapis.com/auth/cloud-platformB\xbe\x01\n\x1c\x63om.google.cloud.visionai.v1B\x0eWarehouseProtoP\x01Z8cloud.google.com/go/visionai/apiv1/visionaipb;visionaipb\xaa\x02\x18Google.Cloud.VisionAI.V1\xca\x02\x18Google\\Cloud\\VisionAI\\V1\xea\x02\x1bGoogle::Cloud::VisionAI::V1b\x06proto3"
23
+ descriptor_data = "\n(google/cloud/visionai/v1/warehouse.proto\x12\x18google.cloud.visionai.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a%google/cloud/visionai/v1/common.proto\x1a#google/longrunning/operations.proto\x1a\x19google/protobuf/any.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a google/protobuf/field_mask.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17google/rpc/status.proto\x1a\x1agoogle/type/datetime.proto\"\xaa\x01\n\x12\x43reateAssetRequest\x12\x36\n\x06parent\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1evisionai.googleapis.com/Corpus\x12\x33\n\x05\x61sset\x18\x02 \x01(\x0b\x32\x1f.google.cloud.visionai.v1.AssetB\x03\xe0\x41\x02\x12\x1a\n\x08\x61sset_id\x18\x03 \x01(\tB\x03\xe0\x41\x01H\x00\x88\x01\x01\x42\x0b\n\t_asset_id\"F\n\x0fGetAssetRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Asset\"\x81\x01\n\x11ListAssetsRequest\x12\x35\n\x06parent\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\x12\x1dvisionai.googleapis.com/Asset\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x0e\n\x06\x66ilter\x18\x05 \x01(\t\"^\n\x12ListAssetsResponse\x12/\n\x06\x61ssets\x18\x01 \x03(\x0b\x32\x1f.google.cloud.visionai.v1.Asset\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"z\n\x12UpdateAssetRequest\x12\x33\n\x05\x61sset\x18\x01 \x01(\x0b\x32\x1f.google.cloud.visionai.v1.AssetB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\"I\n\x12\x44\x65leteAssetRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Asset\"\x97\x02\n\x0b\x41ssetSource\x12P\n\x10\x61sset_gcs_source\x18\x01 \x01(\x0b\x32\x34.google.cloud.visionai.v1.AssetSource.AssetGcsSourceH\x00\x12T\n\x12\x61sset_content_data\x18\x02 \x01(\x0b\x32\x36.google.cloud.visionai.v1.AssetSource.AssetContentDataH\x00\x1a!\n\x0e\x41ssetGcsSource\x12\x0f\n\x07gcs_uri\x18\x01 \x01(\t\x1a.\n\x10\x41ssetContentData\x12\x1a\n\x12\x61sset_content_data\x18\x01 \x01(\x0c\x42\r\n\x0bsource_form\"\x86\x01\n\x12UploadAssetRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Asset\x12;\n\x0c\x61sset_source\x18\x02 \x01(\x0b\x32%.google.cloud.visionai.v1.AssetSource\"\x15\n\x13UploadAssetResponse\"v\n\x13UploadAssetMetadata\x12.\n\nstart_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12/\n\x0bupdate_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"R\n\x1bGenerateRetrievalUrlRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Asset\"2\n\x1cGenerateRetrievalUrlResponse\x12\x12\n\nsigned_uri\x18\x01 \x01(\t\"\x86\x02\n\x05\x41sset\x12\x0c\n\x04name\x18\x01 \x01(\t\x12&\n\x03ttl\x18\x02 \x01(\x0b\x32\x19.google.protobuf.Duration\x12S\n\x10\x61sset_gcs_source\x18\x04 \x01(\x0b\x32\x34.google.cloud.visionai.v1.AssetSource.AssetGcsSourceB\x03\xe0\x41\x03:r\xea\x41o\n\x1dvisionai.googleapis.com/Asset\x12Nprojects/{project_number}/locations/{location}/corpora/{corpus}/assets/{asset}\"J\n\x13\x41nalyzeAssetRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Asset\"\xe1\x03\n\x14\x41nalyzeAssetMetadata\x12V\n\x0f\x61nalysis_status\x18\x01 \x03(\x0b\x32=.google.cloud.visionai.v1.AnalyzeAssetMetadata.AnalysisStatus\x12.\n\nstart_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12/\n\x0bupdate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a\x8f\x02\n\x0e\x41nalysisStatus\x12R\n\x05state\x18\x02 \x01(\x0e\x32\x43.google.cloud.visionai.v1.AnalyzeAssetMetadata.AnalysisStatus.State\x12\x16\n\x0estatus_message\x18\x03 \x01(\t\x12\x45\n\x11search_capability\x18\x04 \x01(\x0b\x32*.google.cloud.visionai.v1.SearchCapability\"J\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0f\n\x0bIN_PROGRESS\x10\x01\x12\r\n\tSUCCEEDED\x10\x02\x12\n\n\x06\x46\x41ILED\x10\x03\"\x16\n\x14\x41nalyzeAssetResponse\"\xb8\x01\n\x0eIndexingStatus\x12\x42\n\x05state\x18\x02 \x01(\x0e\x32..google.cloud.visionai.v1.IndexingStatus.StateB\x03\xe0\x41\x03\x12\x16\n\x0estatus_message\x18\x03 \x01(\t\"J\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0f\n\x0bIN_PROGRESS\x10\x01\x12\r\n\tSUCCEEDED\x10\x02\x12\n\n\x06\x46\x41ILED\x10\x03\"~\n\x11IndexAssetRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Asset\x12\x34\n\x05index\x18\x02 \x01(\tB%\xe0\x41\x01\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Index\"\xaf\x01\n\x12IndexAssetMetadata\x12\x38\n\x06status\x18\x04 \x01(\x0b\x32(.google.cloud.visionai.v1.IndexingStatus\x12.\n\nstart_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12/\n\x0bupdate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\x14\n\x12IndexAssetResponse\"\x84\x01\n\x17RemoveIndexAssetRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Asset\x12\x34\n\x05index\x18\x02 \x01(\tB%\xe0\x41\x01\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Index\"\xbe\x01\n\x18RemoveIndexAssetMetadata\x12\x41\n\x0findexing_status\x18\x01 \x01(\x0b\x32(.google.cloud.visionai.v1.IndexingStatus\x12.\n\nstart_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12/\n\x0bupdate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\x1a\n\x18RemoveIndexAssetResponse\"\xe6\x01\n\x0cIndexedAsset\x12\x34\n\x05index\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Index\x12\x34\n\x05\x61sset\x18\x02 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Asset\x12\x34\n\x0b\x63reate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x34\n\x0bupdate_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\"\x87\x01\n\x18ViewIndexedAssetsRequest\x12\x34\n\x05index\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Index\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x0e\n\x06\x66ilter\x18\x04 \x01(\t\"t\n\x19ViewIndexedAssetsResponse\x12>\n\x0eindexed_assets\x18\x01 \x03(\x0b\x32&.google.cloud.visionai.v1.IndexedAsset\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"a\n\x13\x43reateCorpusRequest\x12\x13\n\x06parent\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x35\n\x06\x63orpus\x18\x02 \x01(\x0b\x32 .google.cloud.visionai.v1.CorpusB\x03\xe0\x41\x02\"x\n\x14\x43reateCorpusMetadata\x12/\n\x0b\x63reate_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12/\n\x0bupdate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\x85\x01\n\x10SearchCapability\x12=\n\x04type\x18\x01 \x01(\x0e\x32/.google.cloud.visionai.v1.SearchCapability.Type\"2\n\x04Type\x12\x14\n\x10TYPE_UNSPECIFIED\x10\x00\x12\x14\n\x10\x45MBEDDING_SEARCH\x10\x01\"b\n\x17SearchCapabilitySetting\x12G\n\x13search_capabilities\x18\x01 \x03(\x0b\x32*.google.cloud.visionai.v1.SearchCapability\"c\n\x18\x43reateCollectionMetadata\x12G\n\x12operation_metadata\x18\x01 \x01(\x0b\x32+.google.cloud.visionai.v1.OperationMetadata\"\xc3\x01\n\x17\x43reateCollectionRequest\x12\x36\n\x06parent\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1evisionai.googleapis.com/Corpus\x12=\n\ncollection\x18\x02 \x01(\x0b\x32$.google.cloud.visionai.v1.CollectionB\x03\xe0\x41\x02\x12\x1f\n\rcollection_id\x18\x03 \x01(\tB\x03\xe0\x41\x01H\x00\x88\x01\x01\x42\x10\n\x0e_collection_id\"c\n\x18\x44\x65leteCollectionMetadata\x12G\n\x12operation_metadata\x18\x01 \x01(\x0b\x32+.google.cloud.visionai.v1.OperationMetadata\"S\n\x17\x44\x65leteCollectionRequest\x12\x38\n\x04name\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\n\"visionai.googleapis.com/Collection\"P\n\x14GetCollectionRequest\x12\x38\n\x04name\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\n\"visionai.googleapis.com/Collection\"\x89\x01\n\x17UpdateCollectionRequest\x12=\n\ncollection\x18\x01 \x01(\x0b\x32$.google.cloud.visionai.v1.CollectionB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\"{\n\x16ListCollectionsRequest\x12:\n\x06parent\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\x12\"visionai.googleapis.com/Collection\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"m\n\x17ListCollectionsResponse\x12\x39\n\x0b\x63ollections\x18\x01 \x03(\x0b\x32$.google.cloud.visionai.v1.Collection\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"W\n\x18\x41\x64\x64\x43ollectionItemRequest\x12;\n\x04item\x18\x01 \x01(\x0b\x32(.google.cloud.visionai.v1.CollectionItemB\x03\xe0\x41\x02\"S\n\x19\x41\x64\x64\x43ollectionItemResponse\x12\x36\n\x04item\x18\x01 \x01(\x0b\x32(.google.cloud.visionai.v1.CollectionItem\"Z\n\x1bRemoveCollectionItemRequest\x12;\n\x04item\x18\x01 \x01(\x0b\x32(.google.cloud.visionai.v1.CollectionItemB\x03\xe0\x41\x02\"V\n\x1cRemoveCollectionItemResponse\x12\x36\n\x04item\x18\x01 \x01(\x0b\x32(.google.cloud.visionai.v1.CollectionItem\"\x83\x01\n\x1aViewCollectionItemsRequest\x12>\n\ncollection\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\n\"visionai.googleapis.com/Collection\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"o\n\x1bViewCollectionItemsResponse\x12\x37\n\x05items\x18\x01 \x03(\x0b\x32(.google.cloud.visionai.v1.CollectionItem\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\xd8\x01\n\nCollection\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12\x19\n\x0c\x64isplay_name\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x18\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x03\xe0\x41\x01:\x81\x01\xea\x41~\n\"visionai.googleapis.com/Collection\x12Xprojects/{project_number}/locations/{location}/corpora/{corpus}/collections/{collection}\"\xd7\x01\n\x0e\x43ollectionItem\x12>\n\ncollection\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\n\"visionai.googleapis.com/Collection\x12@\n\x04type\x18\x02 \x01(\x0e\x32-.google.cloud.visionai.v1.CollectionItem.TypeB\x03\xe0\x41\x02\x12\x1a\n\ritem_resource\x18\x03 \x01(\tB\x03\xe0\x41\x02\"\'\n\x04Type\x12\x14\n\x10TYPE_UNSPECIFIED\x10\x00\x12\t\n\x05\x41SSET\x10\x01\"\x98\x01\n\x12\x43reateIndexRequest\x12\x36\n\x06parent\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1evisionai.googleapis.com/Corpus\x12\x15\n\x08index_id\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x33\n\x05index\x18\x03 \x01(\x0b\x32\x1f.google.cloud.visionai.v1.IndexB\x03\xe0\x41\x02\"^\n\x13\x43reateIndexMetadata\x12G\n\x12operation_metadata\x18\x01 \x01(\x0b\x32+.google.cloud.visionai.v1.OperationMetadata\"\x7f\n\x12UpdateIndexRequest\x12\x33\n\x05index\x18\x01 \x01(\x0b\x32\x1f.google.cloud.visionai.v1.IndexB\x03\xe0\x41\x02\x12\x34\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x02\"^\n\x13UpdateIndexMetadata\x12G\n\x12operation_metadata\x18\x01 \x01(\x0b\x32+.google.cloud.visionai.v1.OperationMetadata\"F\n\x0fGetIndexRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Index\"r\n\x12ListIndexesRequest\x12\x35\n\x06parent\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\x12\x1dvisionai.googleapis.com/Index\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"`\n\x13ListIndexesResponse\x12\x30\n\x07indexes\x18\x01 \x03(\x0b\x32\x1f.google.cloud.visionai.v1.Index\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"I\n\x12\x44\x65leteIndexRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Index\"\x15\n\x13\x44\x65leteIndexMetadata\"\x94\x05\n\x05Index\x12\x17\n\rentire_corpus\x18\t \x01(\x08H\x00\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12\x19\n\x0c\x64isplay_name\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x18\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x39\n\x05state\x18\x04 \x01(\x0e\x32%.google.cloud.visionai.v1.Index.StateB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x34\n\x0bupdate_time\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12O\n\x10\x64\x65ployed_indexes\x18\x08 \x03(\x0b\x32\x30.google.cloud.visionai.v1.DeployedIndexReferenceB\x03\xe0\x41\x03\x12\x1f\n\rsatisfies_pzs\x18\x0b \x01(\x08\x42\x03\xe0\x41\x03H\x01\x88\x01\x01\x12\x1f\n\rsatisfies_pzi\x18\x0c \x01(\x08\x42\x03\xe0\x41\x03H\x02\x88\x01\x01\"G\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0c\n\x08\x43REATING\x10\x01\x12\x0b\n\x07\x43REATED\x10\x02\x12\x0c\n\x08UPDATING\x10\x03:s\xea\x41p\n\x1dvisionai.googleapis.com/Index\x12Oprojects/{project_number}/locations/{location}/corpora/{corpus}/indexes/{index}B\x0e\n\x0c\x61sset_filterB\x10\n\x0e_satisfies_pzsB\x10\n\x0e_satisfies_pzi\"_\n\x16\x44\x65ployedIndexReference\x12\x45\n\x0eindex_endpoint\x18\x01 \x01(\tB-\xe0\x41\x05\xfa\x41\'\n%visionai.googleapis.com/IndexEndpoint\"\xac\x04\n\x06\x43orpus\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x19\n\x0c\x64isplay_name\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x33\n\x0b\x64\x65\x66\x61ult_ttl\x18\x05 \x01(\x0b\x32\x19.google.protobuf.DurationB\x03\xe0\x41\x01\x12\x38\n\x04type\x18\x07 \x01(\x0e\x32%.google.cloud.visionai.v1.Corpus.TypeB\x03\xe0\x41\x01\x12T\n\x19search_capability_setting\x18\x08 \x01(\x0b\x32\x31.google.cloud.visionai.v1.SearchCapabilitySetting\x12\x1f\n\rsatisfies_pzs\x18\x0b \x01(\x08\x42\x03\xe0\x41\x03H\x00\x88\x01\x01\x12\x1f\n\rsatisfies_pzi\x18\x0c \x01(\x08\x42\x03\xe0\x41\x03H\x01\x88\x01\x01\"N\n\x04Type\x12\x14\n\x10TYPE_UNSPECIFIED\x10\x00\x12\x10\n\x0cSTREAM_VIDEO\x10\x01\x12\t\n\x05IMAGE\x10\x02\x12\x13\n\x0fVIDEO_ON_DEMAND\x10\x03:d\xea\x41\x61\n\x1evisionai.googleapis.com/Corpus\x12?projects/{project_number}/locations/{location}/corpora/{corpus}B\x10\n\x0e_satisfies_pzsB\x10\n\x0e_satisfies_pzi\"H\n\x10GetCorpusRequest\x12\x34\n\x04name\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1evisionai.googleapis.com/Corpus\"}\n\x13UpdateCorpusRequest\x12\x35\n\x06\x63orpus\x18\x01 \x01(\x0b\x32 .google.cloud.visionai.v1.CorpusB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\"`\n\x12ListCorporaRequest\x12\x13\n\x06parent\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x0e\n\x06\x66ilter\x18\x05 \x01(\t\"a\n\x13ListCorporaResponse\x12\x31\n\x07\x63orpora\x18\x01 \x03(\x0b\x32 .google.cloud.visionai.v1.Corpus\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"K\n\x13\x44\x65leteCorpusRequest\x12\x34\n\x04name\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1evisionai.googleapis.com/Corpus\"L\n\x14\x41nalyzeCorpusRequest\x12\x34\n\x04name\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1evisionai.googleapis.com/Corpus\"V\n\x15\x41nalyzeCorpusMetadata\x12=\n\x08metadata\x18\x01 \x01(\x0b\x32+.google.cloud.visionai.v1.OperationMetadata\"\x17\n\x15\x41nalyzeCorpusResponse\"\x91\x01\n\x17\x43reateDataSchemaRequest\x12\x36\n\x06parent\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1evisionai.googleapis.com/Corpus\x12>\n\x0b\x64\x61ta_schema\x18\x02 \x01(\x0b\x32$.google.cloud.visionai.v1.DataSchemaB\x03\xe0\x41\x02\"\xf6\x01\n\nDataSchema\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x10\n\x03key\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x43\n\x0eschema_details\x18\x03 \x01(\x0b\x32+.google.cloud.visionai.v1.DataSchemaDetails:\x82\x01\xea\x41\x7f\n\"visionai.googleapis.com/DataSchema\x12Yprojects/{project_number}/locations/{location}/corpora/{corpus}/dataSchemas/{data_schema}\"\xd4\x0c\n\x11\x44\x61taSchemaDetails\x12G\n\x04type\x18\x01 \x01(\x0e\x32\x34.google.cloud.visionai.v1.DataSchemaDetails.DataTypeH\x00\x88\x01\x01\x12T\n\x10proto_any_config\x18\x06 \x01(\x0b\x32:.google.cloud.visionai.v1.DataSchemaDetails.ProtoAnyConfig\x12K\n\x0blist_config\x18\x08 \x01(\x0b\x32\x36.google.cloud.visionai.v1.DataSchemaDetails.ListConfig\x12\x64\n\x18\x63ustomized_struct_config\x18\t \x01(\x0b\x32\x42.google.cloud.visionai.v1.DataSchemaDetails.CustomizedStructConfig\x12Q\n\x0bgranularity\x18\x05 \x01(\x0e\x32\x37.google.cloud.visionai.v1.DataSchemaDetails.GranularityH\x01\x88\x01\x01\x12S\n\x0fsearch_strategy\x18\x07 \x01(\x0b\x32:.google.cloud.visionai.v1.DataSchemaDetails.SearchStrategy\x1a\"\n\x0eProtoAnyConfig\x12\x10\n\x08type_uri\x18\x01 \x01(\t\x1aO\n\nListConfig\x12\x41\n\x0cvalue_schema\x18\x01 \x01(\x0b\x32+.google.cloud.visionai.v1.DataSchemaDetails\x1a\xe7\x01\n\x16\x43ustomizedStructConfig\x12k\n\rfield_schemas\x18\x01 \x03(\x0b\x32T.google.cloud.visionai.v1.DataSchemaDetails.CustomizedStructConfig.FieldSchemasEntry\x1a`\n\x11\x46ieldSchemasEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12:\n\x05value\x18\x02 \x01(\x0b\x32+.google.cloud.visionai.v1.DataSchemaDetails:\x02\x38\x01\x1a\xb7\x03\n\x0eSearchStrategy\x12p\n\x14search_strategy_type\x18\x01 \x01(\x0e\x32M.google.cloud.visionai.v1.DataSchemaDetails.SearchStrategy.SearchStrategyTypeH\x00\x88\x01\x01\x12\x81\x01\n\x1d\x63onfidence_score_index_config\x18\x02 \x01(\x0b\x32U.google.cloud.visionai.v1.DataSchemaDetails.SearchStrategy.ConfidenceScoreIndexConfigB\x03\xe0\x41\x01\x1aM\n\x1a\x43onfidenceScoreIndexConfig\x12\x17\n\nfield_path\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x16\n\tthreshold\x18\x02 \x01(\x02\x42\x03\xe0\x41\x02\"G\n\x12SearchStrategyType\x12\r\n\tNO_SEARCH\x10\x00\x12\x10\n\x0c\x45XACT_SEARCH\x10\x01\x12\x10\n\x0cSMART_SEARCH\x10\x02\x42\x17\n\x15_search_strategy_type\"\xa8\x01\n\x08\x44\x61taType\x12\x19\n\x15\x44\x41TA_TYPE_UNSPECIFIED\x10\x00\x12\x0b\n\x07INTEGER\x10\x01\x12\t\n\x05\x46LOAT\x10\x02\x12\n\n\x06STRING\x10\x03\x12\x0c\n\x08\x44\x41TETIME\x10\x05\x12\x12\n\x0eGEO_COORDINATE\x10\x07\x12\r\n\tPROTO_ANY\x10\x08\x12\x0b\n\x07\x42OOLEAN\x10\t\x12\x08\n\x04LIST\x10\n\x12\x15\n\x11\x43USTOMIZED_STRUCT\x10\x06\"h\n\x0bGranularity\x12\x1b\n\x17GRANULARITY_UNSPECIFIED\x10\x00\x12\x1b\n\x17GRANULARITY_ASSET_LEVEL\x10\x01\x12\x1f\n\x1bGRANULARITY_PARTITION_LEVEL\x10\x02\x42\x07\n\x05_typeB\x0e\n\x0c_granularity\"\x8a\x01\n\x17UpdateDataSchemaRequest\x12>\n\x0b\x64\x61ta_schema\x18\x01 \x01(\x0b\x32$.google.cloud.visionai.v1.DataSchemaB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\"P\n\x14GetDataSchemaRequest\x12\x38\n\x04name\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\n\"visionai.googleapis.com/DataSchema\"S\n\x17\x44\x65leteDataSchemaRequest\x12\x38\n\x04name\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\n\"visionai.googleapis.com/DataSchema\"{\n\x16ListDataSchemasRequest\x12:\n\x06parent\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\x12\"visionai.googleapis.com/DataSchema\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"n\n\x17ListDataSchemasResponse\x12:\n\x0c\x64\x61ta_schemas\x18\x01 \x03(\x0b\x32$.google.cloud.visionai.v1.DataSchema\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\xc2\x01\n\x17\x43reateAnnotationRequest\x12\x35\n\x06parent\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Asset\x12=\n\nannotation\x18\x02 \x01(\x0b\x32$.google.cloud.visionai.v1.AnnotationB\x03\xe0\x41\x02\x12\x1f\n\rannotation_id\x18\x03 \x01(\tB\x03\xe0\x41\x01H\x00\x88\x01\x01\x42\x10\n\x0e_annotation_id\"\x84\x02\n\nAnnotation\x12\x0c\n\x04name\x18\x01 \x01(\t\x12T\n\x19user_specified_annotation\x18\x02 \x01(\x0b\x32\x31.google.cloud.visionai.v1.UserSpecifiedAnnotation:\x91\x01\xea\x41\x8d\x01\n\"visionai.googleapis.com/Annotation\x12gprojects/{project_number}/locations/{location}/corpora/{corpus}/assets/{asset}/annotations/{annotation}\"\x9d\x01\n\x17UserSpecifiedAnnotation\x12\x10\n\x03key\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x38\n\x05value\x18\x02 \x01(\x0b\x32).google.cloud.visionai.v1.AnnotationValue\x12\x36\n\tpartition\x18\x03 \x01(\x0b\x32#.google.cloud.visionai.v1.Partition\"4\n\rGeoCoordinate\x12\x10\n\x08latitude\x18\x01 \x01(\x01\x12\x11\n\tlongitude\x18\x02 \x01(\x01\"\xd9\x03\n\x0f\x41nnotationValue\x12\x13\n\tint_value\x18\x01 \x01(\x03H\x00\x12\x15\n\x0b\x66loat_value\x18\x02 \x01(\x02H\x00\x12\x13\n\tstr_value\x18\x03 \x01(\tH\x00\x12\x18\n\x0e\x64\x61tetime_value\x18\x05 \x01(\tH\x00\x12\x41\n\x0egeo_coordinate\x18\x07 \x01(\x0b\x32\'.google.cloud.visionai.v1.GeoCoordinateH\x00\x12/\n\x0fproto_any_value\x18\x08 \x01(\x0b\x32\x14.google.protobuf.AnyH\x00\x12\x14\n\nbool_value\x18\t \x01(\x08H\x00\x12?\n\x1c\x63ustomized_struct_data_value\x18\n \x01(\x0b\x32\x17.google.protobuf.StructH\x00\x12>\n\nlist_value\x18\x0b \x01(\x0b\x32(.google.cloud.visionai.v1.AnnotationListH\x00\x12W\n\x17\x63ustomized_struct_value\x18\x06 \x01(\x0b\x32\x34.google.cloud.visionai.v1.AnnotationCustomizedStructH\x00\x42\x07\n\x05value\"K\n\x0e\x41nnotationList\x12\x39\n\x06values\x18\x01 \x03(\x0b\x32).google.cloud.visionai.v1.AnnotationValue\"\xce\x01\n\x1a\x41nnotationCustomizedStruct\x12T\n\x08\x65lements\x18\x02 \x03(\x0b\x32\x42.google.cloud.visionai.v1.AnnotationCustomizedStruct.ElementsEntry\x1aZ\n\rElementsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x38\n\x05value\x18\x02 \x01(\x0b\x32).google.cloud.visionai.v1.AnnotationValue:\x02\x38\x01\"\x83\x01\n\x16ListAnnotationsRequest\x12\x32\n\x06parent\x18\x01 \x01(\tB\"\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Asset\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x0e\n\x06\x66ilter\x18\x04 \x01(\t\"m\n\x17ListAnnotationsResponse\x12\x39\n\x0b\x61nnotations\x18\x01 \x03(\x0b\x32$.google.cloud.visionai.v1.Annotation\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"P\n\x14GetAnnotationRequest\x12\x38\n\x04name\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\n\"visionai.googleapis.com/Annotation\"\x89\x01\n\x17UpdateAnnotationRequest\x12=\n\nannotation\x18\x01 \x01(\x0b\x32$.google.cloud.visionai.v1.AnnotationB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\"S\n\x17\x44\x65leteAnnotationRequest\x12\x38\n\x04name\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\n\"visionai.googleapis.com/Annotation\"q\n\x13ImportAssetsRequest\x12\x18\n\x0e\x61ssets_gcs_uri\x18\x02 \x01(\tH\x00\x12\x36\n\x06parent\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1evisionai.googleapis.com/CorpusB\x08\n\x06source\"\x95\x01\n\x14ImportAssetsMetadata\x12=\n\x08metadata\x18\x01 \x01(\x0b\x32+.google.cloud.visionai.v1.OperationMetadata\x12>\n\x06status\x18\x02 \x01(\x0b\x32..google.cloud.visionai.v1.BatchOperationStatus\"D\n\x14\x42\x61tchOperationStatus\x12\x15\n\rsuccess_count\x18\x01 \x01(\x05\x12\x15\n\rfailure_count\x18\x02 \x01(\x05\"\x16\n\x14ImportAssetsResponse\"\xbc\x01\n\x19\x43reateSearchConfigRequest\x12<\n\x06parent\x18\x01 \x01(\tB,\xe0\x41\x02\xfa\x41&\x12$visionai.googleapis.com/SearchConfig\x12\x42\n\rsearch_config\x18\x02 \x01(\x0b\x32&.google.cloud.visionai.v1.SearchConfigB\x03\xe0\x41\x02\x12\x1d\n\x10search_config_id\x18\x03 \x01(\tB\x03\xe0\x41\x02\"\x90\x01\n\x19UpdateSearchConfigRequest\x12\x42\n\rsearch_config\x18\x01 \x01(\x0b\x32&.google.cloud.visionai.v1.SearchConfigB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\"T\n\x16GetSearchConfigRequest\x12:\n\x04name\x18\x01 \x01(\tB,\xe0\x41\x02\xfa\x41&\n$visionai.googleapis.com/SearchConfig\"W\n\x19\x44\x65leteSearchConfigRequest\x12:\n\x04name\x18\x01 \x01(\tB,\xe0\x41\x02\xfa\x41&\n$visionai.googleapis.com/SearchConfig\"\x7f\n\x18ListSearchConfigsRequest\x12<\n\x06parent\x18\x01 \x01(\tB,\xe0\x41\x02\xfa\x41&\x12$visionai.googleapis.com/SearchConfig\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"t\n\x19ListSearchConfigsResponse\x12>\n\x0esearch_configs\x18\x01 \x03(\x0b\x32&.google.cloud.visionai.v1.SearchConfig\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\xbd\x02\n\x0cSearchConfig\x12\x0c\n\x04name\x18\x01 \x01(\t\x12?\n\x0e\x66\x61\x63\x65t_property\x18\x02 \x01(\x0b\x32\'.google.cloud.visionai.v1.FacetProperty\x12R\n\x18search_criteria_property\x18\x03 \x01(\x0b\x32\x30.google.cloud.visionai.v1.SearchCriteriaProperty:\x89\x01\xea\x41\x85\x01\n$visionai.googleapis.com/SearchConfig\x12]projects/{project_number}/locations/{location}/corpora/{corpus}/searchConfigs/{search_config}\"\xf5\x05\n\rIndexEndpoint\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12\x19\n\x0c\x64isplay_name\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x18\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x44\n\x0e\x64\x65ployed_index\x18\t \x01(\x0b\x32\'.google.cloud.visionai.v1.DeployedIndexB\x03\xe0\x41\x03\x12\x41\n\x05state\x18\x05 \x01(\x0e\x32-.google.cloud.visionai.v1.IndexEndpoint.StateB\x03\xe0\x41\x03\x12H\n\x06labels\x18\x06 \x03(\x0b\x32\x33.google.cloud.visionai.v1.IndexEndpoint.LabelsEntryB\x03\xe0\x41\x01\x12\x34\n\x0b\x63reate_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x34\n\x0bupdate_time\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x1f\n\rsatisfies_pzs\x18\n \x01(\x08\x42\x03\xe0\x41\x03H\x00\x88\x01\x01\x12\x1f\n\rsatisfies_pzi\x18\x0b \x01(\x08\x42\x03\xe0\x41\x03H\x01\x88\x01\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"S\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0c\n\x08\x43REATING\x10\x01\x12\x0b\n\x07\x43REATED\x10\x02\x12\x0c\n\x08UPDATING\x10\x03\x12\n\n\x06\x46\x41ILED\x10\x04:s\xea\x41p\n%visionai.googleapis.com/IndexEndpoint\x12Gprojects/{project}/locations/{location}/indexEndpoints/{index_endpoint}B\x10\n\x0e_satisfies_pzsB\x10\n\x0e_satisfies_pzi\"\xbd\x01\n\x1a\x43reateIndexEndpointRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!locations.googleapis.com/Location\x12\x1e\n\x11index_endpoint_id\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x44\n\x0eindex_endpoint\x18\x03 \x01(\x0b\x32\'.google.cloud.visionai.v1.IndexEndpointB\x03\xe0\x41\x02\"f\n\x1b\x43reateIndexEndpointMetadata\x12G\n\x12operation_metadata\x18\x01 \x01(\x0b\x32+.google.cloud.visionai.v1.OperationMetadata\"V\n\x17GetIndexEndpointRequest\x12;\n\x04name\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%visionai.googleapis.com/IndexEndpoint\"\x9c\x01\n\x19ListIndexEndpointsRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!locations.googleapis.com/Location\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x13\n\x06\x66ilter\x18\x04 \x01(\tB\x03\xe0\x41\x01\"w\n\x1aListIndexEndpointsResponse\x12@\n\x0findex_endpoints\x18\x01 \x03(\x0b\x32\'.google.cloud.visionai.v1.IndexEndpoint\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\x98\x01\n\x1aUpdateIndexEndpointRequest\x12\x44\n\x0eindex_endpoint\x18\x01 \x01(\x0b\x32\'.google.cloud.visionai.v1.IndexEndpointB\x03\xe0\x41\x02\x12\x34\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x02\"f\n\x1bUpdateIndexEndpointMetadata\x12G\n\x12operation_metadata\x18\x01 \x01(\x0b\x32+.google.cloud.visionai.v1.OperationMetadata\"Y\n\x1a\x44\x65leteIndexEndpointRequest\x12;\n\x04name\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%visionai.googleapis.com/IndexEndpoint\"f\n\x1b\x44\x65leteIndexEndpointMetadata\x12G\n\x12operation_metadata\x18\x01 \x01(\x0b\x32+.google.cloud.visionai.v1.OperationMetadata\"\xa1\x01\n\x12\x44\x65ployIndexRequest\x12\x45\n\x0eindex_endpoint\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%visionai.googleapis.com/IndexEndpoint\x12\x44\n\x0e\x64\x65ployed_index\x18\x03 \x01(\x0b\x32\'.google.cloud.visionai.v1.DeployedIndexB\x03\xe0\x41\x02\"\x15\n\x13\x44\x65ployIndexResponse\"\x9d\x01\n\x13\x44\x65ployIndexMetadata\x12G\n\x12operation_metadata\x18\x01 \x01(\x0b\x32+.google.cloud.visionai.v1.OperationMetadata\x12=\n\x0e\x64\x65ployed_index\x18\x02 \x01(\tB%\xe0\x41\x03\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Index\"\x9f\x01\n\x15UndeployIndexMetadata\x12G\n\x12operation_metadata\x18\x01 \x01(\x0b\x32+.google.cloud.visionai.v1.OperationMetadata\x12=\n\x0e\x64\x65ployed_index\x18\x02 \x01(\tB%\xe0\x41\x03\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Index\"]\n\x14UndeployIndexRequest\x12\x45\n\x0eindex_endpoint\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%visionai.googleapis.com/IndexEndpoint\"\x17\n\x15UndeployIndexResponse\"E\n\rDeployedIndex\x12\x34\n\x05index\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Index\"\x84\x07\n\rFacetProperty\x12_\n\x17\x66ixed_range_bucket_spec\x18\x05 \x01(\x0b\x32<.google.cloud.visionai.v1.FacetProperty.FixedRangeBucketSpecH\x00\x12\x61\n\x18\x63ustom_range_bucket_spec\x18\x06 \x01(\x0b\x32=.google.cloud.visionai.v1.FacetProperty.CustomRangeBucketSpecH\x00\x12Z\n\x14\x64\x61tetime_bucket_spec\x18\x07 \x01(\x0b\x32:.google.cloud.visionai.v1.FacetProperty.DateTimeBucketSpecH\x00\x12\x15\n\rmapped_fields\x18\x01 \x03(\t\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12\x13\n\x0bresult_size\x18\x03 \x01(\x03\x12>\n\x0b\x62ucket_type\x18\x04 \x01(\x0e\x32).google.cloud.visionai.v1.FacetBucketType\x1a\xaa\x01\n\x14\x46ixedRangeBucketSpec\x12:\n\x0c\x62ucket_start\x18\x01 \x01(\x0b\x32$.google.cloud.visionai.v1.FacetValue\x12@\n\x12\x62ucket_granularity\x18\x02 \x01(\x0b\x32$.google.cloud.visionai.v1.FacetValue\x12\x14\n\x0c\x62ucket_count\x18\x03 \x01(\x05\x1aP\n\x15\x43ustomRangeBucketSpec\x12\x37\n\tendpoints\x18\x01 \x03(\x0b\x32$.google.cloud.visionai.v1.FacetValue\x1a\xbb\x01\n\x12\x44\x61teTimeBucketSpec\x12[\n\x0bgranularity\x18\x01 \x01(\x0e\x32\x46.google.cloud.visionai.v1.FacetProperty.DateTimeBucketSpec.Granularity\"H\n\x0bGranularity\x12\x1b\n\x17GRANULARITY_UNSPECIFIED\x10\x00\x12\x08\n\x04YEAR\x10\x01\x12\t\n\x05MONTH\x10\x02\x12\x07\n\x03\x44\x41Y\x10\x03\x42\x14\n\x12range_facet_config\"\xde\x01\n\x0eSearchHypernym\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x15\n\x08hypernym\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x15\n\x08hyponyms\x18\x03 \x03(\tB\x03\xe0\x41\x01:\x8f\x01\xea\x41\x8b\x01\n&visionai.googleapis.com/SearchHypernym\x12\x61projects/{project_number}/locations/{location}/corpora/{corpus}/searchHypernyms/{search_hypernym}\"\xda\x01\n\x1b\x43reateSearchHypernymRequest\x12\x36\n\x06parent\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1evisionai.googleapis.com/Corpus\x12\x46\n\x0fsearch_hypernym\x18\x02 \x01(\x0b\x32(.google.cloud.visionai.v1.SearchHypernymB\x03\xe0\x41\x02\x12$\n\x12search_hypernym_id\x18\x03 \x01(\tB\x03\xe0\x41\x01H\x00\x88\x01\x01\x42\x15\n\x13_search_hypernym_id\"\x96\x01\n\x1bUpdateSearchHypernymRequest\x12\x46\n\x0fsearch_hypernym\x18\x01 \x01(\x0b\x32(.google.cloud.visionai.v1.SearchHypernymB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\"X\n\x18GetSearchHypernymRequest\x12<\n\x04name\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&visionai.googleapis.com/SearchHypernym\"[\n\x1b\x44\x65leteSearchHypernymRequest\x12<\n\x04name\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&visionai.googleapis.com/SearchHypernym\"\x83\x01\n\x1aListSearchHypernymsRequest\x12>\n\x06parent\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\x12&visionai.googleapis.com/SearchHypernym\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"z\n\x1bListSearchHypernymsResponse\x12\x42\n\x10search_hypernyms\x18\x01 \x03(\x0b\x32(.google.cloud.visionai.v1.SearchHypernym\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"/\n\x16SearchCriteriaProperty\x12\x15\n\rmapped_fields\x18\x01 \x03(\t\"w\n\nFacetValue\x12\x16\n\x0cstring_value\x18\x01 \x01(\tH\x00\x12\x17\n\rinteger_value\x18\x02 \x01(\x03H\x00\x12/\n\x0e\x64\x61tetime_value\x18\x03 \x01(\x0b\x32\x15.google.type.DateTimeH\x00\x42\x07\n\x05value\"\x95\x02\n\x0b\x46\x61\x63\x65tBucket\x12\x35\n\x05value\x18\x02 \x01(\x0b\x32$.google.cloud.visionai.v1.FacetValueH\x00\x12<\n\x05range\x18\x04 \x01(\x0b\x32+.google.cloud.visionai.v1.FacetBucket.RangeH\x00\x12\x10\n\x08selected\x18\x03 \x01(\x08\x1ao\n\x05Range\x12\x33\n\x05start\x18\x01 \x01(\x0b\x32$.google.cloud.visionai.v1.FacetValue\x12\x31\n\x03\x65nd\x18\x02 \x01(\x0b\x32$.google.cloud.visionai.v1.FacetValueB\x0e\n\x0c\x62ucket_value\"\xcf\x01\n\nFacetGroup\x12\x10\n\x08\x66\x61\x63\x65t_id\x18\x01 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12\x36\n\x07\x62uckets\x18\x03 \x03(\x0b\x32%.google.cloud.visionai.v1.FacetBucket\x12>\n\x0b\x62ucket_type\x18\x04 \x01(\x0e\x32).google.cloud.visionai.v1.FacetBucketType\x12!\n\x19\x66\x65tch_matched_annotations\x18\x05 \x01(\x08\"\xa8\x05\n\x12IngestAssetRequest\x12\x45\n\x06\x63onfig\x18\x01 \x01(\x0b\x32\x33.google.cloud.visionai.v1.IngestAssetRequest.ConfigH\x00\x12Y\n\x11time_indexed_data\x18\x02 \x01(\x0b\x32<.google.cloud.visionai.v1.IngestAssetRequest.TimeIndexedDataH\x00\x1a\xe6\x02\n\x06\x43onfig\x12S\n\nvideo_type\x18\x02 \x01(\x0b\x32=.google.cloud.visionai.v1.IngestAssetRequest.Config.VideoTypeH\x00\x12\x34\n\x05\x61sset\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Asset\x1a\xc3\x01\n\tVideoType\x12g\n\x10\x63ontainer_format\x18\x01 \x01(\x0e\x32M.google.cloud.visionai.v1.IngestAssetRequest.Config.VideoType.ContainerFormat\"M\n\x0f\x43ontainerFormat\x12 \n\x1c\x43ONTAINER_FORMAT_UNSPECIFIED\x10\x00\x12\x18\n\x14\x43ONTAINER_FORMAT_MP4\x10\x01\x42\x0b\n\tdata_type\x1ar\n\x0fTimeIndexedData\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\x12Q\n\x12temporal_partition\x18\x02 \x01(\x0b\x32\x35.google.cloud.visionai.v1.Partition.TemporalPartitionB\x13\n\x11streaming_request\"u\n\x13IngestAssetResponse\x12^\n\x1fsuccessfully_ingested_partition\x18\x01 \x01(\x0b\x32\x35.google.cloud.visionai.v1.Partition.TemporalPartition\"\x9f\x01\n\x10\x43lipAssetRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Asset\x12V\n\x12temporal_partition\x18\x02 \x01(\x0b\x32\x35.google.cloud.visionai.v1.Partition.TemporalPartitionB\x03\xe0\x41\x02\"\xdc\x01\n\x11\x43lipAssetResponse\x12U\n\x11time_indexed_uris\x18\x01 \x03(\x0b\x32:.google.cloud.visionai.v1.ClipAssetResponse.TimeIndexedUri\x1ap\n\x0eTimeIndexedUri\x12Q\n\x12temporal_partition\x18\x01 \x01(\x0b\x32\x35.google.cloud.visionai.v1.Partition.TemporalPartition\x12\x0b\n\x03uri\x18\x02 \x01(\t\"\xbb\x01\n\x15GenerateHlsUriRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dvisionai.googleapis.com/Asset\x12R\n\x13temporal_partitions\x18\x02 \x03(\x0b\x32\x35.google.cloud.visionai.v1.Partition.TemporalPartition\x12\x19\n\x11live_view_enabled\x18\x03 \x01(\x08\"y\n\x16GenerateHlsUriResponse\x12\x0b\n\x03uri\x18\x01 \x01(\t\x12R\n\x13temporal_partitions\x18\x02 \x03(\x0b\x32\x35.google.cloud.visionai.v1.Partition.TemporalPartition\"\xd3\x03\n\x13SearchAssetsRequest\x12Y\n\x1bschema_key_sorting_strategy\x18\t \x01(\x0b\x32\x32.google.cloud.visionai.v1.SchemaKeySortingStrategyH\x00\x12\x36\n\x06\x63orpus\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1evisionai.googleapis.com/Corpus\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12I\n\x13\x63ontent_time_ranges\x18\x05 \x01(\x0b\x32,.google.cloud.visionai.v1.DateTimeRangeArray\x12\x34\n\x08\x63riteria\x18\x04 \x03(\x0b\x32\".google.cloud.visionai.v1.Criteria\x12>\n\x10\x66\x61\x63\x65t_selections\x18\x06 \x03(\x0b\x32$.google.cloud.visionai.v1.FacetGroup\x12\x1e\n\x16result_annotation_keys\x18\x08 \x03(\t\x12\x14\n\x0csearch_query\x18\n \x01(\tB\x0b\n\tsort_spec\"\xdc\x02\n\x1aSearchIndexEndpointRequest\x12;\n\x0bimage_query\x18\x02 \x01(\x0b\x32$.google.cloud.visionai.v1.ImageQueryH\x00\x12\x14\n\ntext_query\x18\x03 \x01(\tH\x00\x12\x45\n\x0eindex_endpoint\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%visionai.googleapis.com/IndexEndpoint\x12\x34\n\x08\x63riteria\x18\x04 \x03(\x0b\x32\".google.cloud.visionai.v1.Criteria\x12>\n\x12\x65xclusion_criteria\x18\x07 \x03(\x0b\x32\".google.cloud.visionai.v1.Criteria\x12\x11\n\tpage_size\x18\x05 \x01(\x05\x12\x12\n\npage_token\x18\x06 \x01(\tB\x07\n\x05query\"a\n\nImageQuery\x12\x15\n\x0binput_image\x18\x01 \x01(\x0cH\x00\x12\x33\n\x05\x61sset\x18\x02 \x01(\tB\"\xfa\x41\x1f\n\x1dvisionai.googleapis.com/AssetH\x00\x42\x07\n\x05image\"\x94\x03\n\x18SchemaKeySortingStrategy\x12J\n\x07options\x18\x01 \x03(\x0b\x32\x39.google.cloud.visionai.v1.SchemaKeySortingStrategy.Option\x1a\xab\x02\n\x06Option\x12\x17\n\x0f\x64\x61ta_schema_key\x18\x01 \x01(\t\x12\x17\n\x0fsort_decreasing\x18\x02 \x01(\x08\x12h\n\x10\x61ggregate_method\x18\x03 \x01(\x0e\x32I.google.cloud.visionai.v1.SchemaKeySortingStrategy.Option.AggregateMethodH\x00\x88\x01\x01\"p\n\x0f\x41ggregateMethod\x12 \n\x1c\x41GGREGATE_METHOD_UNSPECIFIED\x10\x00\x12\x1c\n\x18\x41GGREGATE_METHOD_LARGEST\x10\x01\x12\x1d\n\x19\x41GGREGATE_METHOD_SMALLEST\x10\x02\x42\x13\n\x11_aggregate_method\"\x15\n\x13\x44\x65leteAssetMetadata\"\xb7\x01\n\x18\x41nnotationMatchingResult\x12\x34\n\x08\x63riteria\x18\x01 \x01(\x0b\x32\".google.cloud.visionai.v1.Criteria\x12\x41\n\x13matched_annotations\x18\x02 \x03(\x0b\x32$.google.cloud.visionai.v1.Annotation\x12\"\n\x06status\x18\x03 \x01(\x0b\x32\x12.google.rpc.Status\"\xe7\x02\n\x10SearchResultItem\x12\r\n\x05\x61sset\x18\x01 \x01(\t\x12K\n\x08segments\x18\x02 \x03(\x0b\x32\x35.google.cloud.visionai.v1.Partition.TemporalPartitionB\x02\x18\x01\x12\x46\n\x07segment\x18\x05 \x01(\x0b\x32\x35.google.cloud.visionai.v1.Partition.TemporalPartition\x12\x11\n\trelevance\x18\x06 \x01(\x01\x12\x43\n\x15requested_annotations\x18\x03 \x03(\x0b\x32$.google.cloud.visionai.v1.Annotation\x12W\n\x1b\x61nnotation_matching_results\x18\x04 \x03(\x0b\x32\x32.google.cloud.visionai.v1.AnnotationMatchingResult\"\xb5\x01\n\x14SearchAssetsResponse\x12G\n\x13search_result_items\x18\x01 \x03(\x0b\x32*.google.cloud.visionai.v1.SearchResultItem\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12;\n\rfacet_results\x18\x03 \x03(\x0b\x32$.google.cloud.visionai.v1.FacetGroup\"\x7f\n\x1bSearchIndexEndpointResponse\x12G\n\x13search_result_items\x18\x01 \x03(\x0b\x32*.google.cloud.visionai.v1.SearchResultItem\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"B\n\x08IntRange\x12\x12\n\x05start\x18\x01 \x01(\x03H\x00\x88\x01\x01\x12\x10\n\x03\x65nd\x18\x02 \x01(\x03H\x01\x88\x01\x01\x42\x08\n\x06_startB\x06\n\x04_end\"D\n\nFloatRange\x12\x12\n\x05start\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x10\n\x03\x65nd\x18\x02 \x01(\x02H\x01\x88\x01\x01\x42\x08\n\x06_startB\x06\n\x04_end\"!\n\x0bStringArray\x12\x12\n\ntxt_values\x18\x01 \x03(\t\"G\n\rIntRangeArray\x12\x36\n\nint_ranges\x18\x01 \x03(\x0b\x32\".google.cloud.visionai.v1.IntRange\"M\n\x0f\x46loatRangeArray\x12:\n\x0c\x66loat_ranges\x18\x01 \x03(\x0b\x32$.google.cloud.visionai.v1.FloatRange\"Y\n\rDateTimeRange\x12$\n\x05start\x18\x01 \x01(\x0b\x32\x15.google.type.DateTime\x12\"\n\x03\x65nd\x18\x02 \x01(\x0b\x32\x15.google.type.DateTime\"W\n\x12\x44\x61teTimeRangeArray\x12\x41\n\x10\x64\x61te_time_ranges\x18\x01 \x03(\x0b\x32\'.google.cloud.visionai.v1.DateTimeRange\"G\n\nCircleArea\x12\x10\n\x08latitude\x18\x01 \x01(\x01\x12\x11\n\tlongitude\x18\x02 \x01(\x01\x12\x14\n\x0cradius_meter\x18\x03 \x01(\x01\"N\n\x10GeoLocationArray\x12:\n\x0c\x63ircle_areas\x18\x01 \x03(\x0b\x32$.google.cloud.visionai.v1.CircleArea\"\x1a\n\tBoolValue\x12\r\n\x05value\x18\x01 \x01(\x08\"\xe2\x03\n\x08\x43riteria\x12;\n\ntext_array\x18\x02 \x01(\x0b\x32%.google.cloud.visionai.v1.StringArrayH\x00\x12\x42\n\x0fint_range_array\x18\x03 \x01(\x0b\x32\'.google.cloud.visionai.v1.IntRangeArrayH\x00\x12\x46\n\x11\x66loat_range_array\x18\x04 \x01(\x0b\x32).google.cloud.visionai.v1.FloatRangeArrayH\x00\x12M\n\x15\x64\x61te_time_range_array\x18\x05 \x01(\x0b\x32,.google.cloud.visionai.v1.DateTimeRangeArrayH\x00\x12H\n\x12geo_location_array\x18\x06 \x01(\x0b\x32*.google.cloud.visionai.v1.GeoLocationArrayH\x00\x12\x39\n\nbool_value\x18\x07 \x01(\x0b\x32#.google.cloud.visionai.v1.BoolValueH\x00\x12\r\n\x05\x66ield\x18\x01 \x01(\t\x12!\n\x19\x66\x65tch_matched_annotations\x18\x08 \x01(\x08\x42\x07\n\x05value\"\x90\x05\n\tPartition\x12Q\n\x12temporal_partition\x18\x01 \x01(\x0b\x32\x35.google.cloud.visionai.v1.Partition.TemporalPartition\x12O\n\x11spatial_partition\x18\x02 \x01(\x0b\x32\x34.google.cloud.visionai.v1.Partition.SpatialPartition\x12\x62\n\x1brelative_temporal_partition\x18\x03 \x01(\x0b\x32=.google.cloud.visionai.v1.Partition.RelativeTemporalPartition\x1aq\n\x11TemporalPartition\x12.\n\nstart_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12,\n\x08\x65nd_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a\x8a\x01\n\x10SpatialPartition\x12\x12\n\x05x_min\x18\x01 \x01(\x03H\x00\x88\x01\x01\x12\x12\n\x05y_min\x18\x02 \x01(\x03H\x01\x88\x01\x01\x12\x12\n\x05x_max\x18\x03 \x01(\x03H\x02\x88\x01\x01\x12\x12\n\x05y_max\x18\x04 \x01(\x03H\x03\x88\x01\x01\x42\x08\n\x06_x_minB\x08\n\x06_y_minB\x08\n\x06_x_maxB\x08\n\x06_y_max\x1a{\n\x19RelativeTemporalPartition\x12/\n\x0cstart_offset\x18\x01 \x01(\x0b\x32\x19.google.protobuf.Duration\x12-\n\nend_offset\x18\x02 \x01(\x0b\x32\x19.google.protobuf.Duration*\xb8\x01\n\x0f\x46\x61\x63\x65tBucketType\x12!\n\x1d\x46\x41\x43\x45T_BUCKET_TYPE_UNSPECIFIED\x10\x00\x12\x1b\n\x17\x46\x41\x43\x45T_BUCKET_TYPE_VALUE\x10\x01\x12\x1e\n\x1a\x46\x41\x43\x45T_BUCKET_TYPE_DATETIME\x10\x02\x12!\n\x1d\x46\x41\x43\x45T_BUCKET_TYPE_FIXED_RANGE\x10\x03\x12\"\n\x1e\x46\x41\x43\x45T_BUCKET_TYPE_CUSTOM_RANGE\x10\x04\x32\x91\x66\n\tWarehouse\x12\xb9\x01\n\x0b\x43reateAsset\x12,.google.cloud.visionai.v1.CreateAssetRequest\x1a\x1f.google.cloud.visionai.v1.Asset\"[\xda\x41\x15parent,asset,asset_id\x82\xd3\xe4\x93\x02=\"4/v1/{parent=projects/*/locations/*/corpora/*}/assets:\x05\x61sset\x12\xbb\x01\n\x0bUpdateAsset\x12,.google.cloud.visionai.v1.UpdateAssetRequest\x1a\x1f.google.cloud.visionai.v1.Asset\"]\xda\x41\x11\x61sset,update_mask\x82\xd3\xe4\x93\x02\x43\x32:/v1/{asset.name=projects/*/locations/*/corpora/*/assets/*}:\x05\x61sset\x12\x9b\x01\n\x08GetAsset\x12).google.cloud.visionai.v1.GetAssetRequest\x1a\x1f.google.cloud.visionai.v1.Asset\"C\xda\x41\x04name\x82\xd3\xe4\x93\x02\x36\x12\x34/v1/{name=projects/*/locations/*/corpora/*/assets/*}\x12\xae\x01\n\nListAssets\x12+.google.cloud.visionai.v1.ListAssetsRequest\x1a,.google.cloud.visionai.v1.ListAssetsResponse\"E\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x36\x12\x34/v1/{parent=projects/*/locations/*/corpora/*}/assets\x12\xce\x01\n\x0b\x44\x65leteAsset\x12,.google.cloud.visionai.v1.DeleteAssetRequest\x1a\x1d.google.longrunning.Operation\"r\xca\x41,\n\x15google.protobuf.Empty\x12\x13\x44\x65leteAssetMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02\x36*4/v1/{name=projects/*/locations/*/corpora/*/assets/*}\x12\xcf\x01\n\x0bUploadAsset\x12,.google.cloud.visionai.v1.UploadAssetRequest\x1a\x1d.google.longrunning.Operation\"s\xca\x41*\n\x13UploadAssetResponse\x12\x13UploadAssetMetadata\x82\xd3\xe4\x93\x02@\";/v1/{name=projects/*/locations/*/corpora/*/assets/*}:upload:\x01*\x12\xdb\x01\n\x14GenerateRetrievalUrl\x12\x35.google.cloud.visionai.v1.GenerateRetrievalUrlRequest\x1a\x36.google.cloud.visionai.v1.GenerateRetrievalUrlResponse\"T\x82\xd3\xe4\x93\x02N\"I/v1/{name=projects/*/locations/*/corpora/*/assets/*}:generateRetrievalUrl:\x01*\x12\xd4\x01\n\x0c\x41nalyzeAsset\x12-.google.cloud.visionai.v1.AnalyzeAssetRequest\x1a\x1d.google.longrunning.Operation\"v\xca\x41,\n\x14\x41nalyzeAssetResponse\x12\x14\x41nalyzeAssetMetadata\x82\xd3\xe4\x93\x02\x41\"</v1/{name=projects/*/locations/*/corpora/*/assets/*}:analyze:\x01*\x12\xca\x01\n\nIndexAsset\x12+.google.cloud.visionai.v1.IndexAssetRequest\x1a\x1d.google.longrunning.Operation\"p\xca\x41(\n\x12IndexAssetResponse\x12\x12IndexAssetMetadata\x82\xd3\xe4\x93\x02?\":/v1/{name=projects/*/locations/*/corpora/*/assets/*}:index:\x01*\x12\xe9\x01\n\x10RemoveIndexAsset\x12\x31.google.cloud.visionai.v1.RemoveIndexAssetRequest\x1a\x1d.google.longrunning.Operation\"\x82\x01\xca\x41\x34\n\x18RemoveIndexAssetResponse\x12\x18RemoveIndexAssetMetadata\x82\xd3\xe4\x93\x02\x45\"@/v1/{name=projects/*/locations/*/corpora/*/assets/*}:removeIndex:\x01*\x12\xcf\x01\n\x11ViewIndexedAssets\x12\x32.google.cloud.visionai.v1.ViewIndexedAssetsRequest\x1a\x33.google.cloud.visionai.v1.ViewIndexedAssetsResponse\"Q\xda\x41\x05index\x82\xd3\xe4\x93\x02\x43\x12\x41/v1/{index=projects/*/locations/*/corpora/*/indexes/*}:viewAssets\x12\xd7\x01\n\x0b\x43reateIndex\x12,.google.cloud.visionai.v1.CreateIndexRequest\x1a\x1d.google.longrunning.Operation\"{\xca\x41\x1c\n\x05Index\x12\x13\x43reateIndexMetadata\xda\x41\x15parent,index,index_id\x82\xd3\xe4\x93\x02>\"5/v1/{parent=projects/*/locations/*/corpora/*}/indexes:\x05index\x12\xd9\x01\n\x0bUpdateIndex\x12,.google.cloud.visionai.v1.UpdateIndexRequest\x1a\x1d.google.longrunning.Operation\"}\xca\x41\x1c\n\x05Index\x12\x13UpdateIndexMetadata\xda\x41\x11index,update_mask\x82\xd3\xe4\x93\x02\x44\x32;/v1/{index.name=projects/*/locations/*/corpora/*/indexes/*}:\x05index\x12\x9c\x01\n\x08GetIndex\x12).google.cloud.visionai.v1.GetIndexRequest\x1a\x1f.google.cloud.visionai.v1.Index\"D\xda\x41\x04name\x82\xd3\xe4\x93\x02\x37\x12\x35/v1/{name=projects/*/locations/*/corpora/*/indexes/*}\x12\xb2\x01\n\x0bListIndexes\x12,.google.cloud.visionai.v1.ListIndexesRequest\x1a-.google.cloud.visionai.v1.ListIndexesResponse\"F\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x37\x12\x35/v1/{parent=projects/*/locations/*/corpora/*}/indexes\x12\xcf\x01\n\x0b\x44\x65leteIndex\x12,.google.cloud.visionai.v1.DeleteIndexRequest\x1a\x1d.google.longrunning.Operation\"s\xca\x41,\n\x15google.protobuf.Empty\x12\x13\x44\x65leteIndexMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02\x37*5/v1/{name=projects/*/locations/*/corpora/*/indexes/*}\x12\xca\x01\n\x0c\x43reateCorpus\x12-.google.cloud.visionai.v1.CreateCorpusRequest\x1a\x1d.google.longrunning.Operation\"l\xca\x41\x1e\n\x06\x43orpus\x12\x14\x43reateCorpusMetadata\xda\x41\rparent,corpus\x82\xd3\xe4\x93\x02\x35\"+/v1/{parent=projects/*/locations/*}/corpora:\x06\x63orpus\x12\x95\x01\n\tGetCorpus\x12*.google.cloud.visionai.v1.GetCorpusRequest\x1a .google.cloud.visionai.v1.Corpus\":\xda\x41\x04name\x82\xd3\xe4\x93\x02-\x12+/v1/{name=projects/*/locations/*/corpora/*}\x12\xb8\x01\n\x0cUpdateCorpus\x12-.google.cloud.visionai.v1.UpdateCorpusRequest\x1a .google.cloud.visionai.v1.Corpus\"W\xda\x41\x12\x63orpus,update_mask\x82\xd3\xe4\x93\x02<22/v1/{corpus.name=projects/*/locations/*/corpora/*}:\x06\x63orpus\x12\xa8\x01\n\x0bListCorpora\x12,.google.cloud.visionai.v1.ListCorporaRequest\x1a-.google.cloud.visionai.v1.ListCorporaResponse\"<\xda\x41\x06parent\x82\xd3\xe4\x93\x02-\x12+/v1/{parent=projects/*/locations/*}/corpora\x12\x91\x01\n\x0c\x44\x65leteCorpus\x12-.google.cloud.visionai.v1.DeleteCorpusRequest\x1a\x16.google.protobuf.Empty\":\xda\x41\x04name\x82\xd3\xe4\x93\x02-*+/v1/{name=projects/*/locations/*/corpora/*}\x12\xcf\x01\n\rAnalyzeCorpus\x12..google.cloud.visionai.v1.AnalyzeCorpusRequest\x1a\x1d.google.longrunning.Operation\"o\xca\x41.\n\x15\x41nalyzeCorpusResponse\x12\x15\x41nalyzeCorpusMetadata\x82\xd3\xe4\x93\x02\x38\"3/v1/{name=projects/*/locations/*/corpora/*}:analyze:\x01*\x12\xd0\x01\n\x10\x43reateDataSchema\x12\x31.google.cloud.visionai.v1.CreateDataSchemaRequest\x1a$.google.cloud.visionai.v1.DataSchema\"c\xda\x41\x12parent,data_schema\x82\xd3\xe4\x93\x02H\"9/v1/{parent=projects/*/locations/*/corpora/*}/dataSchemas:\x0b\x64\x61ta_schema\x12\xe1\x01\n\x10UpdateDataSchema\x12\x31.google.cloud.visionai.v1.UpdateDataSchemaRequest\x1a$.google.cloud.visionai.v1.DataSchema\"t\xda\x41\x17\x64\x61ta_schema,update_mask\x82\xd3\xe4\x93\x02T2E/v1/{data_schema.name=projects/*/locations/*/corpora/*/dataSchemas/*}:\x0b\x64\x61ta_schema\x12\xaf\x01\n\rGetDataSchema\x12..google.cloud.visionai.v1.GetDataSchemaRequest\x1a$.google.cloud.visionai.v1.DataSchema\"H\xda\x41\x04name\x82\xd3\xe4\x93\x02;\x12\x39/v1/{name=projects/*/locations/*/corpora/*/dataSchemas/*}\x12\xa7\x01\n\x10\x44\x65leteDataSchema\x12\x31.google.cloud.visionai.v1.DeleteDataSchemaRequest\x1a\x16.google.protobuf.Empty\"H\xda\x41\x04name\x82\xd3\xe4\x93\x02;*9/v1/{name=projects/*/locations/*/corpora/*/dataSchemas/*}\x12\xc2\x01\n\x0fListDataSchemas\x12\x30.google.cloud.visionai.v1.ListDataSchemasRequest\x1a\x31.google.cloud.visionai.v1.ListDataSchemasResponse\"J\xda\x41\x06parent\x82\xd3\xe4\x93\x02;\x12\x39/v1/{parent=projects/*/locations/*/corpora/*}/dataSchemas\x12\xe5\x01\n\x10\x43reateAnnotation\x12\x31.google.cloud.visionai.v1.CreateAnnotationRequest\x1a$.google.cloud.visionai.v1.Annotation\"x\xda\x41\x1fparent,annotation,annotation_id\x82\xd3\xe4\x93\x02P\"B/v1/{parent=projects/*/locations/*/corpora/*/assets/*}/annotations:\nannotation\x12\xb8\x01\n\rGetAnnotation\x12..google.cloud.visionai.v1.GetAnnotationRequest\x1a$.google.cloud.visionai.v1.Annotation\"Q\xda\x41\x04name\x82\xd3\xe4\x93\x02\x44\x12\x42/v1/{name=projects/*/locations/*/corpora/*/assets/*/annotations/*}\x12\xcb\x01\n\x0fListAnnotations\x12\x30.google.cloud.visionai.v1.ListAnnotationsRequest\x1a\x31.google.cloud.visionai.v1.ListAnnotationsResponse\"S\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x44\x12\x42/v1/{parent=projects/*/locations/*/corpora/*/assets/*}/annotations\x12\xe7\x01\n\x10UpdateAnnotation\x12\x31.google.cloud.visionai.v1.UpdateAnnotationRequest\x1a$.google.cloud.visionai.v1.Annotation\"z\xda\x41\x16\x61nnotation,update_mask\x82\xd3\xe4\x93\x02[2M/v1/{annotation.name=projects/*/locations/*/corpora/*/assets/*/annotations/*}:\nannotation\x12\xb0\x01\n\x10\x44\x65leteAnnotation\x12\x31.google.cloud.visionai.v1.DeleteAnnotationRequest\x1a\x16.google.protobuf.Empty\"Q\xda\x41\x04name\x82\xd3\xe4\x93\x02\x44*B/v1/{name=projects/*/locations/*/corpora/*/assets/*/annotations/*}\x12p\n\x0bIngestAsset\x12,.google.cloud.visionai.v1.IngestAssetRequest\x1a-.google.cloud.visionai.v1.IngestAssetResponse\"\x00(\x01\x30\x01\x12\xaa\x01\n\tClipAsset\x12*.google.cloud.visionai.v1.ClipAssetRequest\x1a+.google.cloud.visionai.v1.ClipAssetResponse\"D\x82\xd3\xe4\x93\x02>\"9/v1/{name=projects/*/locations/*/corpora/*/assets/*}:clip:\x01*\x12\xc3\x01\n\x0eGenerateHlsUri\x12/.google.cloud.visionai.v1.GenerateHlsUriRequest\x1a\x30.google.cloud.visionai.v1.GenerateHlsUriResponse\"N\x82\xd3\xe4\x93\x02H\"C/v1/{name=projects/*/locations/*/corpora/*/assets/*}:generateHlsUri:\x01*\x12\xd3\x01\n\x0cImportAssets\x12-.google.cloud.visionai.v1.ImportAssetsRequest\x1a\x1d.google.longrunning.Operation\"u\xca\x41,\n\x14ImportAssetsResponse\x12\x14ImportAssetsMetadata\x82\xd3\xe4\x93\x02@\";/v1/{parent=projects/*/locations/*/corpora/*}/assets:import:\x01*\x12\xed\x01\n\x12\x43reateSearchConfig\x12\x33.google.cloud.visionai.v1.CreateSearchConfigRequest\x1a&.google.cloud.visionai.v1.SearchConfig\"z\xda\x41%parent,search_config,search_config_id\x82\xd3\xe4\x93\x02L\";/v1/{parent=projects/*/locations/*/corpora/*}/searchConfigs:\rsearch_config\x12\xef\x01\n\x12UpdateSearchConfig\x12\x33.google.cloud.visionai.v1.UpdateSearchConfigRequest\x1a&.google.cloud.visionai.v1.SearchConfig\"|\xda\x41\x19search_config,update_mask\x82\xd3\xe4\x93\x02Z2I/v1/{search_config.name=projects/*/locations/*/corpora/*/searchConfigs/*}:\rsearch_config\x12\xb7\x01\n\x0fGetSearchConfig\x12\x30.google.cloud.visionai.v1.GetSearchConfigRequest\x1a&.google.cloud.visionai.v1.SearchConfig\"J\xda\x41\x04name\x82\xd3\xe4\x93\x02=\x12;/v1/{name=projects/*/locations/*/corpora/*/searchConfigs/*}\x12\xad\x01\n\x12\x44\x65leteSearchConfig\x12\x33.google.cloud.visionai.v1.DeleteSearchConfigRequest\x1a\x16.google.protobuf.Empty\"J\xda\x41\x04name\x82\xd3\xe4\x93\x02=*;/v1/{name=projects/*/locations/*/corpora/*/searchConfigs/*}\x12\xca\x01\n\x11ListSearchConfigs\x12\x32.google.cloud.visionai.v1.ListSearchConfigsRequest\x1a\x33.google.cloud.visionai.v1.ListSearchConfigsResponse\"L\xda\x41\x06parent\x82\xd3\xe4\x93\x02=\x12;/v1/{parent=projects/*/locations/*/corpora/*}/searchConfigs\x12\xfc\x01\n\x14\x43reateSearchHypernym\x12\x35.google.cloud.visionai.v1.CreateSearchHypernymRequest\x1a(.google.cloud.visionai.v1.SearchHypernym\"\x82\x01\xda\x41)parent,search_hypernym,search_hypernym_id\x82\xd3\xe4\x93\x02P\"=/v1/{parent=projects/*/locations/*/corpora/*}/searchHypernyms:\x0fsearch_hypernym\x12\xfe\x01\n\x14UpdateSearchHypernym\x12\x35.google.cloud.visionai.v1.UpdateSearchHypernymRequest\x1a(.google.cloud.visionai.v1.SearchHypernym\"\x84\x01\xda\x41\x1bsearch_hypernym,update_mask\x82\xd3\xe4\x93\x02`2M/v1/{search_hypernym.name=projects/*/locations/*/corpora/*/searchHypernyms/*}:\x0fsearch_hypernym\x12\xbf\x01\n\x11GetSearchHypernym\x12\x32.google.cloud.visionai.v1.GetSearchHypernymRequest\x1a(.google.cloud.visionai.v1.SearchHypernym\"L\xda\x41\x04name\x82\xd3\xe4\x93\x02?\x12=/v1/{name=projects/*/locations/*/corpora/*/searchHypernyms/*}\x12\xb3\x01\n\x14\x44\x65leteSearchHypernym\x12\x35.google.cloud.visionai.v1.DeleteSearchHypernymRequest\x1a\x16.google.protobuf.Empty\"L\xda\x41\x04name\x82\xd3\xe4\x93\x02?*=/v1/{name=projects/*/locations/*/corpora/*/searchHypernyms/*}\x12\xd2\x01\n\x13ListSearchHypernyms\x12\x34.google.cloud.visionai.v1.ListSearchHypernymsRequest\x1a\x35.google.cloud.visionai.v1.ListSearchHypernymsResponse\"N\xda\x41\x06parent\x82\xd3\xe4\x93\x02?\x12=/v1/{parent=projects/*/locations/*/corpora/*}/searchHypernyms\x12\xb4\x01\n\x0cSearchAssets\x12-.google.cloud.visionai.v1.SearchAssetsRequest\x1a..google.cloud.visionai.v1.SearchAssetsResponse\"E\x82\xd3\xe4\x93\x02?\":/v1/{corpus=projects/*/locations/*/corpora/*}:searchAssets:\x01*\x12\xdf\x01\n\x13SearchIndexEndpoint\x12\x34.google.cloud.visionai.v1.SearchIndexEndpointRequest\x1a\x35.google.cloud.visionai.v1.SearchIndexEndpointResponse\"[\x82\xd3\xe4\x93\x02U\"P/v1/{index_endpoint=projects/*/locations/*/indexEndpoints/*}:searchIndexEndpoint:\x01*\x12\x90\x02\n\x13\x43reateIndexEndpoint\x12\x34.google.cloud.visionai.v1.CreateIndexEndpointRequest\x1a\x1d.google.longrunning.Operation\"\xa3\x01\xca\x41,\n\rIndexEndpoint\x12\x1b\x43reateIndexEndpointMetadata\xda\x41\'parent,index_endpoint,index_endpoint_id\x82\xd3\xe4\x93\x02\x44\"2/v1/{parent=projects/*/locations/*}/indexEndpoints:\x0eindex_endpoint\x12\xb1\x01\n\x10GetIndexEndpoint\x12\x31.google.cloud.visionai.v1.GetIndexEndpointRequest\x1a\'.google.cloud.visionai.v1.IndexEndpoint\"A\xda\x41\x04name\x82\xd3\xe4\x93\x02\x34\x12\x32/v1/{name=projects/*/locations/*/indexEndpoints/*}\x12\xc4\x01\n\x12ListIndexEndpoints\x12\x33.google.cloud.visionai.v1.ListIndexEndpointsRequest\x1a\x34.google.cloud.visionai.v1.ListIndexEndpointsResponse\"C\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x34\x12\x32/v1/{parent=projects/*/locations/*}/indexEndpoints\x12\x92\x02\n\x13UpdateIndexEndpoint\x12\x34.google.cloud.visionai.v1.UpdateIndexEndpointRequest\x1a\x1d.google.longrunning.Operation\"\xa5\x01\xca\x41,\n\rIndexEndpoint\x12\x1bUpdateIndexEndpointMetadata\xda\x41\x1aindex_endpoint,update_mask\x82\xd3\xe4\x93\x02S2A/v1/{index_endpoint.name=projects/*/locations/*/indexEndpoints/*}:\x0eindex_endpoint\x12\xe4\x01\n\x13\x44\x65leteIndexEndpoint\x12\x34.google.cloud.visionai.v1.DeleteIndexEndpointRequest\x1a\x1d.google.longrunning.Operation\"x\xca\x41\x34\n\x15google.protobuf.Empty\x12\x1b\x44\x65leteIndexEndpointMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02\x34*2/v1/{name=projects/*/locations/*/indexEndpoints/*}\x12\xdd\x01\n\x0b\x44\x65ployIndex\x12,.google.cloud.visionai.v1.DeployIndexRequest\x1a\x1d.google.longrunning.Operation\"\x80\x01\xca\x41*\n\x13\x44\x65ployIndexResponse\x12\x13\x44\x65ployIndexMetadata\x82\xd3\xe4\x93\x02M\"H/v1/{index_endpoint=projects/*/locations/*/indexEndpoints/*}:deployIndex:\x01*\x12\xe7\x01\n\rUndeployIndex\x12..google.cloud.visionai.v1.UndeployIndexRequest\x1a\x1d.google.longrunning.Operation\"\x86\x01\xca\x41.\n\x15UndeployIndexResponse\x12\x15UndeployIndexMetadata\x82\xd3\xe4\x93\x02O\"J/v1/{index_endpoint=projects/*/locations/*/indexEndpoints/*}:undeployIndex:\x01*\x12\xff\x01\n\x10\x43reateCollection\x12\x31.google.cloud.visionai.v1.CreateCollectionRequest\x1a\x1d.google.longrunning.Operation\"\x98\x01\xca\x41&\n\nCollection\x12\x18\x43reateCollectionMetadata\xda\x41\x1fparent,collection,collection_id\x82\xd3\xe4\x93\x02G\"9/v1/{parent=projects/*/locations/*/corpora/*}/collections:\ncollection\x12\xe2\x01\n\x10\x44\x65leteCollection\x12\x31.google.cloud.visionai.v1.DeleteCollectionRequest\x1a\x1d.google.longrunning.Operation\"|\xca\x41\x31\n\x15google.protobuf.Empty\x12\x18\x44\x65leteCollectionMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02;*9/v1/{name=projects/*/locations/*/corpora/*/collections/*}\x12\xaf\x01\n\rGetCollection\x12..google.cloud.visionai.v1.GetCollectionRequest\x1a$.google.cloud.visionai.v1.Collection\"H\xda\x41\x04name\x82\xd3\xe4\x93\x02;\x12\x39/v1/{name=projects/*/locations/*/corpora/*/collections/*}\x12\xde\x01\n\x10UpdateCollection\x12\x31.google.cloud.visionai.v1.UpdateCollectionRequest\x1a$.google.cloud.visionai.v1.Collection\"q\xda\x41\x16\x63ollection,update_mask\x82\xd3\xe4\x93\x02R2D/v1/{collection.name=projects/*/locations/*/corpora/*/collections/*}:\ncollection\x12\xc2\x01\n\x0fListCollections\x12\x30.google.cloud.visionai.v1.ListCollectionsRequest\x1a\x31.google.cloud.visionai.v1.ListCollectionsResponse\"J\xda\x41\x06parent\x82\xd3\xe4\x93\x02;\x12\x39/v1/{parent=projects/*/locations/*/corpora/*}/collections\x12\xe6\x01\n\x11\x41\x64\x64\x43ollectionItem\x12\x32.google.cloud.visionai.v1.AddCollectionItemRequest\x1a\x33.google.cloud.visionai.v1.AddCollectionItemResponse\"h\xda\x41\x04item\x82\xd3\xe4\x93\x02[\"V/v1/{item.collection=projects/*/locations/*/corpora/*/collections/*}:addCollectionItem:\x01*\x12\xf2\x01\n\x14RemoveCollectionItem\x12\x35.google.cloud.visionai.v1.RemoveCollectionItemRequest\x1a\x36.google.cloud.visionai.v1.RemoveCollectionItemResponse\"k\xda\x41\x04item\x82\xd3\xe4\x93\x02^\"Y/v1/{item.collection=projects/*/locations/*/corpora/*/collections/*}:removeCollectionItem:\x01*\x12\xec\x01\n\x13ViewCollectionItems\x12\x34.google.cloud.visionai.v1.ViewCollectionItemsRequest\x1a\x35.google.cloud.visionai.v1.ViewCollectionItemsResponse\"h\xda\x41\ncollection\x82\xd3\xe4\x93\x02U\x12S/v1/{collection=projects/*/locations/*/corpora/*/collections/*}:viewCollectionItems\x1aK\xca\x41\x17visionai.googleapis.com\xd2\x41.https://www.googleapis.com/auth/cloud-platformB\xbe\x01\n\x1c\x63om.google.cloud.visionai.v1B\x0eWarehouseProtoP\x01Z8cloud.google.com/go/visionai/apiv1/visionaipb;visionaipb\xaa\x02\x18Google.Cloud.VisionAI.V1\xca\x02\x18Google\\Cloud\\VisionAI\\V1\xea\x02\x1bGoogle::Cloud::VisionAI::V1b\x06proto3"
24
24
 
25
25
  pool = Google::Protobuf::DescriptorPool.generated_pool
26
26
 
@@ -163,6 +163,7 @@ module Google
163
163
  DeleteAnnotationRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.visionai.v1.DeleteAnnotationRequest").msgclass
164
164
  ImportAssetsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.visionai.v1.ImportAssetsRequest").msgclass
165
165
  ImportAssetsMetadata = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.visionai.v1.ImportAssetsMetadata").msgclass
166
+ BatchOperationStatus = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.visionai.v1.BatchOperationStatus").msgclass
166
167
  ImportAssetsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.visionai.v1.ImportAssetsResponse").msgclass
167
168
  CreateSearchConfigRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.visionai.v1.CreateSearchConfigRequest").msgclass
168
169
  UpdateSearchConfigRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.visionai.v1.UpdateSearchConfigRequest").msgclass
@@ -119,6 +119,7 @@ module Google
119
119
  # This method is only available via the gRPC API (not HTTP since
120
120
  # bi-directional streaming is not supported via HTTP).
121
121
  rpc :IngestAsset, stream(::Google::Cloud::VisionAI::V1::IngestAssetRequest), stream(::Google::Cloud::VisionAI::V1::IngestAssetResponse)
122
+ # Supported by STREAM_VIDEO corpus type.
122
123
  # Generates clips for downloading. The api takes in a time range, and
123
124
  # generates a clip of the first content available after start_time and
124
125
  # before end_time, which may overflow beyond these bounds.
@@ -196,9 +196,26 @@ module Google
196
196
  # @!attribute [rw] common
197
197
  # @return [::Google::Api::CommonLanguageSettings]
198
198
  # Some settings.
199
+ # @!attribute [rw] experimental_features
200
+ # @return [::Google::Api::PythonSettings::ExperimentalFeatures]
201
+ # Experimental features to be included during client library generation.
199
202
  class PythonSettings
200
203
  include ::Google::Protobuf::MessageExts
201
204
  extend ::Google::Protobuf::MessageExts::ClassMethods
205
+
206
+ # Experimental features to be included during client library generation.
207
+ # These fields will be deprecated once the feature graduates and is enabled
208
+ # by default.
209
+ # @!attribute [rw] rest_async_io_enabled
210
+ # @return [::Boolean]
211
+ # Enables generation of asynchronous REST clients if `rest` transport is
212
+ # enabled. By default, asynchronous REST clients will not be generated.
213
+ # This feature will be enabled by default 1 month after launching the
214
+ # feature in preview packages.
215
+ class ExperimentalFeatures
216
+ include ::Google::Protobuf::MessageExts
217
+ extend ::Google::Protobuf::MessageExts::ClassMethods
218
+ end
202
219
  end
203
220
 
204
221
  # Settings for Node client libraries.
@@ -271,13 +271,13 @@ module Google
271
271
  # The default process state should never happen.
272
272
  STATE_UNSPECIFIED = 0
273
273
 
274
- # The feature is in progress.
274
+ # The ml model analysis is in progress.
275
275
  IN_PROGRESS = 1
276
276
 
277
- # The process is successfully done.
277
+ # The ml model analysis is successfully done.
278
278
  SUCCEEDED = 2
279
279
 
280
- # The process failed.
280
+ # The ml model analysis failed.
281
281
  FAILED = 3
282
282
  end
283
283
  end
@@ -896,6 +896,16 @@ module Google
896
896
  # Output only. References to the deployed index instance.
897
897
  # Index of VIDEO_ON_DEMAND corpus can have at most one deployed index.
898
898
  # Index of IMAGE corpus can have multiple deployed indexes.
899
+ # @!attribute [r] satisfies_pzs
900
+ # @return [::Boolean]
901
+ # Output only. This boolean field is only set for projects that have Physical
902
+ # Zone Separation enabled via an Org Policy constraint. It is set to true
903
+ # when the index is a valid zone separated index and false if it isn't.
904
+ # @!attribute [r] satisfies_pzi
905
+ # @return [::Boolean]
906
+ # Output only. This boolean field is only set for projects that have Physical
907
+ # Zone Isolation enabled via an Org Policy constraint. It is set to true when
908
+ # the index is a valid zone isolated index and false if it isn't.
899
909
  class Index
900
910
  include ::Google::Protobuf::MessageExts
901
911
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -953,6 +963,16 @@ module Google
953
963
  # @!attribute [rw] search_capability_setting
954
964
  # @return [::Google::Cloud::VisionAI::V1::SearchCapabilitySetting]
955
965
  # Default search capability setting on corpus level.
966
+ # @!attribute [r] satisfies_pzs
967
+ # @return [::Boolean]
968
+ # Output only. This boolean field is only set for projects that have Physical
969
+ # Zone Separation enabled via an Org Policy constraint. It is set to true
970
+ # when the corpus is a valid zone separated corpus and false if it isn't.
971
+ # @!attribute [r] satisfies_pzi
972
+ # @return [::Boolean]
973
+ # Output only. This boolean field is only set for projects that have Physical
974
+ # Zone Isolation enabled via an Org Policy constraint. It is set to true when
975
+ # the corpus is a valid zone isolated corpus and false if it isn't.
956
976
  class Corpus
957
977
  include ::Google::Protobuf::MessageExts
958
978
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1695,11 +1715,29 @@ module Google
1695
1715
  # @!attribute [rw] metadata
1696
1716
  # @return [::Google::Cloud::VisionAI::V1::OperationMetadata]
1697
1717
  # The metadata of the operation.
1718
+ # @!attribute [rw] status
1719
+ # @return [::Google::Cloud::VisionAI::V1::BatchOperationStatus]
1720
+ # The importing status including partial failures, if the implementation can
1721
+ # provide such information during the progress of the ImportAssets.
1698
1722
  class ImportAssetsMetadata
1699
1723
  include ::Google::Protobuf::MessageExts
1700
1724
  extend ::Google::Protobuf::MessageExts::ClassMethods
1701
1725
  end
1702
1726
 
1727
+ # The batch operation status.
1728
+ # @!attribute [rw] success_count
1729
+ # @return [::Integer]
1730
+ # The count of assets (together with their annotations if any) successfully
1731
+ # ingested.
1732
+ # @!attribute [rw] failure_count
1733
+ # @return [::Integer]
1734
+ # The count of assets failed to ingested; it might be due to the annotation
1735
+ # ingestion error.
1736
+ class BatchOperationStatus
1737
+ include ::Google::Protobuf::MessageExts
1738
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1739
+ end
1740
+
1703
1741
  # The response message for ImportAssets LRO.
1704
1742
  class ImportAssetsResponse
1705
1743
  include ::Google::Protobuf::MessageExts
@@ -1869,6 +1907,18 @@ module Google
1869
1907
  # @!attribute [r] update_time
1870
1908
  # @return [::Google::Protobuf::Timestamp]
1871
1909
  # Output only. Update timestamp.
1910
+ # @!attribute [r] satisfies_pzs
1911
+ # @return [::Boolean]
1912
+ # Output only. This boolean field is only set for projects that have Physical
1913
+ # Zone Separation enabled via an Org Policy constraint. It is set to true
1914
+ # when the index endpoint is a valid zone separated index endpoint and false
1915
+ # if it isn't.
1916
+ # @!attribute [r] satisfies_pzi
1917
+ # @return [::Boolean]
1918
+ # Output only. This boolean field is only set for projects that have Physical
1919
+ # Zone Isolation enabled via an Org Policy constraint. It is set to true when
1920
+ # the index endpoint is a valid zone isolated index endpoint and false if it
1921
+ # isn't.
1872
1922
  class IndexEndpoint
1873
1923
  include ::Google::Protobuf::MessageExts
1874
1924
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -2732,10 +2782,13 @@ module Google
2732
2782
  # The matched asset segment.
2733
2783
  # @!attribute [rw] relevance
2734
2784
  # @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.
2785
+ # Available to IMAGE corpus types.
2786
+ # Relevance of this `SearchResultItem` to user search query (text query or
2787
+ # image query).
2788
+ # By default this represents cosine similarity between the query and the
2789
+ # retrieved media content. The value is in the range of [-1, 1].
2790
+ # Note that search ranking is not only decided by this relevance score,
2791
+ # but also other factors such as the match of annotations.
2739
2792
  # @!attribute [rw] requested_annotations
2740
2793
  # @return [::Array<::Google::Cloud::VisionAI::V1::Annotation>]
2741
2794
  # Search result annotations specified by result_annotation_keys in search
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-cloud-vision_ai-v1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-07-22 00:00:00.000000000 Z
11
+ date: 2024-08-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: gapic-common