memos/server/route/api/v2/apidocs.swagger.yaml
2024-03-16 23:35:36 +08:00

2281 lines
60 KiB
YAML

swagger: "2.0"
info:
title: api/v2/activity_service.proto
version: version not set
tags:
- name: ActivityService
- name: UserService
- name: AuthService
- name: InboxService
- name: LinkService
- name: ResourceService
- name: MemoService
- name: TagService
- name: WebhookService
- name: WorkspaceService
- name: WorkspaceSettingService
consumes:
- application/json
produces:
- application/json
paths:
/api/v2/auth/signin:
post:
summary: SignIn signs in the user with the given username and password.
operationId: AuthService_SignIn
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2SignInResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: username
in: query
required: false
type: string
- name: password
in: query
required: false
type: string
- name: neverExpire
in: query
required: false
type: boolean
tags:
- AuthService
/api/v2/auth/signin/sso:
post:
summary: SignInWithSSO signs in the user with the given SSO code.
operationId: AuthService_SignInWithSSO
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2SignInWithSSOResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: idpId
in: query
required: false
type: integer
format: int32
- name: code
in: query
required: false
type: string
- name: redirectUri
in: query
required: false
type: string
tags:
- AuthService
/api/v2/auth/signout:
post:
summary: SignOut signs out the user.
operationId: AuthService_SignOut
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2SignOutResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
tags:
- AuthService
/api/v2/auth/signup:
post:
summary: SignUp signs up the user with the given username and password.
operationId: AuthService_SignUp
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2SignUpResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: username
in: query
required: false
type: string
- name: password
in: query
required: false
type: string
tags:
- AuthService
/api/v2/auth/status:
post:
summary: GetAuthStatus returns the current auth status of the user.
operationId: AuthService_GetAuthStatus
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2GetAuthStatusResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
tags:
- AuthService
/api/v2/inboxes:
get:
summary: ListInboxes lists inboxes for a user.
operationId: InboxService_ListInboxes
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2ListInboxesResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: user
description: 'Format: users/{username}'
in: query
required: false
type: string
tags:
- InboxService
/api/v2/link_metadata:
get:
operationId: LinkService_GetLinkMetadata
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2GetLinkMetadataResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: link
in: query
required: false
type: string
tags:
- LinkService
/api/v2/memos:
get:
summary: ListMemos lists memos with pagination and filter.
operationId: MemoService_ListMemos
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2ListMemosResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: pageSize
description: The maximum number of memos to return.
in: query
required: false
type: integer
format: int32
- name: pageToken
description: |-
A page token, received from a previous `ListMemos` call.
Provide this to retrieve the subsequent page.
in: query
required: false
type: string
- name: filter
description: |-
Filter is used to filter memos returned in the list.
Format: "creator == users/{username} && visibilities == ['PUBLIC', 'PROTECTED']"
in: query
required: false
type: string
tags:
- MemoService
post:
summary: CreateMemo creates a memo.
operationId: MemoService_CreateMemo
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2CreateMemoResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: body
in: body
required: true
schema:
$ref: '#/definitions/v2CreateMemoRequest'
tags:
- MemoService
/api/v2/memos/name/{name}:
get:
summary: GetMemoByName gets a memo by name.
operationId: MemoService_GetMemoByName
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2GetMemoByNameResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: name
in: path
required: true
type: string
tags:
- MemoService
/api/v2/memos/stats:
get:
summary: GetUserMemosStats gets stats of memos for a user.
operationId: MemoService_GetUserMemosStats
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2GetUserMemosStatsResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: name
description: |-
name is the name of the user to get stats for.
Format: users/{username}
in: query
required: false
type: string
- name: timezone
description: |-
timezone location
Format: uses tz identifier
https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
in: query
required: false
type: string
- name: filter
description: Same as ListMemosRequest.filter
in: query
required: false
type: string
tags:
- MemoService
/api/v2/memos/{id}:
get:
summary: GetMemo gets a memo by id.
operationId: MemoService_GetMemo
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2GetMemoResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: id
in: path
required: true
type: integer
format: int32
tags:
- MemoService
delete:
summary: DeleteMemo deletes a memo by id.
operationId: MemoService_DeleteMemo
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2DeleteMemoResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: id
in: path
required: true
type: integer
format: int32
tags:
- MemoService
/api/v2/memos/{id}/comments:
get:
summary: ListMemoComments lists comments for a memo.
operationId: MemoService_ListMemoComments
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2ListMemoCommentsResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: id
in: path
required: true
type: integer
format: int32
tags:
- MemoService
post:
summary: CreateMemoComment creates a comment for a memo.
operationId: MemoService_CreateMemoComment
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2CreateMemoCommentResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: id
description: id is the memo id to create comment for.
in: path
required: true
type: integer
format: int32
- name: create.content
in: query
required: false
type: string
- name: create.visibility
in: query
required: false
type: string
enum:
- VISIBILITY_UNSPECIFIED
- PRIVATE
- PROTECTED
- PUBLIC
default: VISIBILITY_UNSPECIFIED
tags:
- MemoService
/api/v2/memos/{id}/reactions:
get:
summary: ListMemoReactions lists reactions for a memo.
operationId: MemoService_ListMemoReactions
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2ListMemoReactionsResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: id
in: path
required: true
type: integer
format: int32
tags:
- MemoService
post:
summary: UpsertMemoReaction upserts a reaction for a memo.
operationId: MemoService_UpsertMemoReaction
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2UpsertMemoReactionResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: id
in: path
required: true
type: integer
format: int32
- name: reaction.id
in: query
required: false
type: integer
format: int32
- name: reaction.creator
in: query
required: false
type: string
- name: reaction.contentId
in: query
required: false
type: string
- name: reaction.reactionType
in: query
required: false
type: string
enum:
- TYPE_UNSPECIFIED
- THUMBS_UP
- THUMBS_DOWN
- HEART
- FIRE
- CLAPPING_HANDS
- LAUGH
- OK_HAND
- ROCKET
- EYES
- THINKING_FACE
- CLOWN_FACE
- QUESTION_MARK
default: TYPE_UNSPECIFIED
tags:
- MemoService
/api/v2/memos/{id}/reactions/{reactionId}:
delete:
summary: DeleteMemoReaction deletes a reaction for a memo.
operationId: MemoService_DeleteMemoReaction
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2DeleteMemoReactionResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: id
in: path
required: true
type: integer
format: int32
- name: reactionId
in: path
required: true
type: integer
format: int32
tags:
- MemoService
/api/v2/memos/{id}/relations:
get:
summary: ListMemoRelations lists relations for a memo.
operationId: MemoService_ListMemoRelations
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2ListMemoRelationsResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: id
in: path
required: true
type: integer
format: int32
tags:
- MemoService
post:
summary: SetMemoRelations sets relations for a memo.
operationId: MemoService_SetMemoRelations
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2SetMemoRelationsResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: id
in: path
required: true
type: integer
format: int32
- name: body
in: body
required: true
schema:
$ref: '#/definitions/MemoServiceSetMemoRelationsBody'
tags:
- MemoService
/api/v2/memos/{id}/resources:
get:
summary: ListMemoResources lists resources for a memo.
operationId: MemoService_ListMemoResources
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2ListMemoResourcesResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: id
in: path
required: true
type: integer
format: int32
tags:
- MemoService
post:
summary: SetMemoResources sets resources for a memo.
operationId: MemoService_SetMemoResources
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2SetMemoResourcesResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: id
in: path
required: true
type: integer
format: int32
- name: body
in: body
required: true
schema:
$ref: '#/definitions/MemoServiceSetMemoResourcesBody'
tags:
- MemoService
/api/v2/memos/{memo.id}:
patch:
summary: UpdateMemo updates a memo.
operationId: MemoService_UpdateMemo
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2UpdateMemoResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: memo.id
description: id is the system generated unique identifier.
in: path
required: true
type: integer
format: int32
- name: memo
in: body
required: true
schema:
type: object
properties:
name:
type: string
description: name is the user provided name.
rowStatus:
$ref: '#/definitions/apiv2RowStatus'
creator:
type: string
title: |-
The name of the creator.
Format: users/{username}
creatorId:
type: integer
format: int32
createTime:
type: string
format: date-time
updateTime:
type: string
format: date-time
displayTime:
type: string
format: date-time
content:
type: string
visibility:
$ref: '#/definitions/v2Visibility'
pinned:
type: boolean
parentId:
type: integer
format: int32
readOnly: true
resources:
type: array
items:
type: object
$ref: '#/definitions/v2Resource'
readOnly: true
relations:
type: array
items:
type: object
$ref: '#/definitions/v2MemoRelation'
readOnly: true
reactions:
type: array
items:
type: object
$ref: '#/definitions/apiv2Reaction'
readOnly: true
tags:
- MemoService
/api/v2/memos:export:
post:
summary: ExportMemos exports memos.
operationId: MemoService_ExportMemos
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2ExportMemosResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: filter
description: Same as ListMemosRequest.filter
in: query
required: false
type: string
tags:
- MemoService
/api/v2/resources:
get:
summary: ListResources lists all resources.
operationId: ResourceService_ListResources
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2ListResourcesResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
tags:
- ResourceService
post:
summary: CreateResource creates a new resource.
operationId: ResourceService_CreateResource
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2CreateResourceResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: filename
in: query
required: false
type: string
- name: externalLink
in: query
required: false
type: string
- name: type
in: query
required: false
type: string
- name: memoId
in: query
required: false
type: integer
format: int32
tags:
- ResourceService
/api/v2/resources/name/{name}:
get:
summary: GetResourceByName returns a resource by name.
operationId: ResourceService_GetResourceByName
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2GetResourceByNameResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: name
in: path
required: true
type: string
tags:
- ResourceService
/api/v2/resources/{id}:
get:
summary: GetResource returns a resource by id.
operationId: ResourceService_GetResource
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2GetResourceResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: id
in: path
required: true
type: integer
format: int32
tags:
- ResourceService
delete:
summary: DeleteResource deletes a resource by id.
operationId: ResourceService_DeleteResource
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2DeleteResourceResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: id
in: path
required: true
type: integer
format: int32
tags:
- ResourceService
/api/v2/resources/{resource.id}:
patch:
summary: UpdateResource updates a resource.
operationId: ResourceService_UpdateResource
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2UpdateResourceResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: resource.id
description: id is the system generated unique identifier.
in: path
required: true
type: integer
format: int32
- name: resource
in: body
required: true
schema:
type: object
properties:
name:
type: string
description: name is the user provided name.
createTime:
type: string
format: date-time
filename:
type: string
externalLink:
type: string
type:
type: string
size:
type: string
format: int64
memoId:
type: integer
format: int32
tags:
- ResourceService
/api/v2/tags:
get:
summary: ListTags lists tags.
operationId: TagService_ListTags
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2ListTagsResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: user
description: |-
The creator of tags.
Format: users/{username}
in: query
required: false
type: string
tags:
- TagService
delete:
summary: DeleteTag deletes a tag.
operationId: TagService_DeleteTag
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2DeleteTagResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: tag.name
in: query
required: false
type: string
- name: tag.creator
description: |-
The creator of tags.
Format: users/{username}
in: query
required: false
type: string
tags:
- TagService
post:
summary: UpsertTag upserts a tag.
operationId: TagService_UpsertTag
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2UpsertTagResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: name
in: query
required: false
type: string
tags:
- TagService
/api/v2/tags/suggestion:
get:
summary: GetTagSuggestions gets tag suggestions from the user's memos.
operationId: TagService_GetTagSuggestions
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2GetTagSuggestionsResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: user
description: |-
The creator of tags.
Format: users/{username}
in: query
required: false
type: string
tags:
- TagService
/api/v2/tags:batchUpsert:
post:
summary: BatchUpsertTag upserts multiple tags.
operationId: TagService_BatchUpsertTag
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2BatchUpsertTagResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
tags:
- TagService
/api/v2/tags:rename:
patch:
summary: |-
RenameTag renames a tag.
All related memos will be updated.
operationId: TagService_RenameTag
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2RenameTagResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: user
description: |-
The creator of tags.
Format: users/{username}
in: query
required: false
type: string
- name: oldName
in: query
required: false
type: string
- name: newName
in: query
required: false
type: string
tags:
- TagService
/api/v2/users:
get:
summary: ListUsers returns a list of users.
operationId: UserService_ListUsers
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2ListUsersResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
tags:
- UserService
post:
summary: CreateUser creates a new user.
operationId: UserService_CreateUser
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2CreateUserResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: user
in: body
required: true
schema:
$ref: '#/definitions/v2User'
tags:
- UserService
/api/v2/webhooks:
get:
summary: ListWebhooks returns a list of webhooks.
operationId: WebhookService_ListWebhooks
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2ListWebhooksResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: creatorId
in: query
required: false
type: integer
format: int32
tags:
- WebhookService
post:
summary: CreateWebhook creates a new webhook.
operationId: WebhookService_CreateWebhook
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2CreateWebhookResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: body
in: body
required: true
schema:
$ref: '#/definitions/v2CreateWebhookRequest'
tags:
- WebhookService
/api/v2/webhooks/{id}:
get:
summary: GetWebhook returns a webhook by id.
operationId: WebhookService_GetWebhook
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2GetWebhookResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: id
in: path
required: true
type: integer
format: int32
tags:
- WebhookService
delete:
summary: DeleteWebhook deletes a webhook by id.
operationId: WebhookService_DeleteWebhook
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2DeleteWebhookResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: id
in: path
required: true
type: integer
format: int32
tags:
- WebhookService
/api/v2/webhooks/{webhook.id}:
patch:
summary: UpdateWebhook updates a webhook.
operationId: WebhookService_UpdateWebhook
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2UpdateWebhookResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: webhook.id
in: path
required: true
type: integer
format: int32
- name: webhook
in: body
required: true
schema:
type: object
properties:
creatorId:
type: integer
format: int32
createdTime:
type: string
format: date-time
updatedTime:
type: string
format: date-time
rowStatus:
$ref: '#/definitions/apiv2RowStatus'
name:
type: string
url:
type: string
tags:
- WebhookService
/api/v2/workspace/profile:
get:
summary: GetWorkspaceProfile returns the workspace profile.
operationId: WorkspaceService_GetWorkspaceProfile
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2GetWorkspaceProfileResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
tags:
- WorkspaceService
/api/v2/workspace/{name}:
get:
summary: GetWorkspaceSetting returns the setting by name.
operationId: WorkspaceSettingService_GetWorkspaceSetting
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2GetWorkspaceSettingResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: name
description: |-
The resource name of the workspace setting.
Format: settings/{setting}
in: path
required: true
type: string
pattern: settings/[^/]+
tags:
- WorkspaceSettingService
/api/v2/workspace/{setting.name}:
patch:
summary: SetWorkspaceSetting updates the setting.
operationId: WorkspaceSettingService_SetWorkspaceSetting
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2SetWorkspaceSettingResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: setting.name
description: |-
name is the name of the setting.
Format: settings/{setting}
in: path
required: true
type: string
pattern: settings/[^/]+
- name: setting
description: setting is the setting to update.
in: body
required: true
schema:
type: object
properties:
generalSetting:
$ref: '#/definitions/apiv2WorkspaceGeneralSetting'
description: general_setting is the general setting of workspace.
title: setting is the setting to update.
tags:
- WorkspaceSettingService
/api/v2/{inbox.name}:
patch:
summary: UpdateInbox updates an inbox.
operationId: InboxService_UpdateInbox
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2UpdateInboxResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: inbox.name
description: |-
The name of the inbox.
Format: inboxes/{uid}
in: path
required: true
type: string
pattern: inboxes/[^/]+
- name: inbox
in: body
required: true
schema:
type: object
properties:
sender:
type: string
title: 'Format: users/{username}'
receiver:
type: string
title: 'Format: users/{username}'
status:
$ref: '#/definitions/v2InboxStatus'
createTime:
type: string
format: date-time
type:
$ref: '#/definitions/v2InboxType'
activityId:
type: integer
format: int32
tags:
- InboxService
/api/v2/{name_1}:
delete:
summary: DeleteInbox deletes an inbox.
operationId: InboxService_DeleteInbox
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2DeleteInboxResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: name_1
description: |-
The name of the inbox to delete.
Format: inboxes/{uid}
in: path
required: true
type: string
pattern: inboxes/[^/]+
tags:
- InboxService
/api/v2/{name}:
get:
summary: GetUser gets a user by name.
operationId: UserService_GetUser
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2GetUserResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: name
description: |-
The name of the user.
Format: users/{username}
in: path
required: true
type: string
pattern: users/[^/]+
tags:
- UserService
delete:
summary: DeleteUser deletes a user.
operationId: UserService_DeleteUser
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2DeleteUserResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: name
description: |-
The name of the user.
Format: users/{username}
in: path
required: true
type: string
pattern: users/[^/]+
tags:
- UserService
/api/v2/{name}/access_tokens:
get:
summary: ListUserAccessTokens returns a list of access tokens for a user.
operationId: UserService_ListUserAccessTokens
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2ListUserAccessTokensResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: name
description: |-
The name of the user.
Format: users/{username}
in: path
required: true
type: string
pattern: users/[^/]+
tags:
- UserService
post:
summary: CreateUserAccessToken creates a new access token for a user.
operationId: UserService_CreateUserAccessToken
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2CreateUserAccessTokenResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: name
description: |-
The name of the user.
Format: users/{username}
in: path
required: true
type: string
pattern: users/[^/]+
- name: body
in: body
required: true
schema:
$ref: '#/definitions/UserServiceCreateUserAccessTokenBody'
tags:
- UserService
/api/v2/{name}/access_tokens/{accessToken}:
delete:
summary: DeleteUserAccessToken deletes an access token for a user.
operationId: UserService_DeleteUserAccessToken
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2DeleteUserAccessTokenResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: name
description: |-
The name of the user.
Format: users/{username}
in: path
required: true
type: string
pattern: users/[^/]+
- name: accessToken
description: access_token is the access token to delete.
in: path
required: true
type: string
tags:
- UserService
/api/v2/{name}/setting:
get:
summary: GetUserSetting gets the setting of a user.
operationId: UserService_GetUserSetting
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2GetUserSettingResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: name
description: |-
The name of the user.
Format: users/{username}
in: path
required: true
type: string
pattern: users/[^/]+
tags:
- UserService
/api/v2/{setting.name}:
patch:
summary: UpdateUserSetting updates the setting of a user.
operationId: UserService_UpdateUserSetting
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2UpdateUserSettingResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: setting.name
description: |-
The name of the user.
Format: users/{username}
in: path
required: true
type: string
pattern: users/[^/]+/setting
- name: setting
in: body
required: true
schema:
type: object
properties:
locale:
type: string
description: The preferred locale of the user.
appearance:
type: string
description: The preferred appearance of the user.
memoVisibility:
type: string
description: The default visibility of the memo.
telegramUserId:
type: string
description: The telegram user id of the user.
tags:
- UserService
/api/v2/{user.name}:
patch:
summary: UpdateUser updates a user.
operationId: UserService_UpdateUser
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2UpdateUserResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: user.name
description: |-
The name of the user.
Format: users/{username}
in: path
required: true
type: string
pattern: users/[^/]+
- name: user
in: body
required: true
schema:
type: object
properties:
id:
type: integer
format: int32
role:
$ref: '#/definitions/UserRole'
username:
type: string
email:
type: string
nickname:
type: string
avatarUrl:
type: string
description:
type: string
password:
type: string
rowStatus:
$ref: '#/definitions/apiv2RowStatus'
createTime:
type: string
format: date-time
updateTime:
type: string
format: date-time
tags:
- UserService
/v2/activities/{id}:
get:
summary: GetActivity returns the activity with the given id.
operationId: ActivityService_GetActivity
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v2GetActivityResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: id
in: path
required: true
type: integer
format: int32
tags:
- ActivityService
definitions:
MemoServiceSetMemoRelationsBody:
type: object
properties:
relations:
type: array
items:
type: object
$ref: '#/definitions/v2MemoRelation'
MemoServiceSetMemoResourcesBody:
type: object
properties:
resources:
type: array
items:
type: object
$ref: '#/definitions/v2Resource'
UserRole:
type: string
enum:
- ROLE_UNSPECIFIED
- HOST
- ADMIN
- USER
default: ROLE_UNSPECIFIED
UserServiceCreateUserAccessTokenBody:
type: object
properties:
description:
type: string
expiresAt:
type: string
format: date-time
apiv2ActivityMemoCommentPayload:
type: object
properties:
memoId:
type: integer
format: int32
relatedMemoId:
type: integer
format: int32
apiv2ActivityPayload:
type: object
properties:
memoComment:
$ref: '#/definitions/apiv2ActivityMemoCommentPayload'
versionUpdate:
$ref: '#/definitions/apiv2ActivityVersionUpdatePayload'
apiv2ActivityVersionUpdatePayload:
type: object
properties:
version:
type: string
apiv2Reaction:
type: object
properties:
id:
type: integer
format: int32
creator:
type: string
contentId:
type: string
reactionType:
$ref: '#/definitions/apiv2ReactionType'
apiv2ReactionType:
type: string
enum:
- TYPE_UNSPECIFIED
- THUMBS_UP
- THUMBS_DOWN
- HEART
- FIRE
- CLAPPING_HANDS
- LAUGH
- OK_HAND
- ROCKET
- EYES
- THINKING_FACE
- CLOWN_FACE
- QUESTION_MARK
default: TYPE_UNSPECIFIED
apiv2RowStatus:
type: string
enum:
- ROW_STATUS_UNSPECIFIED
- ACTIVE
- ARCHIVED
default: ROW_STATUS_UNSPECIFIED
apiv2UserSetting:
type: object
properties:
name:
type: string
title: |-
The name of the user.
Format: users/{username}
locale:
type: string
description: The preferred locale of the user.
appearance:
type: string
description: The preferred appearance of the user.
memoVisibility:
type: string
description: The default visibility of the memo.
telegramUserId:
type: string
description: The telegram user id of the user.
apiv2Webhook:
type: object
properties:
id:
type: integer
format: int32
creatorId:
type: integer
format: int32
createdTime:
type: string
format: date-time
updatedTime:
type: string
format: date-time
rowStatus:
$ref: '#/definitions/apiv2RowStatus'
name:
type: string
url:
type: string
apiv2WorkspaceGeneralSetting:
type: object
properties:
instanceUrl:
type: string
description: instance_url is the instance URL.
disallowSignup:
type: boolean
description: disallow_signup is the flag to disallow signup.
disallowPasswordLogin:
type: boolean
description: disallow_password_login is the flag to disallow password login.
additionalScript:
type: string
description: additional_script is the additional script.
additionalStyle:
type: string
description: additional_style is the additional style.
apiv2WorkspaceSetting:
type: object
properties:
name:
type: string
title: |-
name is the name of the setting.
Format: settings/{setting}
generalSetting:
$ref: '#/definitions/apiv2WorkspaceGeneralSetting'
description: general_setting is the general setting of workspace.
googlerpcStatus:
type: object
properties:
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
$ref: '#/definitions/protobufAny'
protobufAny:
type: object
properties:
'@type':
type: string
additionalProperties: {}
v2Activity:
type: object
properties:
id:
type: integer
format: int32
creatorId:
type: integer
format: int32
type:
type: string
level:
type: string
createTime:
type: string
format: date-time
payload:
$ref: '#/definitions/apiv2ActivityPayload'
v2BatchUpsertTagResponse:
type: object
v2CreateMemoCommentResponse:
type: object
properties:
memo:
$ref: '#/definitions/v2Memo'
v2CreateMemoRequest:
type: object
properties:
content:
type: string
visibility:
$ref: '#/definitions/v2Visibility'
v2CreateMemoResponse:
type: object
properties:
memo:
$ref: '#/definitions/v2Memo'
v2CreateResourceResponse:
type: object
properties:
resource:
$ref: '#/definitions/v2Resource'
v2CreateUserAccessTokenResponse:
type: object
properties:
accessToken:
$ref: '#/definitions/v2UserAccessToken'
v2CreateUserResponse:
type: object
properties:
user:
$ref: '#/definitions/v2User'
v2CreateWebhookRequest:
type: object
properties:
name:
type: string
url:
type: string
v2CreateWebhookResponse:
type: object
properties:
webhook:
$ref: '#/definitions/apiv2Webhook'
v2DeleteInboxResponse:
type: object
v2DeleteMemoReactionResponse:
type: object
v2DeleteMemoResponse:
type: object
v2DeleteResourceResponse:
type: object
v2DeleteTagResponse:
type: object
v2DeleteUserAccessTokenResponse:
type: object
v2DeleteUserResponse:
type: object
v2DeleteWebhookResponse:
type: object
v2ExportMemosResponse:
type: object
properties:
content:
type: string
format: byte
v2GetActivityResponse:
type: object
properties:
activity:
$ref: '#/definitions/v2Activity'
v2GetAuthStatusResponse:
type: object
properties:
user:
$ref: '#/definitions/v2User'
v2GetLinkMetadataResponse:
type: object
properties:
linkMetadata:
$ref: '#/definitions/v2LinkMetadata'
v2GetMemoByNameResponse:
type: object
properties:
memo:
$ref: '#/definitions/v2Memo'
v2GetMemoResponse:
type: object
properties:
memo:
$ref: '#/definitions/v2Memo'
v2GetResourceByNameResponse:
type: object
properties:
resource:
$ref: '#/definitions/v2Resource'
v2GetResourceResponse:
type: object
properties:
resource:
$ref: '#/definitions/v2Resource'
v2GetTagSuggestionsResponse:
type: object
properties:
tags:
type: array
items:
type: string
v2GetUserMemosStatsResponse:
type: object
properties:
stats:
type: object
additionalProperties:
type: integer
format: int32
description: |-
stats is the stats of memo creating/updating activities.
key is the year-month-day string. e.g. "2020-01-01".
v2GetUserResponse:
type: object
properties:
user:
$ref: '#/definitions/v2User'
v2GetUserSettingResponse:
type: object
properties:
setting:
$ref: '#/definitions/apiv2UserSetting'
v2GetWebhookResponse:
type: object
properties:
webhook:
$ref: '#/definitions/apiv2Webhook'
v2GetWorkspaceProfileResponse:
type: object
properties:
workspaceProfile:
$ref: '#/definitions/v2WorkspaceProfile'
v2GetWorkspaceSettingResponse:
type: object
properties:
setting:
$ref: '#/definitions/apiv2WorkspaceSetting'
v2Inbox:
type: object
properties:
name:
type: string
title: |-
The name of the inbox.
Format: inboxes/{uid}
sender:
type: string
title: 'Format: users/{username}'
receiver:
type: string
title: 'Format: users/{username}'
status:
$ref: '#/definitions/v2InboxStatus'
createTime:
type: string
format: date-time
type:
$ref: '#/definitions/v2InboxType'
activityId:
type: integer
format: int32
v2InboxStatus:
type: string
enum:
- STATUS_UNSPECIFIED
- UNREAD
- ARCHIVED
default: STATUS_UNSPECIFIED
v2InboxType:
type: string
enum:
- TYPE_UNSPECIFIED
- TYPE_MEMO_COMMENT
- TYPE_VERSION_UPDATE
default: TYPE_UNSPECIFIED
v2LinkMetadata:
type: object
properties:
title:
type: string
description:
type: string
image:
type: string
v2ListInboxesResponse:
type: object
properties:
inboxes:
type: array
items:
type: object
$ref: '#/definitions/v2Inbox'
v2ListMemoCommentsResponse:
type: object
properties:
memos:
type: array
items:
type: object
$ref: '#/definitions/v2Memo'
v2ListMemoReactionsResponse:
type: object
properties:
reactions:
type: array
items:
type: object
$ref: '#/definitions/apiv2Reaction'
v2ListMemoRelationsResponse:
type: object
properties:
relations:
type: array
items:
type: object
$ref: '#/definitions/v2MemoRelation'
v2ListMemoResourcesResponse:
type: object
properties:
resources:
type: array
items:
type: object
$ref: '#/definitions/v2Resource'
v2ListMemosResponse:
type: object
properties:
memos:
type: array
items:
type: object
$ref: '#/definitions/v2Memo'
nextPageToken:
type: string
description: |-
A token, which can be sent as `page_token` to retrieve the next page.
If this field is omitted, there are no subsequent pages.
v2ListResourcesResponse:
type: object
properties:
resources:
type: array
items:
type: object
$ref: '#/definitions/v2Resource'
v2ListTagsResponse:
type: object
properties:
tags:
type: array
items:
type: object
$ref: '#/definitions/v2Tag'
v2ListUserAccessTokensResponse:
type: object
properties:
accessTokens:
type: array
items:
type: object
$ref: '#/definitions/v2UserAccessToken'
v2ListUsersResponse:
type: object
properties:
users:
type: array
items:
type: object
$ref: '#/definitions/v2User'
v2ListWebhooksResponse:
type: object
properties:
webhooks:
type: array
items:
type: object
$ref: '#/definitions/apiv2Webhook'
v2Memo:
type: object
properties:
id:
type: integer
format: int32
description: id is the system generated unique identifier.
name:
type: string
description: name is the user provided name.
rowStatus:
$ref: '#/definitions/apiv2RowStatus'
creator:
type: string
title: |-
The name of the creator.
Format: users/{username}
creatorId:
type: integer
format: int32
createTime:
type: string
format: date-time
updateTime:
type: string
format: date-time
displayTime:
type: string
format: date-time
content:
type: string
visibility:
$ref: '#/definitions/v2Visibility'
pinned:
type: boolean
parentId:
type: integer
format: int32
readOnly: true
resources:
type: array
items:
type: object
$ref: '#/definitions/v2Resource'
readOnly: true
relations:
type: array
items:
type: object
$ref: '#/definitions/v2MemoRelation'
readOnly: true
reactions:
type: array
items:
type: object
$ref: '#/definitions/apiv2Reaction'
readOnly: true
v2MemoRelation:
type: object
properties:
memoId:
type: integer
format: int32
relatedMemoId:
type: integer
format: int32
type:
$ref: '#/definitions/v2MemoRelationType'
v2MemoRelationType:
type: string
enum:
- TYPE_UNSPECIFIED
- REFERENCE
- COMMENT
default: TYPE_UNSPECIFIED
v2RenameTagResponse:
type: object
properties:
tag:
$ref: '#/definitions/v2Tag'
v2Resource:
type: object
properties:
id:
type: integer
format: int32
description: id is the system generated unique identifier.
name:
type: string
description: name is the user provided name.
createTime:
type: string
format: date-time
filename:
type: string
externalLink:
type: string
type:
type: string
size:
type: string
format: int64
memoId:
type: integer
format: int32
v2SetMemoRelationsResponse:
type: object
v2SetMemoResourcesResponse:
type: object
v2SetWorkspaceSettingResponse:
type: object
properties:
setting:
$ref: '#/definitions/apiv2WorkspaceSetting'
v2SignInResponse:
type: object
properties:
user:
$ref: '#/definitions/v2User'
v2SignInWithSSOResponse:
type: object
properties:
user:
$ref: '#/definitions/v2User'
v2SignOutResponse:
type: object
v2SignUpResponse:
type: object
properties:
user:
$ref: '#/definitions/v2User'
v2Tag:
type: object
properties:
name:
type: string
creator:
type: string
title: |-
The creator of tags.
Format: users/{username}
v2UpdateInboxResponse:
type: object
properties:
inbox:
$ref: '#/definitions/v2Inbox'
v2UpdateMemoResponse:
type: object
properties:
memo:
$ref: '#/definitions/v2Memo'
v2UpdateResourceResponse:
type: object
properties:
resource:
$ref: '#/definitions/v2Resource'
v2UpdateUserResponse:
type: object
properties:
user:
$ref: '#/definitions/v2User'
v2UpdateUserSettingResponse:
type: object
properties:
setting:
$ref: '#/definitions/apiv2UserSetting'
v2UpdateWebhookResponse:
type: object
properties:
webhook:
$ref: '#/definitions/apiv2Webhook'
v2UpsertMemoReactionResponse:
type: object
properties:
reaction:
$ref: '#/definitions/apiv2Reaction'
v2UpsertTagRequest:
type: object
properties:
name:
type: string
v2UpsertTagResponse:
type: object
properties:
tag:
$ref: '#/definitions/v2Tag'
v2User:
type: object
properties:
name:
type: string
title: |-
The name of the user.
Format: users/{username}
id:
type: integer
format: int32
role:
$ref: '#/definitions/UserRole'
username:
type: string
email:
type: string
nickname:
type: string
avatarUrl:
type: string
description:
type: string
password:
type: string
rowStatus:
$ref: '#/definitions/apiv2RowStatus'
createTime:
type: string
format: date-time
updateTime:
type: string
format: date-time
v2UserAccessToken:
type: object
properties:
accessToken:
type: string
description:
type: string
issuedAt:
type: string
format: date-time
expiresAt:
type: string
format: date-time
v2Visibility:
type: string
enum:
- VISIBILITY_UNSPECIFIED
- PRIVATE
- PROTECTED
- PUBLIC
default: VISIBILITY_UNSPECIFIED
v2WorkspaceProfile:
type: object
properties:
version:
type: string
title: version is the current version of instance
mode:
type: string
description: mode is the instance mode (e.g. "prod", "dev" or "demo").
allowRegistration:
type: boolean
description: allow_registration is whether the registration is allowed.
disablePasswordLogin:
type: boolean
description: allow_password_login is whether the password login is allowed.
additionalScript:
type: string
description: additional_script is the additional script.
additionalStyle:
type: string
description: additional_style is the additional style.