Protocol Documentation
Table of Contents
Top
collections.proto
AliasDescription
| Field |
Type |
Label |
Description |
| alias_name |
string |
|
Name of the alias |
| collection_name |
string |
|
Name of the collection |
AliasOperations
BinaryQuantization
| Field |
Type |
Label |
Description |
| always_ram |
bool |
optional |
If true - quantized vectors always will be stored in RAM, ignoring the config of main storage |
ChangeAliases
| Field |
Type |
Label |
Description |
| actions |
AliasOperations |
repeated |
List of actions |
| timeout |
uint64 |
optional |
Wait timeout for operation commit in seconds, if not specified - default value will be supplied |
CollectionClusterInfoRequest
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
Name of the collection |
CollectionClusterInfoResponse
CollectionConfig
CollectionDescription
| Field |
Type |
Label |
Description |
| name |
string |
|
Name of the collection |
CollectionExists
| Field |
Type |
Label |
Description |
| exists |
bool |
|
|
CollectionExistsRequest
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
|
CollectionExistsResponse
CollectionInfo
| Field |
Type |
Label |
Description |
| status |
CollectionStatus |
|
operating condition of the collection |
| optimizer_status |
OptimizerStatus |
|
status of collection optimizers |
| vectors_count |
uint64 |
optional |
Approximate number of vectors in the collection |
| segments_count |
uint64 |
|
Number of independent segments |
| config |
CollectionConfig |
|
Configuration |
| payload_schema |
CollectionInfo.PayloadSchemaEntry |
repeated |
Collection data types |
| points_count |
uint64 |
optional |
Approximate number of points in the collection |
| indexed_vectors_count |
uint64 |
optional |
Approximate number of indexed vectors in the collection. |
CollectionInfo.PayloadSchemaEntry
CollectionOperationResponse
| Field |
Type |
Label |
Description |
| result |
bool |
|
if operation made changes |
| time |
double |
|
Time spent to process |
CollectionParams
| Field |
Type |
Label |
Description |
| shard_number |
uint32 |
|
Number of shards in collection |
| on_disk_payload |
bool |
|
If true - point's payload will not be stored in memory |
| vectors_config |
VectorsConfig |
optional |
Configuration for vectors |
| replication_factor |
uint32 |
optional |
Number of replicas of each shard that network tries to maintain |
| write_consistency_factor |
uint32 |
optional |
How many replicas should apply the operation for us to consider it successful |
| read_fan_out_factor |
uint32 |
optional |
Fan-out every read request to these many additional remote nodes (and return first available response) |
| sharding_method |
ShardingMethod |
optional |
Sharding method |
| sparse_vectors_config |
SparseVectorConfig |
optional |
Configuration for sparse vectors |
CollectionParamsDiff
| Field |
Type |
Label |
Description |
| replication_factor |
uint32 |
optional |
Number of replicas of each shard that network tries to maintain |
| write_consistency_factor |
uint32 |
optional |
How many replicas should apply the operation for us to consider it successful |
| on_disk_payload |
bool |
optional |
If true - point's payload will not be stored in memory |
| read_fan_out_factor |
uint32 |
optional |
Fan-out every read request to these many additional remote nodes (and return first available response) |
CreateAlias
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
Name of the collection |
| alias_name |
string |
|
New name of the alias |
CreateCollection
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
Name of the collection |
| hnsw_config |
HnswConfigDiff |
optional |
Configuration of vector index |
| wal_config |
WalConfigDiff |
optional |
Configuration of the Write-Ahead-Log |
| optimizers_config |
OptimizersConfigDiff |
optional |
Configuration of the optimizers |
| shard_number |
uint32 |
optional |
Number of shards in the collection, default is 1 for standalone, otherwise equal to the number of nodes. Minimum is 1 |
| on_disk_payload |
bool |
optional |
If true - point's payload will not be stored in memory |
| timeout |
uint64 |
optional |
Wait timeout for operation commit in seconds, if not specified - default value will be supplied |
| vectors_config |
VectorsConfig |
optional |
Configuration for vectors |
| replication_factor |
uint32 |
optional |
Number of replicas of each shard that network tries to maintain, default = 1 |
| write_consistency_factor |
uint32 |
optional |
How many replicas should apply the operation for us to consider it successful, default = 1 |
| init_from_collection |
string |
optional |
Specify name of the other collection to copy data from |
| quantization_config |
QuantizationConfig |
optional |
Quantization configuration of vector |
| sharding_method |
ShardingMethod |
optional |
Sharding method |
| sparse_vectors_config |
SparseVectorConfig |
optional |
Configuration for sparse vectors |
CreateShardKey
| Field |
Type |
Label |
Description |
| shard_key |
ShardKey |
|
User-defined shard key |
| shards_number |
uint32 |
optional |
Number of shards to create per shard key |
| replication_factor |
uint32 |
optional |
Number of replicas of each shard to create |
| placement |
uint64 |
repeated |
List of peer ids, allowed to create shards. If empty - all peers are allowed |
CreateShardKeyRequest
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
Name of the collection |
| request |
CreateShardKey |
|
Request to create shard key |
| timeout |
uint64 |
optional |
Wait timeout for operation commit in seconds, if not specified - default value will be supplied |
CreateShardKeyResponse
| Field |
Type |
Label |
Description |
| result |
bool |
|
|
DeleteAlias
| Field |
Type |
Label |
Description |
| alias_name |
string |
|
Name of the alias |
DeleteCollection
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
Name of the collection |
| timeout |
uint64 |
optional |
Wait timeout for operation commit in seconds, if not specified - default value will be supplied |
DeleteShardKey
| Field |
Type |
Label |
Description |
| shard_key |
ShardKey |
|
Shard key to delete |
DeleteShardKeyRequest
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
Name of the collection |
| request |
DeleteShardKey |
|
Request to delete shard key |
| timeout |
uint64 |
optional |
Wait timeout for operation commit in seconds, if not specified - default value will be supplied |
DeleteShardKeyResponse
| Field |
Type |
Label |
Description |
| result |
bool |
|
|
Disabled
GetCollectionInfoRequest
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
Name of the collection |
GetCollectionInfoResponse
HnswConfigDiff
| Field |
Type |
Label |
Description |
| m |
uint64 |
optional |
Number of edges per node in the index graph. Larger the value - more accurate the search, more space required. |
| ef_construct |
uint64 |
optional |
Number of neighbours to consider during the index building. Larger the value - more accurate the search, more time required to build the index. |
| full_scan_threshold |
uint64 |
optional |
Minimal size (in KiloBytes) of vectors for additional payload-based indexing. If the payload chunk is smaller than full_scan_threshold additional indexing won't be used - in this case full-scan search should be preferred by query planner and additional indexing is not required. Note: 1 Kb = 1 vector of size 256 |
| max_indexing_threads |
uint64 |
optional |
Number of parallel threads used for background index building. If 0 - automatically select from 8 to 16. Best to keep between 8 and 16 to prevent likelihood of building broken/inefficient HNSW graphs. On small CPUs, less threads are used. |
| on_disk |
bool |
optional |
Store HNSW index on disk. If set to false, the index will be stored in RAM. |
| payload_m |
uint64 |
optional |
Number of additional payload-aware links per node in the index graph. If not set - regular M parameter will be used. |
IntegerIndexParams
| Field |
Type |
Label |
Description |
| lookup |
bool |
|
If true - support direct lookups. |
| range |
bool |
|
If true - support ranges filters. |
ListAliasesRequest
ListAliasesResponse
ListCollectionAliasesRequest
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
Name of the collection |
ListCollectionsRequest
ListCollectionsResponse
LocalShardInfo
| Field |
Type |
Label |
Description |
| shard_id |
uint32 |
|
Local shard id |
| points_count |
uint64 |
|
Number of points in the shard |
| state |
ReplicaState |
|
Is replica active |
| shard_key |
ShardKey |
optional |
User-defined shard key |
MoveShard
OptimizerStatus
OptimizersConfigDiff
| Field |
Type |
Label |
Description |
| deleted_threshold |
double |
optional |
The minimal fraction of deleted vectors in a segment, required to perform segment optimization |
| vacuum_min_vector_number |
uint64 |
optional |
The minimal number of vectors in a segment, required to perform segment optimization |
| default_segment_number |
uint64 |
optional |
Target amount of segments the optimizer will try to keep. Real amount of segments may vary depending on multiple parameters: |
- Amount of stored points. - Current write RPS.
It is recommended to select the default number of segments as a factor of the number of search threads, so that each segment would be handled evenly by one of the threads. |
| max_segment_size | uint64 | optional | Do not create segments larger this size (in kilobytes). Large segments might require disproportionately long indexation times, therefore it makes sense to limit the size of segments.
If indexing speed is more important - make this parameter lower. If search speed is more important - make this parameter higher. Note: 1Kb = 1 vector of size 256 If not set, will be automatically selected considering the number of available CPUs. |
| memmap_threshold | uint64 | optional | Maximum size (in kilobytes) of vectors to store in-memory per segment. Segments larger than this threshold will be stored as read-only memmaped file.
Memmap storage is disabled by default, to enable it, set this threshold to a reasonable value.
To disable memmap storage, set this to 0.
Note: 1Kb = 1 vector of size 256 |
| indexing_threshold | uint64 | optional | Maximum size (in kilobytes) of vectors allowed for plain index, exceeding this threshold will enable vector indexing
Default value is 20,000, based on <https://github.com/google-research/google-research/blob/master/scann/docs/algorithms.md>.
To disable vector indexing, set to 0.
Note: 1kB = 1 vector of size 256. |
| flush_interval_sec | uint64 | optional | Interval between forced flushes. |
| max_optimization_threads | uint64 | optional | Max number of threads (jobs) for running optimizations per shard. Note: each optimization job will also use max_indexing_threads threads by itself for index building. If null - have no limit and choose dynamically to saturate CPU. If 0 - no optimization threads, optimizations will be disabled. |
PayloadIndexParams
PayloadSchemaInfo
ProductQuantization
| Field |
Type |
Label |
Description |
| compression |
CompressionRatio |
|
Compression ratio |
| always_ram |
bool |
optional |
If true - quantized vectors always will be stored in RAM, ignoring the config of main storage |
QuantizationConfig
QuantizationConfigDiff
RemoteShardInfo
| Field |
Type |
Label |
Description |
| shard_id |
uint32 |
|
Local shard id |
| peer_id |
uint64 |
|
Remote peer id |
| state |
ReplicaState |
|
Is replica active |
| shard_key |
ShardKey |
optional |
User-defined shard key |
RenameAlias
| Field |
Type |
Label |
Description |
| old_alias_name |
string |
|
Name of the alias to rename |
| new_alias_name |
string |
|
Name of the alias |
Replica
ScalarQuantization
| Field |
Type |
Label |
Description |
| type |
QuantizationType |
|
Type of quantization |
| quantile |
float |
optional |
Number of bits to use for quantization |
| always_ram |
bool |
optional |
If true - quantized vectors always will be stored in RAM, ignoring the config of main storage |
ShardKey
| Field |
Type |
Label |
Description |
| keyword |
string |
|
String key |
| number |
uint64 |
|
Number key |
ShardTransferInfo
| Field |
Type |
Label |
Description |
| shard_id |
uint32 |
|
Local shard id |
| from |
uint64 |
|
|
| to |
uint64 |
|
|
| sync |
bool |
|
If true transfer is a synchronization of a replicas; If false transfer is a moving of a shard from one peer to another |
SparseIndexConfig
| Field |
Type |
Label |
Description |
| full_scan_threshold |
uint64 |
optional |
Prefer a full scan search upto (excluding) this number of vectors. Note: this is number of vectors, not KiloBytes. |
| on_disk |
bool |
optional |
Store inverted index on disk. If set to false, the index will be stored in RAM. |
SparseVectorConfig
SparseVectorConfig.MapEntry
SparseVectorParams
| Field |
Type |
Label |
Description |
| index |
SparseIndexConfig |
optional |
Configuration of sparse index |
TextIndexParams
| Field |
Type |
Label |
Description |
| tokenizer |
TokenizerType |
|
Tokenizer type |
| lowercase |
bool |
optional |
If true - all tokens will be lowercase |
| min_token_len |
uint64 |
optional |
Minimal token length |
| max_token_len |
uint64 |
optional |
Maximal token length |
UpdateCollection
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
Name of the collection |
| optimizers_config |
OptimizersConfigDiff |
optional |
New configuration parameters for the collection. This operation is blocking, it will only proceed once all current optimizations are complete |
| timeout |
uint64 |
optional |
Wait timeout for operation commit in seconds if blocking, if not specified - default value will be supplied |
| params |
CollectionParamsDiff |
optional |
New configuration parameters for the collection |
| hnsw_config |
HnswConfigDiff |
optional |
New HNSW parameters for the collection index |
| vectors_config |
VectorsConfigDiff |
optional |
New vector parameters |
| quantization_config |
QuantizationConfigDiff |
optional |
Quantization configuration of vector |
| sparse_vectors_config |
SparseVectorConfig |
optional |
New sparse vector parameters |
UpdateCollectionClusterSetupRequest
UpdateCollectionClusterSetupResponse
| Field |
Type |
Label |
Description |
| result |
bool |
|
|
VectorParams
| Field |
Type |
Label |
Description |
| size |
uint64 |
|
Size of the vectors |
| distance |
Distance |
|
Distance function used for comparing vectors |
| hnsw_config |
HnswConfigDiff |
optional |
Configuration of vector HNSW graph. If omitted - the collection configuration will be used |
| quantization_config |
QuantizationConfig |
optional |
Configuration of vector quantization config. If omitted - the collection configuration will be used |
| on_disk |
bool |
optional |
If true - serve vectors from disk. If set to false, the vectors will be loaded in RAM. |
VectorParamsDiff
| Field |
Type |
Label |
Description |
| hnsw_config |
HnswConfigDiff |
optional |
Update params for HNSW index. If empty object - it will be unset |
| quantization_config |
QuantizationConfigDiff |
optional |
Update quantization params. If none - it is left unchanged. |
| on_disk |
bool |
optional |
If true - serve vectors from disk. If set to false, the vectors will be loaded in RAM. |
VectorParamsDiffMap
VectorParamsDiffMap.MapEntry
VectorParamsMap
VectorParamsMap.MapEntry
VectorsConfig
VectorsConfigDiff
WalConfigDiff
| Field |
Type |
Label |
Description |
| wal_capacity_mb |
uint64 |
optional |
Size of a single WAL block file |
| wal_segments_ahead |
uint64 |
optional |
Number of segments to create in advance |
CollectionStatus
| Name |
Number |
Description |
| UnknownCollectionStatus |
0 |
|
| Green |
1 |
All segments are ready |
| Yellow |
2 |
Optimization in process |
| Red |
3 |
Something went wrong |
CompressionRatio
| Name |
Number |
Description |
| x4 |
0 |
|
| x8 |
1 |
|
| x16 |
2 |
|
| x32 |
3 |
|
| x64 |
4 |
|
Distance
| Name |
Number |
Description |
| UnknownDistance |
0 |
|
| Cosine |
1 |
|
| Euclid |
2 |
|
| Dot |
3 |
|
| Manhattan |
4 |
|
PayloadSchemaType
| Name |
Number |
Description |
| UnknownType |
0 |
|
| Keyword |
1 |
|
| Integer |
2 |
|
| Float |
3 |
|
| Geo |
4 |
|
| Text |
5 |
|
| Bool |
6 |
|
| Datetime |
7 |
|
QuantizationType
| Name |
Number |
Description |
| UnknownQuantization |
0 |
|
| Int8 |
1 |
|
ReplicaState
| Name |
Number |
Description |
| Active |
0 |
Active and sound |
| Dead |
1 |
Failed for some reason |
| Partial |
2 |
The shard is partially loaded and is currently receiving data from other shards |
| Initializing |
3 |
Collection is being created |
| Listener |
4 |
A shard which receives data, but is not used for search; Useful for backup shards |
| PartialSnapshot |
5 |
Snapshot shard transfer is in progress; Updates should not be sent to (and are ignored by) the shard |
ShardTransferMethod
| Name |
Number |
Description |
| StreamRecords |
0 |
|
| Snapshot |
1 |
|
ShardingMethod
| Name |
Number |
Description |
| Auto |
0 |
Auto-sharding based on record ids |
| Custom |
1 |
Shard by user-defined key |
TokenizerType
| Name |
Number |
Description |
| Unknown |
0 |
|
| Prefix |
1 |
|
| Whitespace |
2 |
|
| Word |
3 |
|
| Multilingual |
4 |
|
Top
collections_service.proto
Collections
Top
health_check.proto
source: https://github.com/grpc/grpc/blob/master/doc/health-checking.md#service-definition
HealthCheckRequest
| Field |
Type |
Label |
Description |
| service |
string |
|
|
HealthCheckResponse
HealthCheckResponse.ServingStatus
| Name |
Number |
Description |
| UNKNOWN |
0 |
|
| SERVING |
1 |
|
| NOT_SERVING |
2 |
|
| SERVICE_UNKNOWN |
3 |
Used only by the Watch method. |
Health
Top
json_with_int.proto
ListValue
ListValue is a wrapper around a repeated field of values.
The JSON representation for ListValue is a JSON array.
| Field |
Type |
Label |
Description |
| values |
Value |
repeated |
Repeated field of dynamically typed values. |
Struct
Struct represents a structured data value, consisting of fields
which map to dynamically typed values. In some languages, Struct
might be supported by a native representation. For example, in
scripting languages like JS a struct is represented as an
object. The details of that representation are described together
with the proto support for the language.
The JSON representation for Struct is a JSON object.
| Field |
Type |
Label |
Description |
| fields |
Struct.FieldsEntry |
repeated |
Unordered map of dynamically typed values. |
Struct.FieldsEntry
Value
Value represents a dynamically typed value which can be either
null, a number, a string, a boolean, a recursive struct value, or a
list of values. A producer of value is expected to set one of those
variants, absence of any variant indicates an error.
The JSON representation for Value is a JSON value.
| Field |
Type |
Label |
Description |
| null_value |
NullValue |
|
Represents a null value. |
| double_value |
double |
|
Represents a double value. |
| integer_value |
int64 |
|
Represents an integer value |
| string_value |
string |
|
Represents a string value. |
| bool_value |
bool |
|
Represents a boolean value. |
| struct_value |
Struct |
|
Represents a structured value. |
| list_value |
ListValue |
|
Represents a repeated Value. |
NullValue
NullValue is a singleton enumeration to represent the null value for the
Value type union.
The JSON representation for NullValue is JSON null.
| Name |
Number |
Description |
| NULL_VALUE |
0 |
Null value. |
Top
points.proto
BatchResult
| Field |
Type |
Label |
Description |
| result |
ScoredPoint |
repeated |
|
ClearPayloadPoints
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
name of the collection |
| wait |
bool |
optional |
Wait until the changes have been applied? |
| points |
PointsSelector |
|
Affected points |
| ordering |
WriteOrdering |
optional |
Write ordering guarantees |
| shard_key_selector |
ShardKeySelector |
optional |
Option for custom sharding to specify used shard keys |
Condition
ContextExamplePair
CountPoints
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
name of the collection |
| filter |
Filter |
|
Filter conditions - return only those points that satisfy the specified conditions |
| exact |
bool |
optional |
If true - return exact count, if false - return approximate count |
| read_consistency |
ReadConsistency |
optional |
Options for specifying read consistency guarantees |
| shard_key_selector |
ShardKeySelector |
optional |
Specify in which shards to look for the points, if not specified - look in all shards |
CountResponse
CountResult
| Field |
Type |
Label |
Description |
| count |
uint64 |
|
|
CreateFieldIndexCollection
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
name of the collection |
| wait |
bool |
optional |
Wait until the changes have been applied? |
| field_name |
string |
|
Field name to index |
| field_type |
FieldType |
optional |
Field type. |
| field_index_params |
PayloadIndexParams |
optional |
Payload index params. |
| ordering |
WriteOrdering |
optional |
Write ordering guarantees |
DatetimeRange
DeleteFieldIndexCollection
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
name of the collection |
| wait |
bool |
optional |
Wait until the changes have been applied? |
| field_name |
string |
|
Field name to delete |
| ordering |
WriteOrdering |
optional |
Write ordering guarantees |
DeletePayloadPoints
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
name of the collection |
| wait |
bool |
optional |
Wait until the changes have been applied? |
| keys |
string |
repeated |
List of keys to delete |
| points_selector |
PointsSelector |
optional |
Affected points |
| ordering |
WriteOrdering |
optional |
Write ordering guarantees |
| shard_key_selector |
ShardKeySelector |
optional |
Option for custom sharding to specify used shard keys |
DeletePointVectors
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
name of the collection |
| wait |
bool |
optional |
Wait until the changes have been applied? |
| points_selector |
PointsSelector |
|
Affected points |
| vectors |
VectorsSelector |
|
List of vector names to delete |
| ordering |
WriteOrdering |
optional |
Write ordering guarantees |
| shard_key_selector |
ShardKeySelector |
optional |
Option for custom sharding to specify used shard keys |
DeletePoints
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
name of the collection |
| wait |
bool |
optional |
Wait until the changes have been applied? |
| points |
PointsSelector |
|
Affected points |
| ordering |
WriteOrdering |
optional |
Write ordering guarantees |
| shard_key_selector |
ShardKeySelector |
optional |
Option for custom sharding to specify used shard keys |
DiscoverBatchPoints
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
Name of the collection |
| discover_points |
DiscoverPoints |
repeated |
|
| read_consistency |
ReadConsistency |
optional |
Options for specifying read consistency guarantees |
| timeout |
uint64 |
optional |
If set, overrides global timeout setting for this request. Unit is seconds. |
DiscoverBatchResponse
| Field |
Type |
Label |
Description |
| result |
BatchResult |
repeated |
|
| time |
double |
|
Time spent to process |
DiscoverPoints
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
name of the collection |
| target |
TargetVector |
|
Use this as the primary search objective |
| context |
ContextExamplePair |
repeated |
Search will be constrained by these pairs of examples |
| filter |
Filter |
|
Filter conditions - return only those points that satisfy the specified conditions |
| limit |
uint64 |
|
Max number of result |
| with_payload |
WithPayloadSelector |
|
Options for specifying which payload to include or not |
| params |
SearchParams |
|
Search config |
| offset |
uint64 |
optional |
Offset of the result |
| using |
string |
optional |
Define which vector to use for recommendation, if not specified - default vector |
| with_vectors |
WithVectorsSelector |
optional |
Options for specifying which vectors to include into response |
| lookup_from |
LookupLocation |
optional |
Name of the collection to use for points lookup, if not specified - use current collection |
| read_consistency |
ReadConsistency |
optional |
Options for specifying read consistency guarantees |
| timeout |
uint64 |
optional |
If set, overrides global timeout setting for this request. Unit is seconds. |
| shard_key_selector |
ShardKeySelector |
optional |
Specify in which shards to look for the points, if not specified - look in all shards |
DiscoverResponse
| Field |
Type |
Label |
Description |
| result |
ScoredPoint |
repeated |
|
| time |
double |
|
Time spent to process |
FieldCondition
| Field |
Type |
Label |
Description |
| key |
string |
|
|
| match |
Match |
|
Check if point has field with a given value |
| range |
Range |
|
Check if points value lies in a given range |
| geo_bounding_box |
GeoBoundingBox |
|
Check if points geolocation lies in a given area |
| geo_radius |
GeoRadius |
|
Check if geo point is within a given radius |
| values_count |
ValuesCount |
|
Check number of values for a specific field |
| geo_polygon |
GeoPolygon |
|
Check if geo point is within a given polygon |
| datetime_range |
DatetimeRange |
|
Check if datetime is within a given range |
Filter
| Field |
Type |
Label |
Description |
| should |
Condition |
repeated |
At least one of those conditions should match |
| must |
Condition |
repeated |
All conditions must match |
| must_not |
Condition |
repeated |
All conditions must NOT match |
| min_should |
MinShould |
optional |
At least minimum amount of given conditions should match |
GeoBoundingBox
| Field |
Type |
Label |
Description |
| top_left |
GeoPoint |
|
north-west corner |
| bottom_right |
GeoPoint |
|
south-east corner |
GeoLineString
| Field |
Type |
Label |
Description |
| points |
GeoPoint |
repeated |
Ordered sequence of GeoPoints representing the line |
GeoPoint
GeoPolygon
For a valid GeoPolygon, both the exterior and interior GeoLineStrings must consist of a minimum of 4 points.
Additionally, the first and last points of each GeoLineString must be the same.
| Field |
Type |
Label |
Description |
| exterior |
GeoLineString |
|
The exterior line bounds the surface |
| interiors |
GeoLineString |
repeated |
Interior lines (if present) bound holes within the surface |
GeoRadius
| Field |
Type |
Label |
Description |
| center |
GeoPoint |
|
Center of the circle |
| radius |
float |
|
In meters |
GetPoints
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
name of the collection |
| ids |
PointId |
repeated |
List of points to retrieve |
| with_payload |
WithPayloadSelector |
|
Options for specifying which payload to include or not |
| with_vectors |
WithVectorsSelector |
optional |
Options for specifying which vectors to include into response |
| read_consistency |
ReadConsistency |
optional |
Options for specifying read consistency guarantees |
| shard_key_selector |
ShardKeySelector |
optional |
Specify in which shards to look for the points, if not specified - look in all shards |
GetResponse
GroupId
| Field |
Type |
Label |
Description |
| unsigned_value |
uint64 |
|
Represents a double value. |
| integer_value |
int64 |
|
Represents an integer value |
| string_value |
string |
|
Represents a string value. |
GroupsResult
| Field |
Type |
Label |
Description |
| groups |
PointGroup |
repeated |
Groups |
HasIdCondition
| Field |
Type |
Label |
Description |
| has_id |
PointId |
repeated |
|
IsEmptyCondition
| Field |
Type |
Label |
Description |
| key |
string |
|
|
IsNullCondition
| Field |
Type |
Label |
Description |
| key |
string |
|
|
LookupLocation
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
|
| vector_name |
string |
optional |
Which vector to use for search, if not specified - use default vector |
| shard_key_selector |
ShardKeySelector |
optional |
Specify in which shards to look for the points, if not specified - look in all shards |
Match
MinShould
| Field |
Type |
Label |
Description |
| conditions |
Condition |
repeated |
|
| min_count |
uint64 |
|
|
NamedVectors
NamedVectors.VectorsEntry
NestedCondition
| Field |
Type |
Label |
Description |
| key |
string |
|
Path to nested object |
| filter |
Filter |
|
Filter condition |
OrderBy
| Field |
Type |
Label |
Description |
| key |
string |
|
Payload key to order by |
| direction |
Direction |
optional |
Ascending or descending order |
| start_from |
StartFrom |
optional |
Start from this value |
PayloadExcludeSelector
| Field |
Type |
Label |
Description |
| fields |
string |
repeated |
List of payload keys to exclude from the result |
PayloadIncludeSelector
| Field |
Type |
Label |
Description |
| fields |
string |
repeated |
List of payload keys to include into result |
PointGroup
| Field |
Type |
Label |
Description |
| id |
GroupId |
|
Group id |
| hits |
ScoredPoint |
repeated |
Points in the group |
| lookup |
RetrievedPoint |
|
Point(s) from the lookup collection that matches the group id |
PointId
| Field |
Type |
Label |
Description |
| num |
uint64 |
|
Numerical ID of the point |
| uuid |
string |
|
UUID |
PointStruct
PointStruct.PayloadEntry
PointVectors
| Field |
Type |
Label |
Description |
| id |
PointId |
|
ID to update vectors for |
| vectors |
Vectors |
|
Named vectors to update, leave others intact |
PointsIdsList
| Field |
Type |
Label |
Description |
| ids |
PointId |
repeated |
|
PointsOperationResponse
PointsSelector
PointsUpdateOperation
PointsUpdateOperation.ClearPayload
| Field |
Type |
Label |
Description |
| points |
PointsSelector |
|
Affected points |
| shard_key_selector |
ShardKeySelector |
optional |
Option for custom sharding to specify used shard keys |
PointsUpdateOperation.DeletePayload
| Field |
Type |
Label |
Description |
| keys |
string |
repeated |
|
| points_selector |
PointsSelector |
optional |
Affected points |
| shard_key_selector |
ShardKeySelector |
optional |
Option for custom sharding to specify used shard keys |
PointsUpdateOperation.DeletePoints
| Field |
Type |
Label |
Description |
| points |
PointsSelector |
|
Affected points |
| shard_key_selector |
ShardKeySelector |
optional |
Option for custom sharding to specify used shard keys |
PointsUpdateOperation.DeleteVectors
| Field |
Type |
Label |
Description |
| points_selector |
PointsSelector |
|
Affected points |
| vectors |
VectorsSelector |
|
List of vector names to delete |
| shard_key_selector |
ShardKeySelector |
optional |
Option for custom sharding to specify used shard keys |
PointsUpdateOperation.PointStructList
| Field |
Type |
Label |
Description |
| points |
PointStruct |
repeated |
|
| shard_key_selector |
ShardKeySelector |
optional |
Option for custom sharding to specify used shard keys |
PointsUpdateOperation.SetPayload
PointsUpdateOperation.SetPayload.PayloadEntry
PointsUpdateOperation.UpdateVectors
| Field |
Type |
Label |
Description |
| points |
PointVectors |
repeated |
List of points and vectors to update |
| shard_key_selector |
ShardKeySelector |
optional |
Option for custom sharding to specify used shard keys |
QuantizationSearchParams
| Field |
Type |
Label |
Description |
| ignore |
bool |
optional |
If set to true, search will ignore quantized vector data |
| rescore |
bool |
optional |
If true, use original vectors to re-score top-k results. If ignored, qdrant decides automatically does rescore enabled or not. |
| oversampling |
double |
optional |
Oversampling factor for quantization. |
Defines how many extra vectors should be pre-selected using quantized index, and then re-scored using original vectors.
For example, if oversampling is 2.4 and limit is 100, then 240 vectors will be pre-selected using quantized index, and then top-100 will be returned after re-scoring. |
Range
ReadConsistency
| Field |
Type |
Label |
Description |
| type |
ReadConsistencyType |
|
Common read consistency configurations |
| factor |
uint64 |
|
Send request to a specified number of nodes, and return points which are present on all of them |
RecommendBatchPoints
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
Name of the collection |
| recommend_points |
RecommendPoints |
repeated |
|
| read_consistency |
ReadConsistency |
optional |
Options for specifying read consistency guarantees |
| timeout |
uint64 |
optional |
If set, overrides global timeout setting for this request. Unit is seconds. |
RecommendBatchResponse
| Field |
Type |
Label |
Description |
| result |
BatchResult |
repeated |
|
| time |
double |
|
Time spent to process |
RecommendGroupsResponse
RecommendPointGroups
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
Name of the collection |
| positive |
PointId |
repeated |
Look for vectors closest to the vectors from these points |
| negative |
PointId |
repeated |
Try to avoid vectors like the vector from these points |
| filter |
Filter |
|
Filter conditions - return only those points that satisfy the specified conditions |
| limit |
uint32 |
|
Max number of groups in result |
| with_payload |
WithPayloadSelector |
|
Options for specifying which payload to include or not |
| params |
SearchParams |
|
Search config |
| score_threshold |
float |
optional |
If provided - cut off results with worse scores |
| using |
string |
optional |
Define which vector to use for recommendation, if not specified - default vector |
| with_vectors |
WithVectorsSelector |
optional |
Options for specifying which vectors to include into response |
| lookup_from |
LookupLocation |
optional |
Name of the collection to use for points lookup, if not specified - use current collection |
| group_by |
string |
|
Payload field to group by, must be a string or number field. If there are multiple values for the field, all of them will be used. One point can be in multiple groups. |
| group_size |
uint32 |
|
Maximum amount of points to return per group |
| read_consistency |
ReadConsistency |
optional |
Options for specifying read consistency guarantees |
| with_lookup |
WithLookup |
optional |
Options for specifying how to use the group id to lookup points in another collection |
| strategy |
RecommendStrategy |
optional |
How to use the example vectors to find the results |
| positive_vectors |
Vector |
repeated |
Look for vectors closest to those |
| negative_vectors |
Vector |
repeated |
Try to avoid vectors like this |
| timeout |
uint64 |
optional |
If set, overrides global timeout setting for this request. Unit is seconds. |
| shard_key_selector |
ShardKeySelector |
optional |
Specify in which shards to look for the points, if not specified - look in all shards |
RecommendPoints
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
name of the collection |
| positive |
PointId |
repeated |
Look for vectors closest to the vectors from these points |
| negative |
PointId |
repeated |
Try to avoid vectors like the vector from these points |
| filter |
Filter |
|
Filter conditions - return only those points that satisfy the specified conditions |
| limit |
uint64 |
|
Max number of result |
| with_payload |
WithPayloadSelector |
|
Options for specifying which payload to include or not |
| params |
SearchParams |
|
Search config |
| score_threshold |
float |
optional |
If provided - cut off results with worse scores |
| offset |
uint64 |
optional |
Offset of the result |
| using |
string |
optional |
Define which vector to use for recommendation, if not specified - default vector |
| with_vectors |
WithVectorsSelector |
optional |
Options for specifying which vectors to include into response |
| lookup_from |
LookupLocation |
optional |
Name of the collection to use for points lookup, if not specified - use current collection |
| read_consistency |
ReadConsistency |
optional |
Options for specifying read consistency guarantees |
| strategy |
RecommendStrategy |
optional |
How to use the example vectors to find the results |
| positive_vectors |
Vector |
repeated |
Look for vectors closest to those |
| negative_vectors |
Vector |
repeated |
Try to avoid vectors like this |
| timeout |
uint64 |
optional |
If set, overrides global timeout setting for this request. Unit is seconds. |
| shard_key_selector |
ShardKeySelector |
optional |
Specify in which shards to look for the points, if not specified - look in all shards |
RecommendResponse
| Field |
Type |
Label |
Description |
| result |
ScoredPoint |
repeated |
|
| time |
double |
|
Time spent to process |
RepeatedIntegers
| Field |
Type |
Label |
Description |
| integers |
int64 |
repeated |
|
RepeatedStrings
| Field |
Type |
Label |
Description |
| strings |
string |
repeated |
|
RetrievedPoint
RetrievedPoint.PayloadEntry
ScoredPoint
ScoredPoint.PayloadEntry
ScrollPoints
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
|
| filter |
Filter |
|
Filter conditions - return only those points that satisfy the specified conditions |
| offset |
PointId |
optional |
Start with this ID |
| limit |
uint32 |
optional |
Max number of result |
| with_payload |
WithPayloadSelector |
|
Options for specifying which payload to include or not |
| with_vectors |
WithVectorsSelector |
optional |
Options for specifying which vectors to include into response |
| read_consistency |
ReadConsistency |
optional |
Options for specifying read consistency guarantees |
| shard_key_selector |
ShardKeySelector |
optional |
Specify in which shards to look for the points, if not specified - look in all shards |
| order_by |
OrderBy |
optional |
Order the records by a payload field |
ScrollResponse
| Field |
Type |
Label |
Description |
| next_page_offset |
PointId |
optional |
Use this offset for the next query |
| result |
RetrievedPoint |
repeated |
|
| time |
double |
|
Time spent to process |
SearchBatchPoints
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
Name of the collection |
| search_points |
SearchPoints |
repeated |
|
| read_consistency |
ReadConsistency |
optional |
Options for specifying read consistency guarantees |
| timeout |
uint64 |
optional |
If set, overrides global timeout setting for this request. Unit is seconds. |
SearchBatchResponse
| Field |
Type |
Label |
Description |
| result |
BatchResult |
repeated |
|
| time |
double |
|
Time spent to process |
SearchGroupsResponse
SearchParams
| Field |
Type |
Label |
Description |
| hnsw_ef |
uint64 |
optional |
Params relevant to HNSW index. Size of the beam in a beam-search. Larger the value - more accurate the result, more time required for search. |
| exact |
bool |
optional |
Search without approximation. If set to true, search may run long but with exact results. |
| quantization |
QuantizationSearchParams |
optional |
If set to true, search will ignore quantized vector data |
| indexed_only |
bool |
optional |
If enabled, the engine will only perform search among indexed or small segments. Using this option prevents slow searches in case of delayed index, but does not guarantee that all uploaded vectors will be included in search results |
SearchPointGroups
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
Name of the collection |
| vector |
float |
repeated |
Vector to compare against |
| filter |
Filter |
|
Filter conditions - return only those points that satisfy the specified conditions |
| limit |
uint32 |
|
Max number of result |
| with_payload |
WithPayloadSelector |
|
Options for specifying which payload to include or not |
| params |
SearchParams |
|
Search config |
| score_threshold |
float |
optional |
If provided - cut off results with worse scores |
| vector_name |
string |
optional |
Which vector to use for search, if not specified - use default vector |
| with_vectors |
WithVectorsSelector |
optional |
Options for specifying which vectors to include into response |
| group_by |
string |
|
Payload field to group by, must be a string or number field. If there are multiple values for the field, all of them will be used. One point can be in multiple groups. |
| group_size |
uint32 |
|
Maximum amount of points to return per group |
| read_consistency |
ReadConsistency |
optional |
Options for specifying read consistency guarantees |
| with_lookup |
WithLookup |
optional |
Options for specifying how to use the group id to lookup points in another collection |
| timeout |
uint64 |
optional |
If set, overrides global timeout setting for this request. Unit is seconds. |
| shard_key_selector |
ShardKeySelector |
optional |
Specify in which shards to look for the points, if not specified - look in all shards |
| sparse_indices |
SparseIndices |
optional |
|
SearchPoints
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
name of the collection |
| vector |
float |
repeated |
vector |
| filter |
Filter |
|
Filter conditions - return only those points that satisfy the specified conditions |
| limit |
uint64 |
|
Max number of result |
| with_payload |
WithPayloadSelector |
|
Options for specifying which payload to include or not |
| params |
SearchParams |
|
Search config |
| score_threshold |
float |
optional |
If provided - cut off results with worse scores |
| offset |
uint64 |
optional |
Offset of the result |
| vector_name |
string |
optional |
Which vector to use for search, if not specified - use default vector |
| with_vectors |
WithVectorsSelector |
optional |
Options for specifying which vectors to include into response |
| read_consistency |
ReadConsistency |
optional |
Options for specifying read consistency guarantees |
| timeout |
uint64 |
optional |
If set, overrides global timeout setting for this request. Unit is seconds. |
| shard_key_selector |
ShardKeySelector |
optional |
Specify in which shards to look for the points, if not specified - look in all shards |
| sparse_indices |
SparseIndices |
optional |
|
SearchResponse
| Field |
Type |
Label |
Description |
| result |
ScoredPoint |
repeated |
|
| time |
double |
|
Time spent to process |
SetPayloadPoints
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
name of the collection |
| wait |
bool |
optional |
Wait until the changes have been applied? |
| payload |
SetPayloadPoints.PayloadEntry |
repeated |
New payload values |
| points_selector |
PointsSelector |
optional |
Affected points |
| ordering |
WriteOrdering |
optional |
Write ordering guarantees |
| shard_key_selector |
ShardKeySelector |
optional |
Option for custom sharding to specify used shard keys |
SetPayloadPoints.PayloadEntry
ShardKeySelector
----------------- ShardKeySelector ----------
| Field |
Type |
Label |
Description |
| shard_keys |
ShardKey |
repeated |
List of shard keys which should be used in the request |
SparseIndices
| Field |
Type |
Label |
Description |
| data |
uint32 |
repeated |
|
StartFrom
TargetVector
UpdateBatchPoints
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
name of the collection |
| wait |
bool |
optional |
Wait until the changes have been applied? |
| operations |
PointsUpdateOperation |
repeated |
|
| ordering |
WriteOrdering |
optional |
Write ordering guarantees |
UpdateBatchResponse
| Field |
Type |
Label |
Description |
| result |
UpdateResult |
repeated |
|
| time |
double |
|
Time spent to process |
UpdatePointVectors
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
name of the collection |
| wait |
bool |
optional |
Wait until the changes have been applied? |
| points |
PointVectors |
repeated |
List of points and vectors to update |
| ordering |
WriteOrdering |
optional |
Write ordering guarantees |
| shard_key_selector |
ShardKeySelector |
optional |
Option for custom sharding to specify used shard keys |
UpdateResult
| Field |
Type |
Label |
Description |
| operation_id |
uint64 |
optional |
Number of operation |
| status |
UpdateStatus |
|
Operation status |
UpsertPoints
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
name of the collection |
| wait |
bool |
optional |
Wait until the changes have been applied? |
| points |
PointStruct |
repeated |
|
| ordering |
WriteOrdering |
optional |
Write ordering guarantees |
| shard_key_selector |
ShardKeySelector |
optional |
Option for custom sharding to specify used shard keys |
ValuesCount
Vector
VectorExample
Vectors
| Field |
Type |
Label |
Description |
| names |
string |
repeated |
List of vectors to include into result |
WithLookup
| Field |
Type |
Label |
Description |
| collection |
string |
|
Name of the collection to use for points lookup |
| with_payload |
WithPayloadSelector |
optional |
Options for specifying which payload to include (or not) |
| with_vectors |
WithVectorsSelector |
optional |
Options for specifying which vectors to include (or not) |
WithPayloadSelector
| Field |
Type |
Label |
Description |
| enable |
bool |
|
If true - return all vectors, if false - none |
| include |
VectorsSelector |
|
List of payload keys to include into result |
WriteOrdering
Direction
| Name |
Number |
Description |
| Asc |
0 |
|
| Desc |
1 |
|
FieldType
| Name |
Number |
Description |
| FieldTypeKeyword |
0 |
|
| FieldTypeInteger |
1 |
|
| FieldTypeFloat |
2 |
|
| FieldTypeGeo |
3 |
|
| FieldTypeText |
4 |
|
| FieldTypeBool |
5 |
|
| FieldTypeDatetime |
6 |
|
ReadConsistencyType
| Name |
Number |
Description |
| All |
0 |
Send request to all nodes and return points which are present on all of them |
| Majority |
1 |
Send requests to all nodes and return points which are present on majority of them |
| Quorum |
2 |
Send requests to half + 1 nodes, return points which are present on all of them |
RecommendStrategy
How to use positive and negative vectors to find the results, default is AverageVector:
| Name |
Number |
Description |
| AverageVector |
0 |
Average positive and negative vectors and create a single query with the formula query = avg_pos + avg_pos - avg_neg. Then performs normal search. |
| BestScore |
1 |
Uses custom search objective. Each candidate is compared against all examples, its score is then chosen from the max(max_pos_score, max_neg_score). If the max_neg_score is chosen then it is squared and negated. |
UpdateStatus
| Name |
Number |
Description |
| UnknownUpdateStatus |
0 |
|
| Acknowledged |
1 |
Update is received, but not processed yet |
| Completed |
2 |
Update is applied and ready for search |
WriteOrderingType
| Name |
Number |
Description |
| Weak |
0 |
Write operations may be reordered, works faster, default |
| Medium |
1 |
Write operations go through dynamically selected leader, may be inconsistent for a short period of time in case of leader change |
| Strong |
2 |
Write operations go through the permanent leader, consistent, but may be unavailable if leader is down |
Top
points_service.proto
Points
When using only the context (without a target), a special search - called context search - is performed where pairs of points are used to generate a loss that guides the search towards the zone where most positive examples overlap. This means that the score minimizes the scenario of finding a point closer to a negative than to a positive part of a pair.
Since the score of a context relates to loss, the maximum score a point can get is 0.0, and it becomes normal that many points can have a score of 0.0.
When using target (with or without context), the score behaves a little different: The integer part of the score represents the rank with respect to the context, while the decimal part of the score relates to the distance to the target. The context part of the score for each pair is calculated +1 if the point is closer to a positive than to a negative part of a pair, and -1 otherwise. |
| DiscoverBatch | DiscoverBatchPoints | DiscoverBatchResponse | Batch request points based on { positive, negative } pairs of examples, and/or a target |
| Count | CountPoints | CountResponse | Count points in collection with given filtering conditions |
| UpdateBatch | UpdateBatchPoints | UpdateBatchResponse | Perform multiple update operations in one request |
Top
qdrant.proto
HealthCheckReply
HealthCheckRequest
Qdrant
Top
qdrant_internal_service.proto
GetConsensusCommitRequest
GetConsensusCommitResponse
| Field |
Type |
Label |
Description |
| commit |
int64 |
|
Raft commit as u64 |
| term |
int64 |
|
Raft term as u64 |
WaitOnConsensusCommitRequest
| Field |
Type |
Label |
Description |
| commit |
int64 |
|
Raft commit as u64 |
| term |
int64 |
|
Raft term as u64 |
| timeout |
int64 |
|
Timeout in seconds |
WaitOnConsensusCommitResponse
| Field |
Type |
Label |
Description |
| ok |
bool |
|
False if commit/term is diverged and never reached or if timed out. |
QdrantInternal
Top
snapshots_service.proto
CreateFullSnapshotRequest
CreateSnapshotRequest
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
Name of the collection |
CreateSnapshotResponse
DeleteFullSnapshotRequest
| Field |
Type |
Label |
Description |
| snapshot_name |
string |
|
Name of the full snapshot |
DeleteSnapshotRequest
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
Name of the collection |
| snapshot_name |
string |
|
Name of the collection snapshot |
DeleteSnapshotResponse
| Field |
Type |
Label |
Description |
| time |
double |
|
Time spent to process |
ListFullSnapshotsRequest
ListSnapshotsRequest
| Field |
Type |
Label |
Description |
| collection_name |
string |
|
Name of the collection |
ListSnapshotsResponse
SnapshotDescription
| Field |
Type |
Label |
Description |
| name |
string |
|
Name of the snapshot |
| creation_time |
google.protobuf.Timestamp |
|
Creation time of the snapshot |
| size |
int64 |
|
Size of the snapshot in bytes |
| checksum |
string |
optional |
SHA256 digest of the snapshot file |
Snapshots
Scalar Value Types
| .proto Type |
Notes |
C++ |
Java |
Python |
Go |
C# |
PHP |
Ruby |
| double |
|
double |
double |
float |
float64 |
double |
float |
Float |
| float |
|
float |
float |
float |
float32 |
float |
float |
Float |
| int32 |
Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. |
int32 |
int |
int |
int32 |
int |
integer |
Bignum or Fixnum (as required) |
| int64 |
Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. |
int64 |
long |
int/long |
int64 |
long |
integer/string |
Bignum |
| uint32 |
Uses variable-length encoding. |
uint32 |
int |
int/long |
uint32 |
uint |
integer |
Bignum or Fixnum (as required) |
| uint64 |
Uses variable-length encoding. |
uint64 |
long |
int/long |
uint64 |
ulong |
integer/string |
Bignum or Fixnum (as required) |
| sint32 |
Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. |
int32 |
int |
int |
int32 |
int |
integer |
Bignum or Fixnum (as required) |
| sint64 |
Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. |
int64 |
long |
int/long |
int64 |
long |
integer/string |
Bignum |
| fixed32 |
Always four bytes. More efficient than uint32 if values are often greater than 2^28. |
uint32 |
int |
int |
uint32 |
uint |
integer |
Bignum or Fixnum (as required) |
| fixed64 |
Always eight bytes. More efficient than uint64 if values are often greater than 2^56. |
uint64 |
long |
int/long |
uint64 |
ulong |
integer/string |
Bignum |
| sfixed32 |
Always four bytes. |
int32 |
int |
int |
int32 |
int |
integer |
Bignum or Fixnum (as required) |
| sfixed64 |
Always eight bytes. |
int64 |
long |
int/long |
int64 |
long |
integer/string |
Bignum |
| bool |
|
bool |
boolean |
boolean |
bool |
bool |
boolean |
TrueClass/FalseClass |
| string |
A string must always contain UTF-8 encoded or 7-bit ASCII text. |
string |
String |
str/unicode |
string |
string |
string |
String (UTF-8) |
| bytes |
May contain any arbitrary sequence of bytes. |
string |
ByteString |
str |
[]byte |
ByteString |
string |
String (ASCII-8BIT) |