Protocol Documentation
Table of Contents
Top
service/meta.proto
RequestMetaHeader contains information about request meta headers.
Field |
Type |
Label |
Description |
ttl |
uint32 |
|
Carries maximum number of nodes in the request route. |
x_headers |
RequestMetaHeader.XHeader |
repeated |
Carries request X-Headers. |
Field |
Type |
Label |
Description |
key |
string |
|
Carries key to the X-Header. |
value |
string |
|
Carries value of the X-Header. |
Top
service/verify.proto
Message BearerTokenMsg
BearerTokenMsg carries information about request ACL rules with limited lifetime
Field |
Type |
Label |
Description |
token_info |
BearerTokenMsg.Info |
|
token_info is a grouped information about token |
owner_key |
bytes |
|
owner_key is a public key of the token owner |
signature |
bytes |
|
Signature is a signature of token information |
Message BearerTokenMsg.Info
Field |
Type |
Label |
Description |
eacl_table |
acl.EACLTable |
|
EACLTable carries table of extended ACL rules. |
owner_id |
refs.OwnerID |
|
OwnerID carries identifier of the token owner. |
valid_until |
uint64 |
|
ValidUntil carries a last epoch of token lifetime |
RequestVerificationHeader is a set of signatures of every NeoFS Node that processed request.
Field |
Type |
Label |
Description |
key |
bytes |
|
Key is compressed public key used for signature. |
sign |
bytes |
|
Sign is signature of the request or session key. |
Message SessionToken
Represents the NeoFS session token.
Field |
Type |
Label |
Description |
token_info |
SessionToken.Info |
|
token_info is a grouped information about token |
signature |
bytes |
|
Signature is a signature of session token information |
Message SessionToken.Info
Field |
Type |
Label |
Description |
id |
bytes |
|
ID is a token identifier. valid UUIDv4 represented in bytes |
owner_id |
refs.OwnerID |
|
OwnerID carries identifier of the manipulation object owner. |
verb |
SessionToken.Info.Verb |
|
Verb is a type of request for which the token is issued |
lifetime |
TokenLifetime |
|
Lifetime is a lifetime of the session |
session_key |
bytes |
|
SessionKey is a public key of session key |
owner_key |
bytes |
|
OwnerKey is a public key of the token owner |
object_address |
refs.Address |
|
object_address represents the object session context. |
Message TokenLifetime
TokenLifetime carries a group of lifetime parameters of the token
Field |
Type |
Label |
Description |
created |
uint64 |
|
created carries an initial epoch of token lifetime |
valid_until |
uint64 |
|
valid_until carries a last epoch of token lifetime |
SessionToken.Info.Verb
Verb is an enumeration of session request types
Name |
Number |
Description |
OBJECT_PUT |
0 |
Refers to object.Put RPC call |
OBJECT_GET |
1 |
Refers to object.Get RPC call |
OBJECT_HEAD |
2 |
Refers to object.Head RPC call |
OBJECT_SEARCH |
3 |
Refers to object.Search RPC call |
OBJECT_DELETE |
4 |
Refers to object.Delete RPC call |
OBJECT_RANGE |
5 |
Refers to object.GetRange RPC call |
OBJECT_RANGEHASH |
6 |
Refers to object.GetRangeHash RPC call |
Scalar Value Types
.proto Type |
Notes |
C++ Type |
Java Type |
Python Type |
double |
|
double |
double |
float |
float |
|
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 |
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 |
uint32 |
Uses variable-length encoding. |
uint32 |
int |
int/long |
uint64 |
Uses variable-length encoding. |
uint64 |
long |
int/long |
sint32 |
Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. |
int32 |
int |
int |
sint64 |
Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. |
int64 |
long |
int/long |
fixed32 |
Always four bytes. More efficient than uint32 if values are often greater than 2^28. |
uint32 |
int |
int |
fixed64 |
Always eight bytes. More efficient than uint64 if values are often greater than 2^56. |
uint64 |
long |
int/long |
sfixed32 |
Always four bytes. |
int32 |
int |
int |
sfixed64 |
Always eight bytes. |
int64 |
long |
int/long |
bool |
|
bool |
boolean |
boolean |
string |
A string must always contain UTF-8 encoded or 7-bit ASCII text. |
string |
String |
str/unicode |
bytes |
May contain any arbitrary sequence of bytes. |
string |
ByteString |
str |