Files
qdrant/docs/grpc/docs.md
Tim Visée 868626f409 Add vector specific quantization configuration (#1680)
* Add QuantizationConfigDiff type

* Add quantization config diff to vector parameters

* Prefer vector config over collection config for quantization

* Update OpenAPI specification

* Validate quantization configuration quantile in 0.5-1.0 range

As per https://github.com/qdrant/qdrant/pull/1681

* Add test if check if vector specific quantization config is persisted

* Alias quantization to quantization_config in vector parameters

* Remove quantization config diff, use full vector specific config instead

* Regenerate OpenAPI specification and gRPC docs

* Fix compilation error

* Add error handling to quantization config conversions

* Fix quantization integration test, make HNSW test stricter
2023-04-11 14:31:34 +02:00

62 KiB
Raw Blame History

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

Field Type Label Description
create_alias CreateAlias
rename_alias RenameAlias
delete_alias DeleteAlias

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

CollectionConfig

Field Type Label Description
params CollectionParams Collection parameters
hnsw_config HnswConfigDiff Configuration of vector index
optimizer_config OptimizersConfigDiff Configuration of the optimizers
wal_config WalConfigDiff Configuration of the Write-Ahead-Log
quantization_config QuantizationConfig optional Configuration of the vector quantization

CollectionDescription

Field Type Label Description
name string Name of the collection

CollectionInfo

Field Type Label Description
status CollectionStatus operating condition of the collection
optimizer_status OptimizerStatus status of collection optimizers
vectors_count uint64 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 number of points in the collection
indexed_vectors_count uint64 optional number of indexed vectors in the collection.

CollectionInfo.PayloadSchemaEntry

Field Type Label Description
key string
value PayloadSchemaInfo

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

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

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 = 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

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

GetCollectionInfoRequest

Field Type Label Description
collection_name string Name of the collection

GetCollectionInfoResponse

Field Type Label Description
result CollectionInfo
time double Time spent to process

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 - auto selection.
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.

ListAliasesRequest

ListAliasesResponse

Field Type Label Description
aliases AliasDescription repeated
time double Time spent to process

ListCollectionAliasesRequest

Field Type Label Description
collection_name string Name of the collection

ListCollectionsRequest

ListCollectionsResponse

Field Type Label Description
collections CollectionDescription repeated
time double Time spent to process

OptimizerStatus

Field Type Label Description
ok bool
error string

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 indexation speed has more priority for you - make this parameter lower. If search speed is more important - make this parameter higher. Note: 1Kb = 1 vector of size 256 | | 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 a read-only memmaped file. To enable memmap storage, lower the threshold Note: 1Kb = 1 vector of size 256 | | indexing_threshold | uint64 | optional | Maximum size (in KiloBytes) of vectors allowed for plain index. Default value based on https://github.com/google-research/google-research/blob/master/scann/docs/algorithms.md 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, which can be used for optimization. If 0 - NUM_CPU - 1 will be used |

PayloadIndexParams

Field Type Label Description
text_index_params TextIndexParams Parameters for text index

PayloadSchemaInfo

Field Type Label Description
data_type PayloadSchemaType Field data type
params PayloadIndexParams optional Field index parameters
points uint64 optional Number of points indexed within this field indexed

QuantizationConfig

Field Type Label Description
scalar ScalarQuantization

RenameAlias

Field Type Label Description
old_alias_name string Name of the alias to rename
new_alias_name string Name of the alias

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

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
timeout uint64 optional Wait timeout for operation commit in seconds, if not specified - default value will be supplied
params CollectionParamsDiff optional New configuration parameters for the collection

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

VectorParamsMap

Field Type Label Description
map VectorParamsMap.MapEntry repeated

VectorParamsMap.MapEntry

Field Type Label Description
key string
value VectorParams

VectorsConfig

Field Type Label Description
params VectorParams
params_map VectorParamsMap

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

Distance

Name Number Description
UnknownDistance 0
Cosine 1
Euclid 2
Dot 3

PayloadSchemaType

Name Number Description
UnknownType 0
Keyword 1
Integer 2
Float 3
Geo 4
Text 5

QuantizationType

Name Number Description
UnknownQuantization 0
Int8 1

TokenizerType

Name Number Description
Unknown 0
Prefix 1
Whitespace 2
Word 3

Top

collections_service.proto

Collections

Method Name Request Type Response Type Description
Get GetCollectionInfoRequest GetCollectionInfoResponse Get detailed information about specified existing collection
List ListCollectionsRequest ListCollectionsResponse Get list name of all existing collections
Create CreateCollection CollectionOperationResponse Create new collection with given parameters
Update UpdateCollection CollectionOperationResponse Update parameters of the existing collection
Delete DeleteCollection CollectionOperationResponse Drop collection and all associated data
UpdateAliases ChangeAliases CollectionOperationResponse Update Aliases of the existing collection
ListCollectionAliases ListCollectionAliasesRequest ListAliasesResponse Get list of all aliases for a collection
ListAliases ListAliasesRequest ListAliasesResponse Get list of all aliases for all existing collections

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

Field Type Label Description
key string
value Value

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

Condition

Field Type Label Description
field FieldCondition
is_empty IsEmptyCondition
has_id HasIdCondition
filter Filter
is_null IsNullCondition

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

CountResponse

Field Type Label Description
result CountResult
time double Time spent to process

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

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

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

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

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

GeoBoundingBox

Field Type Label Description
top_left GeoPoint north-west corner
bottom_right GeoPoint south-east corner

GeoPoint

Field Type Label Description
lon double
lat double

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

GetResponse

Field Type Label Description
result RetrievedPoint repeated
time double Time spent to process

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

Match

Field Type Label Description
keyword string Match string keyword
integer int64 Match integer
boolean bool Match boolean
text string Match text
keywords RepeatedStrings Match multiple keywords
integers RepeatedIntegers Match multiple integers

NamedVectors

Field Type Label Description
vectors NamedVectors.VectorsEntry repeated

NamedVectors.VectorsEntry

Field Type Label Description
key string
value Vector

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

PointId

Field Type Label Description
num uint64 Numerical ID of the point
uuid string UUID

PointStruct

Field Type Label Description
id PointId
payload PointStruct.PayloadEntry repeated
vectors Vectors optional

PointStruct.PayloadEntry

Field Type Label Description
key string
value Value

PointsIdsList

Field Type Label Description
ids PointId repeated

PointsOperationResponse

Field Type Label Description
result UpdateResult
time double Time spent to process

PointsSelector

Field Type Label Description
points PointsIdsList
filter Filter

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. Default is true.

Range

Field Type Label Description
lt double optional
gt double optional
gte double optional
lte double optional

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

RecommendBatchResponse

Field Type Label Description
result BatchResult repeated
time double Time spent to process

RecommendPoints

Field Type Label Description
collection_name string name of the collection
positive PointId repeated Look for vectors closest to those
negative PointId repeated Try to avoid vectors like this
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

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

Field Type Label Description
id PointId
payload RetrievedPoint.PayloadEntry repeated
vectors Vectors optional

RetrievedPoint.PayloadEntry

Field Type Label Description
key string
value Value

ScoredPoint

Field Type Label Description
id PointId Point id
payload ScoredPoint.PayloadEntry repeated Payload
score float Similarity score
version uint64 Last update operation applied to this point
vectors Vectors optional Vectors to search

ScoredPoint.PayloadEntry

Field Type Label Description
key string
value Value

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

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

SearchBatchResponse

Field Type Label Description
result BatchResult repeated
time double Time spent to process

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

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

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

SetPayloadPoints.PayloadEntry

Field Type Label Description
key string
value Value

UpdateResult

Field Type Label Description
operation_id uint64 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

ValuesCount

Field Type Label Description
lt uint64 optional
gt uint64 optional
gte uint64 optional
lte uint64 optional

Vector

Field Type Label Description
data float repeated

Vectors

Field Type Label Description
vector Vector
vectors NamedVectors

VectorsSelector

Field Type Label Description
names string repeated List of vectors to include into result

WithPayloadSelector

Field Type Label Description
enable bool If true - return all payload, if false - none
include PayloadIncludeSelector
exclude PayloadExcludeSelector

WithVectorsSelector

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

Field Type Label Description
type WriteOrderingType Write ordering guarantees

FieldType

Name Number Description
FieldTypeKeyword 0
FieldTypeInteger 1
FieldTypeFloat 2
FieldTypeGeo 3
FieldTypeText 4

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

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

Method Name Request Type Response Type Description
Upsert UpsertPoints PointsOperationResponse Perform insert + updates on points. If a point with a given ID already exists - it will be overwritten.
Delete DeletePoints PointsOperationResponse Delete points
Get GetPoints GetResponse Retrieve points
SetPayload SetPayloadPoints PointsOperationResponse Set payload for points
OverwritePayload SetPayloadPoints PointsOperationResponse Overwrite payload for points
DeletePayload DeletePayloadPoints PointsOperationResponse Delete specified key payload for points
ClearPayload ClearPayloadPoints PointsOperationResponse Remove all payload for specified points
CreateFieldIndex CreateFieldIndexCollection PointsOperationResponse Create index for field in collection
DeleteFieldIndex DeleteFieldIndexCollection PointsOperationResponse Delete field index for collection
Search SearchPoints SearchResponse Retrieve closest points based on vector similarity and given filtering conditions
SearchBatch SearchBatchPoints SearchBatchResponse Retrieve closest points based on vector similarity and given filtering conditions
Scroll ScrollPoints ScrollResponse Iterate over all or filtered points points
Recommend RecommendPoints RecommendResponse Look for the points which are closer to stored positive examples and at the same time further to negative examples.
RecommendBatch RecommendBatchPoints RecommendBatchResponse Look for the points which are closer to stored positive examples and at the same time further to negative examples.
Count CountPoints CountResponse Count points in collection with given filtering conditions

Top

qdrant.proto

HealthCheckReply

Field Type Label Description
title string
version string

HealthCheckRequest

Qdrant

Method Name Request Type Response Type Description
HealthCheck HealthCheckRequest HealthCheckReply

Top

snapshots_service.proto

CreateFullSnapshotRequest

CreateSnapshotRequest

Field Type Label Description
collection_name string Name of the collection

CreateSnapshotResponse

Field Type Label Description
snapshot_description SnapshotDescription
time double Time spent to process

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

Field Type Label Description
snapshot_descriptions SnapshotDescription repeated
time double Time spent to process

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

Snapshots

Method Name Request Type Response Type Description
Create CreateSnapshotRequest CreateSnapshotResponse Create collection snapshot
List ListSnapshotsRequest ListSnapshotsResponse List collection snapshots
Delete DeleteSnapshotRequest DeleteSnapshotResponse Delete collection snapshots
CreateFull CreateFullSnapshotRequest CreateSnapshotResponse Create full storage snapshot
ListFull ListFullSnapshotsRequest ListSnapshotsResponse List full storage snapshots
DeleteFull DeleteFullSnapshotRequest DeleteSnapshotResponse List full storage 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)