memos/proto/gen/api/v2/README.md
boojack 57dd1fc49f
chore: initial memo service definition (#2077)
* chore: initial memo service definition

* chore: update

* chore: update

* chore: update
2023-08-05 09:32:52 +08:00

9.9 KiB
Raw Blame History

Protocol Documentation

Table of Contents

Top

api/v2/common.proto

RowStatus

Name Number Description
ROW_STATUS_UNSPECIFIED 0
ACTIVE 1
ARCHIVED 2

Top

api/v2/memo_service.proto

GetMemoRequest

Field Type Label Description
id int32

GetMemoResponse

Field Type Label Description
memo Memo

ListMemosRequest

Field Type Label Description
page int32
page_size int32
filter string Filter is used to filter memos returned in the list.

ListMemosResponse

Field Type Label Description
memos Memo repeated
total int32

Memo

Field Type Label Description
id int32
row_status RowStatus
creator_id int32
created_ts int64
updated_ts int64
content string
visibility Visibility
pinned bool

Visibility

Name Number Description
VISIBILITY_UNSPECIFIED 0
PRIVATE 1
PROTECTED 2
PUBLIC 3

MemoService

Method Name Request Type Response Type Description
ListMemos ListMemosRequest ListMemosResponse
GetMemo GetMemoRequest GetMemoResponse

Top

api/v2/tag_service.proto

ListTagsRequest

Field Type Label Description
creator_id int32

ListTagsResponse

Field Type Label Description
tags Tag repeated

Tag

Field Type Label Description
name string
creator_id int32

TagService

Method Name Request Type Response Type Description
ListTags ListTagsRequest ListTagsResponse

Top

api/v2/user_service.proto

GetUserRequest

Field Type Label Description
name string

GetUserResponse

Field Type Label Description
user User

User

Field Type Label Description
id int32
row_status RowStatus
created_ts int64
updated_ts int64
username string
role Role
email string
nickname string
open_id string
avatar_url string

UserSetting

Field Type Label Description
user_id int32 The user id of the setting.
key UserSetting.Key The key of the setting.
value UserSettingValue The value of the setting.

UserSettingValue

Field Type Label Description
string_value string Default value as a string.
visibility_value Visibility

Role

Name Number Description
ROLE_UNSPECIFIED 0
HOST 1
ADMIN 2
USER 3

UserSetting.Key

Name Number Description
KEY_UNSPECIFIED 0
LOCALE 1 The preferred locale.
APPEARANCE 2 The preferred appearance.
MEMO_VISIBILITY 3 The default visibility of the memo when creating a new memo.
TELEGRAM_USER_ID 4 User's telegram id

UserService

Method Name Request Type Response Type Description
GetUser GetUserRequest GetUserResponse

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)