Protocol Documentation

Table of Contents

Top

api/v2/common.proto

RowStatus

Name Number Description
ROW_STATUS_UNSPECIFIED 0
NORMAL 1
ARCHIVED 2

Top

api/v2/shortcut_service.proto

CreateShortcutRequest

Field Type Label Description
shortcut Shortcut

CreateShortcutResponse

Field Type Label Description
shortcut Shortcut

GetShortcutRequest

Field Type Label Description
name string

GetShortcutResponse

Field Type Label Description
shortcut Shortcut

ListShortcutsRequest

ListShortcutsResponse

Field Type Label Description
shortcuts Shortcut repeated

OpenGraphMetadata

Field Type Label Description
title string
description string
image string

Shortcut

Field Type Label Description
id int32
creator_id int32
created_ts int64
updated_ts int64
row_status RowStatus
name string
link string
title string
tags string repeated
description string
visibility Visibility
og_metadata OpenGraphMetadata

Visibility

Name Number Description
VISIBILITY_UNSPECIFIED 0
PRIVATE 1
WORKSPACE 2
PUBLIC 3

ShortcutService

Method Name Request Type Response Type Description
ListShortcuts ListShortcutsRequest ListShortcutsResponse ListShortcuts returns a list of shortcuts.
GetShortcut GetShortcutRequest GetShortcutResponse GetShortcut returns a shortcut by name.
CreateShortcut CreateShortcutRequest CreateShortcutResponse CreateShortcut creates a shortcut.

Top

api/v2/user_service.proto

CreateUserAccessTokenRequest

Field Type Label Description
id int32 id is the user id.
user_access_token UserAccessToken

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
id int32 id is the user id.
access_token string access_token is the access token to delete.

DeleteUserAccessTokenResponse

DeleteUserRequest

Field Type Label Description
id int32

DeleteUserResponse

GetUserRequest

Field Type Label Description
id int32

GetUserResponse

Field Type Label Description
user User

ListUserAccessTokensRequest

Field Type Label Description
id int32 id is the user id.

ListUserAccessTokensResponse

Field Type Label Description
access_tokens UserAccessToken repeated

ListUsersRequest

ListUsersResponse

Field Type Label Description
users User repeated

User

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

UserAccessToken

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

Role

Name Number Description
ROLE_UNSPECIFIED 0
ADMIN 1
USER 2

UserService

Method Name Request Type Response Type Description
ListUsers ListUsersRequest ListUsersResponse ListUsers returns a list of users.
GetUser GetUserRequest GetUserResponse GetUser returns a user by id.
CreateUser CreateUserRequest CreateUserResponse CreateUser creates a new user.
DeleteUser DeleteUserRequest DeleteUserResponse DeleteUser deletes a user by id.
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.

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)