swagger: "2.0" info: title: api/v2/activity_service.proto version: version not set tags: - name: ActivityService - name: UserService - name: AuthService - name: IdentityProviderService - 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/identityProviders: get: operationId: IdentityProviderService_ListIdentityProviders responses: "200": description: A successful response. schema: $ref: '#/definitions/v2ListIdentityProvidersResponse' default: description: An unexpected error response. schema: $ref: '#/definitions/googlerpcStatus' tags: - IdentityProviderService post: operationId: IdentityProviderService_CreateIdentityProvider responses: "200": description: A successful response. schema: $ref: '#/definitions/v2CreateIdentityProviderResponse' default: description: An unexpected error response. schema: $ref: '#/definitions/googlerpcStatus' parameters: - name: identityProvider.name description: |- The name of the identityProvider. Format: identityProviders/{id} in: query required: false type: string - name: identityProvider.type in: query required: false type: string enum: - TYPE_UNSPECIFIED - OAUTH2 default: TYPE_UNSPECIFIED - name: identityProvider.title in: query required: false type: string - name: identityProvider.identifierFilter in: query required: false type: string - name: identityProvider.config.oauth2.clientId in: query required: false type: string - name: identityProvider.config.oauth2.clientSecret in: query required: false type: string - name: identityProvider.config.oauth2.authUrl in: query required: false type: string - name: identityProvider.config.oauth2.tokenUrl in: query required: false type: string - name: identityProvider.config.oauth2.userInfoUrl in: query required: false type: string - name: identityProvider.config.oauth2.scopes in: query required: false type: array items: type: string collectionFormat: multi - name: identityProvider.config.oauth2.fieldMapping.identifier in: query required: false type: string - name: identityProvider.config.oauth2.fieldMapping.displayName in: query required: false type: string - name: identityProvider.config.oauth2.fieldMapping.email in: query required: false type: string tags: - IdentityProviderService /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/{id}' 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/{uid} && 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/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/{id} 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: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/memos:search: get: summary: SearchMemos searches memos. operationId: MemoService_SearchMemos responses: "200": description: A successful response. schema: $ref: '#/definitions/v2SearchMemosResponse' default: description: An unexpected error response. schema: $ref: '#/definitions/googlerpcStatus' parameters: - name: filter description: |- Filter is used to filter memos returned. Format: "creator == users/{uid} && visibilities == ['PUBLIC', 'PROTECTED']" in: query required: false type: string tags: - MemoService /api/v2/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: reactionId in: path required: true type: integer format: int32 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: memo description: 'Format: memos/{id}' in: query required: false type: string tags: - ResourceService /api/v2/resources:search: get: summary: SearchResources searches memos. operationId: ResourceService_SearchResources responses: "200": description: A successful response. schema: $ref: '#/definitions/v2SearchResourcesResponse' default: description: An unexpected error response. schema: $ref: '#/definitions/googlerpcStatus' parameters: - name: filter in: query required: false type: string 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/{id} 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/{id} 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/{id} 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/{id} 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/users:search: get: summary: SearchUsers searches users by filter. operationId: UserService_SearchUsers responses: "200": description: A successful response. schema: $ref: '#/definitions/v2SearchUsersResponse' default: description: An unexpected error response. schema: $ref: '#/definitions/googlerpcStatus' parameters: - name: filter description: |- Filter is used to filter users returned in the list. Format: "username == frank" in: query required: false type: string 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/{identityProvider.name}: patch: summary: UpdateIdentityProvider updates an identity provider. operationId: IdentityProviderService_UpdateIdentityProvider responses: "200": description: A successful response. schema: $ref: '#/definitions/v2UpdateIdentityProviderResponse' default: description: An unexpected error response. schema: $ref: '#/definitions/googlerpcStatus' parameters: - name: identityProvider.name description: |- The name of the identityProvider. Format: identityProviders/{id} in: path required: true type: string pattern: identityProviders/[^/]+ - name: identityProvider description: The identityProvider to update. in: body required: true schema: type: object properties: type: $ref: '#/definitions/v2IdentityProviderType' title: type: string identifierFilter: type: string config: $ref: '#/definitions/IdentityProviderConfig' title: The identityProvider to update. tags: - IdentityProviderService /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/{id} in: path required: true type: string pattern: inboxes/[^/]+ - name: inbox in: body required: true schema: type: object properties: sender: type: string title: 'Format: users/{id}' receiver: type: string title: 'Format: users/{id}' status: $ref: '#/definitions/v2InboxStatus' createTime: type: string format: date-time type: $ref: '#/definitions/v2InboxType' activityId: type: integer format: int32 tags: - InboxService /api/v2/{memo.name}: 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.name description: |- The name of the memo. Format: memos/{id} id is the system generated id. in: path required: true type: string pattern: memos/[^/]+ - name: memo in: body required: true schema: type: object properties: uid: type: string description: The user defined id of the memo. rowStatus: $ref: '#/definitions/apiv2RowStatus' creator: type: string title: |- The name of the creator. Format: users/{id} 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/{name_1}: get: operationId: IdentityProviderService_GetIdentityProvider responses: "200": description: A successful response. schema: $ref: '#/definitions/v2GetIdentityProviderResponse' default: description: An unexpected error response. schema: $ref: '#/definitions/googlerpcStatus' parameters: - name: name_1 description: |- The name of the identityProvider to get. Format: identityProviders/{id} in: path required: true type: string pattern: identityProviders/[^/]+ tags: - IdentityProviderService delete: summary: DeleteIdentityProvider deletes an identity provider. operationId: IdentityProviderService_DeleteIdentityProvider responses: "200": description: A successful response. schema: $ref: '#/definitions/v2DeleteIdentityProviderResponse' default: description: An unexpected error response. schema: $ref: '#/definitions/googlerpcStatus' parameters: - name: name_1 description: |- The name of the identityProvider to delete. Format: identityProviders/{id} in: path required: true type: string pattern: identityProviders/[^/]+ tags: - IdentityProviderService /api/v2/{name_2}: get: summary: GetResource returns a resource by name. 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: name_2 in: path required: true type: string pattern: resources/[^/]+ tags: - ResourceService 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_2 description: |- The name of the inbox to delete. Format: inboxes/{id} in: path required: true type: string pattern: inboxes/[^/]+ tags: - InboxService /api/v2/{name_3}: get: summary: GetMemo gets a memo. 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: name_3 description: |- The name of the memo. Format: memos/{id} in: path required: true type: string pattern: memos/[^/]+ tags: - MemoService delete: summary: DeleteResource deletes a resource by name. 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: name_3 in: path required: true type: string pattern: resources/[^/]+ tags: - ResourceService /api/v2/{name_4}: delete: summary: DeleteMemo deletes a memo. 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: name_4 description: |- The name of the memo. Format: memos/{id} in: path required: true type: string pattern: memos/[^/]+ tags: - MemoService /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/{id} 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/{id} 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/{id} 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/{id} 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/{id} 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}/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: name description: |- The name of the memo. Format: memos/{id} in: path required: true type: string pattern: memos/[^/]+ 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: name description: |- The name of the memo. Format: memos/{id} in: path required: true type: string pattern: memos/[^/]+ - name: comment.content in: query required: false type: string - name: comment.visibility in: query required: false type: string enum: - VISIBILITY_UNSPECIFIED - PRIVATE - PROTECTED - PUBLIC default: VISIBILITY_UNSPECIFIED tags: - MemoService /api/v2/{name}/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: name description: |- The name of the memo. Format: memos/{id} in: path required: true type: string pattern: memos/[^/]+ 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: name description: |- The name of the memo. Format: memos/{id} in: path required: true type: string pattern: memos/[^/]+ - name: reaction.id in: query required: false type: integer format: int32 - name: reaction.creator description: |- The name of the creator. Format: users/{id} 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/{name}/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: name description: |- The name of the memo. Format: memos/{id} in: path required: true type: string pattern: memos/[^/]+ 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: name description: |- The name of the memo. Format: memos/{id} in: path required: true type: string pattern: memos/[^/]+ - name: body in: body required: true schema: $ref: '#/definitions/MemoServiceSetMemoRelationsBody' tags: - MemoService /api/v2/{name}/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: name description: |- The name of the memo. Format: memos/{id} in: path required: true type: string pattern: memos/[^/]+ 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: name description: |- The name of the memo. Format: memos/{id} in: path required: true type: string pattern: memos/[^/]+ - name: body in: body required: true schema: $ref: '#/definitions/MemoServiceSetMemoResourcesBody' tags: - MemoService /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/{id} in: path required: true type: string pattern: users/[^/]+ tags: - UserService /api/v2/{resource.name}: 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.name description: |- The name of the resource. Format: resources/{id} id is the system generated unique identifier. in: path required: true type: string pattern: resources/[^/]+ - name: resource in: body required: true schema: type: object properties: uid: type: string description: The user defined id of the resource. createTime: type: string format: date-time filename: type: string externalLink: type: string type: type: string size: type: string format: int64 memo: type: string title: 'Format: memos/{id}' tags: - ResourceService /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/{id} 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/{id} in: path required: true type: string pattern: users/[^/]+ - name: user in: body required: true schema: type: object properties: id: type: integer format: int32 description: The system generated uid of the user. 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: IdentityProviderConfig: type: object properties: oauth2: $ref: '#/definitions/IdentityProviderConfigOAuth2' IdentityProviderConfigFieldMapping: type: object properties: identifier: type: string displayName: type: string email: type: string IdentityProviderConfigOAuth2: type: object properties: clientId: type: string clientSecret: type: string authUrl: type: string tokenUrl: type: string userInfoUrl: type: string scopes: type: array items: type: string fieldMapping: $ref: '#/definitions/IdentityProviderConfigFieldMapping' 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 title: |- The name of the creator. Format: users/{id} 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/{id} 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 v2CreateIdentityProviderResponse: type: object properties: identityProvider: $ref: '#/definitions/v2IdentityProvider' description: The created identityProvider. 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' v2DeleteIdentityProviderResponse: type: object 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' v2GetIdentityProviderResponse: type: object properties: identityProvider: $ref: '#/definitions/v2IdentityProvider' description: The identityProvider. v2GetLinkMetadataResponse: type: object properties: linkMetadata: $ref: '#/definitions/v2LinkMetadata' v2GetMemoResponse: type: object properties: memo: $ref: '#/definitions/v2Memo' 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' v2IdentityProvider: type: object properties: name: type: string title: |- The name of the identityProvider. Format: identityProviders/{id} type: $ref: '#/definitions/v2IdentityProviderType' title: type: string identifierFilter: type: string config: $ref: '#/definitions/IdentityProviderConfig' v2IdentityProviderType: type: string enum: - TYPE_UNSPECIFIED - OAUTH2 default: TYPE_UNSPECIFIED v2Inbox: type: object properties: name: type: string title: |- The name of the inbox. Format: inboxes/{id} sender: type: string title: 'Format: users/{id}' receiver: type: string title: 'Format: users/{id}' 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 v2ListIdentityProvidersResponse: type: object properties: identityProviders: type: array items: type: object $ref: '#/definitions/v2IdentityProvider' 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: name: type: string description: |- The name of the memo. Format: memos/{id} id is the system generated id. uid: type: string description: The user defined id of the memo. rowStatus: $ref: '#/definitions/apiv2RowStatus' creator: type: string title: |- The name of the creator. Format: users/{id} 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: memo: type: string title: |- The name of memo. Format: "memos/{uid}" relatedMemo: type: string title: |- The name of related memo. Format: "memos/{uid}" 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: name: type: string description: |- The name of the resource. Format: resources/{id} id is the system generated unique identifier. uid: type: string description: The user defined id of the resource. createTime: type: string format: date-time filename: type: string externalLink: type: string type: type: string size: type: string format: int64 memo: type: string title: 'Format: memos/{id}' v2SearchMemosResponse: type: object properties: memos: type: array items: type: object $ref: '#/definitions/v2Memo' v2SearchResourcesResponse: type: object properties: resources: type: array items: type: object $ref: '#/definitions/v2Resource' v2SearchUsersResponse: type: object properties: users: type: array items: type: object $ref: '#/definitions/v2User' 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/{id} v2UpdateIdentityProviderResponse: type: object properties: identityProvider: $ref: '#/definitions/v2IdentityProvider' description: The updated identityProvider. 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/{id} id: type: integer format: int32 description: The system generated uid of the user. 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: owner: type: string title: |- The name of intance owner. Format: "users/{id}" 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"). disallowSignup: type: boolean description: disallow_signup is whether the signup is disallowed. disablePasswordLogin: type: boolean description: disable_password_login is whether the password login is disabled. additionalScript: type: string description: additional_script is the additional script. additionalStyle: type: string description: additional_style is the additional style.