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.