mirror of
https://github.com/aykhans/slash-e.git
synced 2025-10-23 21:40:57 +00:00
Protocol Documentation
Table of Contents
api/v2/common.proto
RowStatus
| Name | Number | Description |
|---|---|---|
| ROW_STATUS_UNSPECIFIED | 0 | |
| NORMAL | 1 | |
| ARCHIVED | 2 |
api/v2/shortcut_service.proto
CreateShortcutRequest
| Field | Type | Label | Description |
|---|---|---|---|
| shortcut | Shortcut |
CreateShortcutResponse
| Field | Type | Label | Description |
|---|---|---|---|
| shortcut | Shortcut |
DeleteShortcutRequest
| Field | Type | Label | Description |
|---|---|---|---|
| id | int32 |
DeleteShortcutResponse
GetShortcutRequest
| Field | Type | Label | Description |
|---|---|---|---|
| id | int32 |
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_time | google.protobuf.Timestamp | ||
| updated_time | google.protobuf.Timestamp | ||
| row_status | RowStatus | ||
| name | string | ||
| link | string | ||
| title | string | ||
| tags | string | repeated | |
| description | string | ||
| visibility | Visibility | ||
| view_count | int32 | ||
| og_metadata | OpenGraphMetadata |
UpdateShortcutRequest
| Field | Type | Label | Description |
|---|---|---|---|
| shortcut | Shortcut | ||
| update_mask | google.protobuf.FieldMask |
UpdateShortcutResponse
| Field | Type | Label | Description |
|---|---|---|---|
| shortcut | Shortcut |
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. |
| UpdateShortcut | UpdateShortcutRequest | UpdateShortcutResponse | UpdateShortcut updates a shortcut. |
| DeleteShortcut | DeleteShortcutRequest | DeleteShortcutResponse | DeleteShortcut deletes a shortcut by name. |
api/v2/subscription_service.proto
GetSubscriptionRequest
GetSubscriptionResponse
| Field | Type | Label | Description |
|---|---|---|---|
| subscription | Subscription |
Subscription
| Field | Type | Label | Description |
|---|---|---|---|
| plan | PlanType | ||
| started_time | google.protobuf.Timestamp | ||
| expires_time | google.protobuf.Timestamp |
UpdateSubscriptionRequest
| Field | Type | Label | Description |
|---|---|---|---|
| license_key | string |
UpdateSubscriptionResponse
| Field | Type | Label | Description |
|---|---|---|---|
| subscription | Subscription |
PlanType
| Name | Number | Description |
|---|---|---|
| PLAN_TYPE_UNSPECIFIED | 0 | |
| FREE | 1 | |
| PRO | 2 |
SubscriptionService
| Method Name | Request Type | Response Type | Description |
|---|---|---|---|
| GetSubscription | GetSubscriptionRequest | GetSubscriptionResponse | |
| UpdateSubscription | UpdateSubscriptionRequest | UpdateSubscriptionResponse |
api/v2/user_service.proto
CreateUserAccessTokenRequest
| Field | Type | Label | Description |
|---|---|---|---|
| id | int32 | id is the user id. | |
| description | string | description is the description of the access token. | |
| expires_at | google.protobuf.Timestamp | optional | expires_at is the expiration time of the access token. If expires_at is not set, the access token will never expire. |
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 |
UpdateUserRequest
| Field | Type | Label | Description |
|---|---|---|---|
| user | User | ||
| update_mask | google.protobuf.FieldMask |
UpdateUserResponse
| Field | Type | Label | Description |
|---|---|---|---|
| user | User |
User
| Field | Type | Label | Description |
|---|---|---|---|
| id | int32 | ||
| row_status | RowStatus | ||
| created_time | google.protobuf.Timestamp | ||
| updated_time | google.protobuf.Timestamp | ||
| role | Role | ||
| 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. |
| UpdateUser | UpdateUserRequest | UpdateUserResponse | |
| 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. |
api/v2/user_setting_service.proto
GetUserSettingRequest
| Field | Type | Label | Description |
|---|---|---|---|
| id | int32 | id is the user id. |
GetUserSettingResponse
| Field | Type | Label | Description |
|---|---|---|---|
| user_setting | UserSetting |
UpdateUserSettingRequest
| Field | Type | Label | Description |
|---|---|---|---|
| id | int32 | id is the user id. | |
| user_setting | UserSetting | user_setting is the user setting to update. | |
| update_mask | google.protobuf.FieldMask | update_mask is the field mask to update. |
UpdateUserSettingResponse
| Field | Type | Label | Description |
|---|---|---|---|
| user_setting | UserSetting |
UserSetting
| Field | Type | Label | Description |
|---|---|---|---|
| id | int32 | id is the user id. | |
| locale | UserSetting.Locale | locale is the user locale. | |
| color_theme | UserSetting.ColorTheme | color_theme is the user color theme. |
UserSetting.ColorTheme
| Name | Number | Description |
|---|---|---|
| COLOR_THEME_UNSPECIFIED | 0 | |
| COLOR_THEME_SYSTEM | 1 | |
| COLOR_THEME_LIGHT | 2 | |
| COLOR_THEME_DARK | 3 |
UserSetting.Locale
| Name | Number | Description |
|---|---|---|
| LOCALE_UNSPECIFIED | 0 | |
| LOCALE_EN | 1 | |
| LOCALE_ZH | 2 |
UserSettingService
| Method Name | Request Type | Response Type | Description |
|---|---|---|---|
| GetUserSetting | GetUserSettingRequest | GetUserSettingResponse | GetUserSetting returns the user setting. |
| UpdateUserSetting | UpdateUserSettingRequest | UpdateUserSettingResponse | UpdateUserSetting updates the user setting. |
api/v2/workspace_service.proto
AutoBackupWorkspaceSetting
| Field | Type | Label | Description |
|---|---|---|---|
| enabled | bool | Whether auto backup is enabled. | |
| cron_expression | string | The cron expression for auto backup. For example, "0 0 0 * * *" means backup at 00:00:00 every day. See https://en.wikipedia.org/wiki/Cron for more details. | |
| max_keep | int32 | The maximum number of backups to keep. |
GetWorkspaceProfileRequest
GetWorkspaceProfileResponse
| Field | Type | Label | Description |
|---|---|---|---|
| profile | WorkspaceProfile | The workspace profile. |
GetWorkspaceSettingRequest
GetWorkspaceSettingResponse
| Field | Type | Label | Description |
|---|---|---|---|
| setting | WorkspaceSetting | The user setting. |
UpdateWorkspaceSettingRequest
| Field | Type | Label | Description |
|---|---|---|---|
| setting | WorkspaceSetting | The user setting. | |
| update_mask | google.protobuf.FieldMask | The update mask. |
UpdateWorkspaceSettingResponse
| Field | Type | Label | Description |
|---|---|---|---|
| setting | WorkspaceSetting | The user setting. |
WorkspaceProfile
| Field | Type | Label | Description |
|---|---|---|---|
| mode | string | Current workspace mode: dev, prod. | |
| plan | PlanType | The workspace plan. | |
| enable_signup | bool | Whether to enable other users to sign up. | |
| custom_style | string | The custom style. | |
| custom_script | string | The custom script. |
WorkspaceSetting
| Field | Type | Label | Description |
|---|---|---|---|
| license_key | string | ||
| enable_signup | bool | Whether to enable other users to sign up. | |
| custom_style | string | The custom style. | |
| custom_script | string | The custom script. | |
| auto_backup | AutoBackupWorkspaceSetting | The auto backup setting. |
WorkspaceService
| Method Name | Request Type | Response Type | Description |
|---|---|---|---|
| GetWorkspaceProfile | GetWorkspaceProfileRequest | GetWorkspaceProfileResponse | |
| GetWorkspaceSetting | GetWorkspaceSettingRequest | GetWorkspaceSettingResponse | |
| UpdateWorkspaceSetting | UpdateWorkspaceSettingRequest | UpdateWorkspaceSettingResponse |
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) |