memos/proto/gen/api/v2
2024-01-18 08:06:59 +08:00
..
activity_service.pb.go feat: add version update inbox message 2023-11-06 22:53:55 +08:00
activity_service.pb.gw.go chore: add activity service 2023-10-28 00:21:53 +08:00
activity_service_grpc.pb.go chore: add activity service 2023-10-28 00:21:53 +08:00
auth_service.pb.go fix: check auth status 2023-11-30 21:52:02 +08:00
auth_service.pb.gw.go fix: add auth status checks 2023-11-30 20:58:36 +08:00
auth_service_grpc.pb.go fix: add auth status checks 2023-11-30 20:58:36 +08:00
common.pb.go feat: implement part of user service (#2053) 2023-07-30 01:35:00 +08:00
inbox_service.pb.go feat: add version update inbox message 2023-11-06 22:53:55 +08:00
inbox_service.pb.gw.go chore: rename list inbox 2023-10-28 00:08:42 +08:00
inbox_service_grpc.pb.go chore: rename list inbox 2023-10-28 00:08:42 +08:00
markdown_service.pb.go feat: implement highlight renderer 2024-01-15 22:54:18 +08:00
markdown_service.pb.gw.go feat: add markdown service 2023-12-17 09:53:22 +08:00
markdown_service_grpc.pb.go feat: add markdown service 2023-12-17 09:53:22 +08:00
memo_relation_service.pb.go chore: update timeline page 2023-12-21 21:24:08 +08:00
memo_service.pb.go chore: update filter in timeline 2024-01-18 08:06:59 +08:00
memo_service.pb.gw.go chore: deprecate memo creation stats legacy api 2023-12-23 18:35:47 +08:00
memo_service_grpc.pb.go chore: deprecate memo creation stats legacy api 2023-12-23 18:35:47 +08:00
README.md chore: update filter in timeline 2024-01-18 08:06:59 +08:00
resource_service.pb.go chore: use api v2 in archived page 2023-12-19 23:49:24 +08:00
resource_service.pb.gw.go chore: fix update resource api 2023-10-21 12:41:55 +08:00
resource_service_grpc.pb.go chore: update resource service 2023-10-03 23:44:14 +08:00
system_service.pb.go chore: fix update resource api 2023-10-21 12:41:55 +08:00
system_service.pb.gw.go chore: fix update resource api 2023-10-21 12:41:55 +08:00
system_service_grpc.pb.go choer: add system setting api (#2194) 2023-09-06 21:54:12 +08:00
tag_service.pb.go chore: migrate get tag suggestions 2023-11-22 22:33:02 +08:00
tag_service.pb.gw.go chore: migrate get tag suggestions 2023-11-22 22:33:02 +08:00
tag_service_grpc.pb.go chore: migrate get tag suggestions 2023-11-22 22:33:02 +08:00
user_service.pb.go chore: return username in user response 2023-12-23 19:23:39 +08:00
user_service.pb.gw.go chore: update list users 2023-12-23 08:35:54 +08:00
user_service_grpc.pb.go chore: update list users 2023-12-23 08:35:54 +08:00
webhook_service.pb.go chore: implement webhook service 2023-11-24 23:04:36 +08:00
webhook_service.pb.gw.go chore: implement webhook service 2023-11-24 23:04:36 +08:00
webhook_service_grpc.pb.go chore: implement webhook service 2023-11-24 23:04:36 +08:00

Protocol Documentation

Table of Contents

Top

api/v2/activity_service.proto

Activity

Field Type Label Description
id int32
creator_id int32
type string
level string
create_time google.protobuf.Timestamp
payload ActivityPayload

ActivityMemoCommentPayload

Field Type Label Description
memo_id int32
related_memo_id int32

ActivityPayload

Field Type Label Description
memo_comment ActivityMemoCommentPayload
version_update ActivityVersionUpdatePayload

ActivityVersionUpdatePayload

Field Type Label Description
version string

GetActivityRequest

Field Type Label Description
id int32

GetActivityResponse

Field Type Label Description
activity Activity

ActivityService

Method Name Request Type Response Type Description
GetActivity GetActivityRequest GetActivityResponse

Top

api/v2/common.proto

RowStatus

Name Number Description
ROW_STATUS_UNSPECIFIED 0
ACTIVE 1
ARCHIVED 2

Top

api/v2/user_service.proto

CreateUserAccessTokenRequest

Field Type Label Description
name string The name of the user. Format: users/{username}
description string
expires_at google.protobuf.Timestamp optional

CreateUserAccessTokenResponse

Field Type Label Description
access_token UserAccessToken

CreateUserRequest

Field Type Label Description
user User

CreateUserResponse

Field Type Label Description
user User

DeleteUserAccessTokenRequest

Field Type Label Description
name string The name of the user. Format: users/{username}
access_token string access_token is the access token to delete.

DeleteUserAccessTokenResponse

DeleteUserRequest

Field Type Label Description
name string The name of the user. Format: users/{username}

DeleteUserResponse

GetUserRequest

Field Type Label Description
name string The name of the user. Format: users/{username}

GetUserResponse

Field Type Label Description
user User

GetUserSettingRequest

Field Type Label Description
name string The name of the user. Format: users/{username}

GetUserSettingResponse

Field Type Label Description
setting UserSetting

ListUserAccessTokensRequest

Field Type Label Description
name string The name of the user. Format: users/{username}

ListUserAccessTokensResponse

Field Type Label Description
access_tokens UserAccessToken repeated

ListUsersRequest

ListUsersResponse

Field Type Label Description
users User repeated

UpdateUserRequest

Field Type Label Description
user User
update_mask google.protobuf.FieldMask

UpdateUserResponse

Field Type Label Description
user User

UpdateUserSettingRequest

Field Type Label Description
setting UserSetting
update_mask google.protobuf.FieldMask

UpdateUserSettingResponse

Field Type Label Description
setting UserSetting

User

Field Type Label Description
name string The name of the user. Format: users/{username}
id int32
role User.Role
username string
email string
nickname string
avatar_url string
password string
row_status RowStatus
create_time google.protobuf.Timestamp
update_time google.protobuf.Timestamp

UserAccessToken

Field Type Label Description
access_token string
description string
issued_at google.protobuf.Timestamp
expires_at google.protobuf.Timestamp

UserSetting

Field Type Label Description
name string The name of the user. Format: users/{username}
locale string The preferred locale of the user.
appearance string The preferred appearance of the user.
memo_visibility string The default visibility of the memo.
telegram_user_id string The telegram user id of the user.

User.Role

Name Number Description
ROLE_UNSPECIFIED 0
HOST 1
ADMIN 2
USER 3

UserService

Method Name Request Type Response Type Description
ListUsers ListUsersRequest ListUsersResponse ListUsers returns a list of users.
GetUser GetUserRequest GetUserResponse GetUser gets a user by name.
CreateUser CreateUserRequest CreateUserResponse CreateUser creates a new user.
UpdateUser UpdateUserRequest UpdateUserResponse UpdateUser updates a user.
DeleteUser DeleteUserRequest DeleteUserResponse DeleteUser deletes a user.
GetUserSetting GetUserSettingRequest GetUserSettingResponse
UpdateUserSetting UpdateUserSettingRequest UpdateUserSettingResponse
ListUserAccessTokens ListUserAccessTokensRequest ListUserAccessTokensResponse ListUserAccessTokens returns a list of access tokens for a user.
CreateUserAccessToken CreateUserAccessTokenRequest CreateUserAccessTokenResponse CreateUserAccessToken creates a new access token for a user.
DeleteUserAccessToken DeleteUserAccessTokenRequest DeleteUserAccessTokenResponse DeleteUserAccessToken deletes an access token for a user.

Top

api/v2/auth_service.proto

GetAuthStatusRequest

GetAuthStatusResponse

Field Type Label Description
user User

AuthService

Method Name Request Type Response Type Description
GetAuthStatus GetAuthStatusRequest GetAuthStatusResponse

Top

api/v2/inbox_service.proto

DeleteInboxRequest

Field Type Label Description
name string The name of the inbox to delete. Format: inboxes/{inbox}

DeleteInboxResponse

Inbox

Field Type Label Description
name string The name of the inbox. Format: inboxes/{id}
sender string Format: users/{username}
receiver string Format: users/{username}
status Inbox.Status
create_time google.protobuf.Timestamp
type Inbox.Type
activity_id int32 optional

ListInboxesRequest

Field Type Label Description
user string Format: users/{username}

ListInboxesResponse

Field Type Label Description
inboxes Inbox repeated

UpdateInboxRequest

Field Type Label Description
inbox Inbox
update_mask google.protobuf.FieldMask

UpdateInboxResponse

Field Type Label Description
inbox Inbox

Inbox.Status

Name Number Description
STATUS_UNSPECIFIED 0
UNREAD 1
ARCHIVED 2

Inbox.Type

Name Number Description
TYPE_UNSPECIFIED 0
TYPE_MEMO_COMMENT 1
TYPE_VERSION_UPDATE 2

InboxService

Method Name Request Type Response Type Description
ListInboxes ListInboxesRequest ListInboxesResponse
UpdateInbox UpdateInboxRequest UpdateInboxResponse
DeleteInbox DeleteInboxRequest DeleteInboxResponse

Top

api/v2/markdown_service.proto

AutoLinkNode

Field Type Label Description
url string
is_raw_text bool

BlockquoteNode

Field Type Label Description
children Node repeated

BoldItalicNode

Field Type Label Description
symbol string
content string

BoldNode

Field Type Label Description
symbol string
children Node repeated

CodeBlockNode

Field Type Label Description
language string
content string

CodeNode

Field Type Label Description
content string

EscapingCharacterNode

Field Type Label Description
symbol string

HeadingNode

Field Type Label Description
level int32
children Node repeated

HighlightNode

Field Type Label Description
content string

HorizontalRuleNode

Field Type Label Description
symbol string

ImageNode

Field Type Label Description
alt_text string
url string

ItalicNode

Field Type Label Description
symbol string
content string

LineBreakNode

LinkNode

Field Type Label Description
text string
url string

MathBlockNode

Field Type Label Description
content string

MathNode

Field Type Label Description
content string

Node

Field Type Label Description
type NodeType
line_break_node LineBreakNode
paragraph_node ParagraphNode
code_block_node CodeBlockNode
heading_node HeadingNode
horizontal_rule_node HorizontalRuleNode
blockquote_node BlockquoteNode
ordered_list_node OrderedListNode
unordered_list_node UnorderedListNode
task_list_node TaskListNode
math_block_node MathBlockNode
text_node TextNode
bold_node BoldNode
italic_node ItalicNode
bold_italic_node BoldItalicNode
code_node CodeNode
image_node ImageNode
link_node LinkNode
auto_link_node AutoLinkNode
tag_node TagNode
strikethrough_node StrikethroughNode
escaping_character_node EscapingCharacterNode
math_node MathNode
highlight_node HighlightNode

OrderedListNode

Field Type Label Description
number string
indent int32
children Node repeated

ParagraphNode

Field Type Label Description
children Node repeated

ParseMarkdownRequest

Field Type Label Description
markdown string

ParseMarkdownResponse

Field Type Label Description
nodes Node repeated

StrikethroughNode

Field Type Label Description
content string

TagNode

Field Type Label Description
content string

TaskListNode

Field Type Label Description
symbol string
indent int32
complete bool
children Node repeated

TextNode

Field Type Label Description
content string

UnorderedListNode

Field Type Label Description
symbol string
indent int32
children Node repeated

NodeType

Name Number Description
NODE_UNSPECIFIED 0
LINE_BREAK 1
PARAGRAPH 2
CODE_BLOCK 3
HEADING 4
HORIZONTAL_RULE 5
BLOCKQUOTE 6
ORDERED_LIST 7
UNORDERED_LIST 8
TASK_LIST 9
MATH_BLOCK 10
TEXT 11
BOLD 12
ITALIC 13
BOLD_ITALIC 14
CODE 15
IMAGE 16
LINK 17
AUTO_LINK 18
TAG 19
STRIKETHROUGH 20
ESCAPING_CHARACTER 21
MATH 22
HIGHLIGHT 23

MarkdownService

Method Name Request Type Response Type Description
ParseMarkdown ParseMarkdownRequest ParseMarkdownResponse

Top

api/v2/memo_relation_service.proto

MemoRelation

Field Type Label Description
memo_id int32
related_memo_id int32
type MemoRelation.Type

MemoRelation.Type

Name Number Description
TYPE_UNSPECIFIED 0
REFERENCE 1
COMMENT 2

Top

api/v2/resource_service.proto

CreateResourceRequest

Field Type Label Description
filename string
external_link string
type string
memo_id int32 optional

CreateResourceResponse

Field Type Label Description
resource Resource

DeleteResourceRequest

Field Type Label Description
id int32

DeleteResourceResponse

ListResourcesRequest

ListResourcesResponse

Field Type Label Description
resources Resource repeated

Resource

Field Type Label Description
id int32
create_time google.protobuf.Timestamp
filename string
external_link string
type string
size int64
memo_id int32 optional

UpdateResourceRequest

Field Type Label Description
resource Resource
update_mask google.protobuf.FieldMask

UpdateResourceResponse

Field Type Label Description
resource Resource

ResourceService

Method Name Request Type Response Type Description
CreateResource CreateResourceRequest CreateResourceResponse
ListResources ListResourcesRequest ListResourcesResponse
UpdateResource UpdateResourceRequest UpdateResourceResponse
DeleteResource DeleteResourceRequest DeleteResourceResponse

Top

api/v2/memo_service.proto

CreateMemoCommentRequest

Field Type Label Description
id int32 id is the memo id to create comment for.
create CreateMemoRequest

CreateMemoCommentResponse

Field Type Label Description
memo Memo

CreateMemoRequest

Field Type Label Description
content string
visibility Visibility

CreateMemoResponse

Field Type Label Description
memo Memo

DeleteMemoRequest

Field Type Label Description
id int32

DeleteMemoResponse

GetMemoRequest

Field Type Label Description
id int32

GetMemoResponse

Field Type Label Description
memo Memo

GetUserMemosStatsRequest

Field Type Label Description
name string name is the name of the user to get stats for. Format: users/{username}
timezone string timezone location Format: uses tz identifier https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
filter string Same as ListMemosRequest.filter

GetUserMemosStatsResponse

Field Type Label Description
stats GetUserMemosStatsResponse.StatsEntry repeated stats is the stats of memo creating/updating activities. key is the year-month-day string. e.g. "2020-01-01".

GetUserMemosStatsResponse.StatsEntry

Field Type Label Description
key string
value int32

ListMemoCommentsRequest

Field Type Label Description
id int32

ListMemoCommentsResponse

Field Type Label Description
memos Memo repeated

ListMemoRelationsRequest

Field Type Label Description
id int32

ListMemoRelationsResponse

Field Type Label Description
relations MemoRelation repeated

ListMemoResourcesRequest

Field Type Label Description
id int32

ListMemoResourcesResponse

Field Type Label Description
resources Resource repeated

ListMemosRequest

Field Type Label Description
offset int32 offset is the offset of the first memo to return.
limit int32 limit is the maximum number of memos to return.
filter string Filter is used to filter memos returned in the list. Format: "creator == users/{username} && visibilities == ['PUBLIC', 'PROTECTED']"

ListMemosResponse

Field Type Label Description
memos Memo repeated

Memo

Field Type Label Description
id int32
row_status RowStatus
creator string The name of the creator. Format: users/{username}
creator_id int32
create_time google.protobuf.Timestamp
update_time google.protobuf.Timestamp
display_time google.protobuf.Timestamp
content string
nodes Node repeated
visibility Visibility
pinned bool
parent_id int32 optional
resources Resource repeated
relations MemoRelation repeated

SetMemoRelationsRequest

Field Type Label Description
id int32
relations MemoRelation repeated

SetMemoRelationsResponse

SetMemoResourcesRequest

Field Type Label Description
id int32
resources Resource repeated

SetMemoResourcesResponse

UpdateMemoRequest

Field Type Label Description
id int32
memo Memo
update_mask google.protobuf.FieldMask

UpdateMemoResponse

Field Type Label Description
memo Memo

Visibility

Name Number Description
VISIBILITY_UNSPECIFIED 0
PRIVATE 1
PROTECTED 2
PUBLIC 3

MemoService

Method Name Request Type Response Type Description
CreateMemo CreateMemoRequest CreateMemoResponse CreateMemo creates a memo.
ListMemos ListMemosRequest ListMemosResponse ListMemos lists memos with pagination and filter.
GetMemo GetMemoRequest GetMemoResponse GetMemo gets a memo by id.
UpdateMemo UpdateMemoRequest UpdateMemoResponse UpdateMemo updates a memo.
DeleteMemo DeleteMemoRequest DeleteMemoResponse DeleteMemo deletes a memo by id.
SetMemoResources SetMemoResourcesRequest SetMemoResourcesResponse SetMemoResources sets resources for a memo.
ListMemoResources ListMemoResourcesRequest ListMemoResourcesResponse ListMemoResources lists resources for a memo.
SetMemoRelations SetMemoRelationsRequest SetMemoRelationsResponse SetMemoRelations sets relations for a memo.
ListMemoRelations ListMemoRelationsRequest ListMemoRelationsResponse ListMemoRelations lists relations for a memo.
CreateMemoComment CreateMemoCommentRequest CreateMemoCommentResponse CreateMemoComment creates a comment for a memo.
ListMemoComments ListMemoCommentsRequest ListMemoCommentsResponse ListMemoComments lists comments for a memo.
GetUserMemosStats GetUserMemosStatsRequest GetUserMemosStatsResponse GetUserMemosStats gets stats of memos for a user.

Top

api/v2/system_service.proto

GetSystemInfoRequest

GetSystemInfoResponse

Field Type Label Description
system_info SystemInfo

SystemInfo

Field Type Label Description
version string
mode string
allow_registration bool
disable_password_login bool
additional_script string
additional_style string
db_size int64

UpdateSystemInfoRequest

Field Type Label Description
system_info SystemInfo System info is the updated data.
update_mask google.protobuf.FieldMask

UpdateSystemInfoResponse

Field Type Label Description
system_info SystemInfo

SystemService

Method Name Request Type Response Type Description
GetSystemInfo GetSystemInfoRequest GetSystemInfoResponse
UpdateSystemInfo UpdateSystemInfoRequest UpdateSystemInfoResponse

Top

api/v2/tag_service.proto

DeleteTagRequest

Field Type Label Description
tag Tag

DeleteTagResponse

GetTagSuggestionsRequest

Field Type Label Description
user string The creator of tags. Format: users/{username}

GetTagSuggestionsResponse

Field Type Label Description
tags string repeated

ListTagsRequest

Field Type Label Description
user string The creator of tags. Format: users/{username}

ListTagsResponse

Field Type Label Description
tags Tag repeated

Tag

Field Type Label Description
name string
creator string The creator of tags. Format: users/{username}

UpsertTagRequest

Field Type Label Description
name string

UpsertTagResponse

Field Type Label Description
tag Tag

TagService

Method Name Request Type Response Type Description
UpsertTag UpsertTagRequest UpsertTagResponse
ListTags ListTagsRequest ListTagsResponse
DeleteTag DeleteTagRequest DeleteTagResponse
GetTagSuggestions GetTagSuggestionsRequest GetTagSuggestionsResponse

Top

api/v2/webhook_service.proto

CreateWebhookRequest

Field Type Label Description
name string
url string

CreateWebhookResponse

Field Type Label Description
webhook Webhook

DeleteWebhookRequest

Field Type Label Description
id int32

DeleteWebhookResponse

GetWebhookRequest

Field Type Label Description
id int32

GetWebhookResponse

Field Type Label Description
webhook Webhook

ListWebhooksRequest

Field Type Label Description
creator_id int32

ListWebhooksResponse

Field Type Label Description
webhooks Webhook repeated

UpdateWebhookRequest

Field Type Label Description
webhook Webhook
update_mask google.protobuf.FieldMask

UpdateWebhookResponse

Field Type Label Description
webhook Webhook

Webhook

Field Type Label Description
id int32
creator_id int32
created_time google.protobuf.Timestamp
updated_time google.protobuf.Timestamp
row_status RowStatus
name string
url string

WebhookService

Method Name Request Type Response Type Description
CreateWebhook CreateWebhookRequest CreateWebhookResponse
GetWebhook GetWebhookRequest GetWebhookResponse
ListWebhooks ListWebhooksRequest ListWebhooksResponse
UpdateWebhook UpdateWebhookRequest UpdateWebhookResponse
DeleteWebhook DeleteWebhookRequest DeleteWebhookResponse

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)