diff --git a/proto/buf.gen.yaml b/proto/buf.gen.yaml index df6063688..8bf2973c3 100644 --- a/proto/buf.gen.yaml +++ b/proto/buf.gen.yaml @@ -17,9 +17,9 @@ plugins: - remote: buf.build/grpc-ecosystem/gateway out: gen opt: paths=source_relative - - remote: buf.build/grpc-ecosystem/openapiv2 + - remote: buf.build/community/google-gnostic-openapi out: gen - opt: output_format=yaml,allow_merge=true + opt: paths=source_relative,enum_type=string - remote: buf.build/community/stephenh-ts-proto out: ../web/src/types/proto opt: diff --git a/proto/gen/apidocs.swagger.yaml b/proto/gen/apidocs.swagger.yaml deleted file mode 100644 index 823e56634..000000000 --- a/proto/gen/apidocs.swagger.yaml +++ /dev/null @@ -1,4258 +0,0 @@ -swagger: "2.0" -info: - title: api/v1/activity_service.proto - version: version not set -tags: - - name: ActivityService - - name: AttachmentService - - name: UserService - - name: AuthService - - name: IdentityProviderService - - name: InboxService - - name: MarkdownService - - name: MemoService - - name: ShortcutService - - name: WebhookService - - name: WorkspaceService -consumes: - - application/json -produces: - - application/json -paths: - /api/v1/activities: - get: - summary: ListActivities returns a list of activities. - operationId: ActivityService_ListActivities - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1ListActivitiesResponse' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: pageSize - description: |- - The maximum number of activities to return. - The service may return fewer than this value. - If unspecified, at most 100 activities will be returned. - The maximum value is 1000; values above 1000 will be coerced to 1000. - in: query - required: false - type: integer - format: int32 - - name: pageToken - description: |- - A page token, received from a previous `ListActivities` call. - Provide this to retrieve the subsequent page. - in: query - required: false - type: string - tags: - - ActivityService - /api/v1/attachments: - get: - summary: ListAttachments lists all attachments. - operationId: AttachmentService_ListAttachments - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1ListAttachmentsResponse' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: pageSize - description: |- - Optional. The maximum number of attachments to return. - The service may return fewer than this value. - If unspecified, at most 50 attachments will be returned. - The maximum value is 1000; values above 1000 will be coerced to 1000. - in: query - required: false - type: integer - format: int32 - - name: pageToken - description: |- - Optional. A page token, received from a previous `ListAttachments` call. - Provide this to retrieve the subsequent page. - in: query - required: false - type: string - - name: filter - description: |- - Optional. Filter to apply to the list results. - Example: "type=image/png" or "filename:*.jpg" - Supported operators: =, !=, <, <=, >, >=, : - Supported fields: filename, type, size, create_time, memo - in: query - required: false - type: string - - name: orderBy - description: |- - Optional. The order to sort results by. - Example: "create_time desc" or "filename asc" - in: query - required: false - type: string - tags: - - AttachmentService - post: - summary: CreateAttachment creates a new attachment. - operationId: AttachmentService_CreateAttachment - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1Attachment' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: attachment - description: Required. The attachment to create. - in: body - required: true - schema: - $ref: '#/definitions/v1Attachment' - required: - - attachment - - name: attachmentId - description: |- - Optional. The attachment ID to use for this attachment. - If empty, a unique ID will be generated. - in: query - required: false - type: string - tags: - - AttachmentService - /api/v1/auth/sessions: - post: - summary: |- - CreateSession authenticates a user and creates a new session. - Returns the authenticated user information upon successful authentication. - operationId: AuthService_CreateSession - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1CreateSessionResponse' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: body - in: body - required: true - schema: - $ref: '#/definitions/v1CreateSessionRequest' - tags: - - AuthService - /api/v1/auth/sessions/current: - get: - summary: |- - GetCurrentSession returns the current active session information. - This method is idempotent and safe, suitable for checking current session state. - operationId: AuthService_GetCurrentSession - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1GetCurrentSessionResponse' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - tags: - - AuthService - delete: - summary: |- - DeleteSession terminates the current user session. - This is an idempotent operation that invalidates the user's authentication. - operationId: AuthService_DeleteSession - responses: - "200": - description: A successful response. - schema: - type: object - properties: {} - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - tags: - - AuthService - /api/v1/identityProviders: - get: - summary: ListIdentityProviders lists identity providers. - operationId: IdentityProviderService_ListIdentityProviders - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1ListIdentityProvidersResponse' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - tags: - - IdentityProviderService - post: - summary: CreateIdentityProvider creates an identity provider. - operationId: IdentityProviderService_CreateIdentityProvider - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/apiv1IdentityProvider' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: identityProvider - description: Required. The identity provider to create. - in: body - required: true - schema: - $ref: '#/definitions/apiv1IdentityProvider' - required: - - identityProvider - - name: identityProviderId - description: |- - Optional. The ID to use for the identity provider, which will become the final component of the resource name. - If not provided, the system will generate one. - in: query - required: false - type: string - tags: - - IdentityProviderService - /api/v1/markdown/links:getMetadata: - get: - summary: |- - GetLinkMetadata returns metadata for a given link. - This is useful for generating link previews. - operationId: MarkdownService_GetLinkMetadata - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1LinkMetadata' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: link - description: The link URL to get metadata for. - in: query - required: true - type: string - tags: - - MarkdownService - /api/v1/markdown:parse: - post: - summary: |- - ParseMarkdown parses the given markdown content and returns a list of nodes. - This is a utility method that transforms markdown text into structured nodes. - operationId: MarkdownService_ParseMarkdown - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1ParseMarkdownResponse' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: body - in: body - required: true - schema: - $ref: '#/definitions/v1ParseMarkdownRequest' - tags: - - MarkdownService - /api/v1/markdown:restore: - post: - summary: |- - RestoreMarkdownNodes restores the given nodes to markdown content. - This is the inverse operation of ParseMarkdown. - operationId: MarkdownService_RestoreMarkdownNodes - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1RestoreMarkdownNodesResponse' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: body - in: body - required: true - schema: - $ref: '#/definitions/v1RestoreMarkdownNodesRequest' - tags: - - MarkdownService - /api/v1/markdown:stringify: - post: - summary: |- - StringifyMarkdownNodes stringify the given nodes to plain text content. - This removes all markdown formatting and returns plain text. - operationId: MarkdownService_StringifyMarkdownNodes - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1StringifyMarkdownNodesResponse' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: body - in: body - required: true - schema: - $ref: '#/definitions/v1StringifyMarkdownNodesRequest' - tags: - - MarkdownService - /api/v1/memos: - get: - summary: ListMemos lists memos with pagination and filter. - operationId: MemoService_ListMemos - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1ListMemosResponse' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: parent - description: |- - Optional. The parent is the owner of the memos. - If not specified or `users/-`, it will list all memos. - Format: users/{user} - in: query - required: false - type: string - - name: pageSize - description: |- - Optional. The maximum number of memos to return. - The service may return fewer than this value. - If unspecified, at most 50 memos will be returned. - The maximum value is 1000; values above 1000 will be coerced to 1000. - in: query - required: false - type: integer - format: int32 - - name: pageToken - description: |- - Optional. A page token, received from a previous `ListMemos` call. - Provide this to retrieve the subsequent page. - in: query - required: false - type: string - - name: state - description: |- - Optional. The state of the memos to list. - Default to `NORMAL`. Set to `ARCHIVED` to list archived memos. - in: query - required: false - type: string - enum: - - STATE_UNSPECIFIED - - NORMAL - - ARCHIVED - default: STATE_UNSPECIFIED - - name: orderBy - description: |- - Optional. The order to sort results by. - Default to "display_time desc". - Example: "display_time desc" or "create_time asc" - in: query - required: false - type: string - - name: filter - description: |- - Optional. Filter to apply to the list results. - Filter is a CEL expression to filter memos. - Refer to `Shortcut.filter`. - in: query - required: false - type: string - - name: showDeleted - description: Optional. If true, show deleted memos in the response. - in: query - required: false - type: boolean - - name: oldFilter - description: |- - [Deprecated] Old filter contains some specific conditions to filter memos. - Format: "creator == 'users/{user}' && 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/apiv1Memo' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: memo - description: Required. The memo to create. - in: body - required: true - schema: - $ref: '#/definitions/apiv1Memo' - required: - - memo - - name: memoId - description: |- - Optional. The memo ID to use for this memo. - If empty, a unique ID will be generated. - in: query - required: false - type: string - - name: validateOnly - description: Optional. If set, validate the request but don't actually create the memo. - in: query - required: false - type: boolean - - name: requestId - description: Optional. An idempotency token. - in: query - required: false - type: string - tags: - - MemoService - /api/v1/users: - get: - summary: ListUsers returns a list of users. - operationId: UserService_ListUsers - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1ListUsersResponse' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: pageSize - description: |- - Optional. The maximum number of users to return. - The service may return fewer than this value. - If unspecified, at most 50 users will be returned. - The maximum value is 1000; values above 1000 will be coerced to 1000. - in: query - required: false - type: integer - format: int32 - - name: pageToken - description: |- - Optional. A page token, received from a previous `ListUsers` call. - Provide this to retrieve the subsequent page. - in: query - required: false - type: string - - name: filter - description: |- - Optional. Filter to apply to the list results. - Example: "state=ACTIVE" or "role=USER" or "email:@example.com" - Supported operators: =, !=, <, <=, >, >=, : - Supported fields: username, email, role, state, create_time, update_time - in: query - required: false - type: string - - name: orderBy - description: |- - Optional. The order to sort results by. - Example: "create_time desc" or "username asc" - in: query - required: false - type: string - - name: showDeleted - description: Optional. If true, show deleted users in the response. - in: query - required: false - type: boolean - tags: - - UserService - post: - summary: CreateUser creates a new user. - operationId: UserService_CreateUser - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1User' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: user - description: Required. The user to create. - in: body - required: true - schema: - $ref: '#/definitions/v1User' - required: - - user - - name: userId - description: |- - Optional. The user ID to use for this user. - If empty, a unique ID will be generated. - Must match the pattern [a-z0-9-]+ - in: query - required: false - type: string - - name: validateOnly - description: Optional. If set, validate the request but don't actually create the user. - in: query - required: false - type: boolean - - name: requestId - description: |- - Optional. An idempotency token that can be used to ensure that multiple - requests to create a user have the same result. - in: query - required: false - type: string - tags: - - UserService - /api/v1/users:search: - get: - summary: SearchUsers searches for users based on query. - operationId: UserService_SearchUsers - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1SearchUsersResponse' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: query - description: Required. The search query. - in: query - required: true - type: string - - name: pageSize - description: Optional. The maximum number of users to return. - in: query - required: false - type: integer - format: int32 - - name: pageToken - description: Optional. A page token for pagination. - in: query - required: false - type: string - tags: - - UserService - /api/v1/users:stats: - get: - summary: ListAllUserStats returns statistics for all users. - operationId: UserService_ListAllUserStats - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1ListAllUserStatsResponse' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: pageSize - description: Optional. The maximum number of user stats to return. - in: query - required: false - type: integer - format: int32 - - name: pageToken - description: Optional. A page token for pagination. - in: query - required: false - type: string - tags: - - UserService - /api/v1/workspace/profile: - get: - summary: Gets the workspace profile. - operationId: WorkspaceService_GetWorkspaceProfile - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1WorkspaceProfile' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - tags: - - WorkspaceService - /api/v1/{attachment.name}: - patch: - summary: UpdateAttachment updates a attachment. - operationId: AttachmentService_UpdateAttachment - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1Attachment' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: attachment.name - description: |- - The name of the attachment. - Format: attachments/{attachment} - in: path - required: true - type: string - pattern: attachments/[^/]+ - - name: attachment - description: Required. The attachment which replaces the attachment on the server. - in: body - required: true - schema: - type: object - properties: - createTime: - type: string - format: date-time - description: Output only. The creation timestamp. - readOnly: true - filename: - type: string - description: The filename of the attachment. - content: - type: string - format: byte - description: Input only. The content of the attachment. - externalLink: - type: string - description: Optional. The external link of the attachment. - type: - type: string - description: The MIME type of the attachment. - size: - type: string - format: int64 - description: Output only. The size of the attachment in bytes. - readOnly: true - memo: - type: string - title: |- - Optional. The related memo. Refer to `Memo.name`. - Format: memos/{memo} - title: Required. The attachment which replaces the attachment on the server. - required: - - filename - - type - - attachment - tags: - - AttachmentService - /api/v1/{identityProvider.name}: - patch: - summary: UpdateIdentityProvider updates an identity provider. - operationId: IdentityProviderService_UpdateIdentityProvider - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/apiv1IdentityProvider' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: identityProvider.name - description: |- - The resource name of the identity provider. - Format: identityProviders/{idp} - in: path - required: true - type: string - pattern: identityProviders/[^/]+ - - name: identityProvider - description: Required. The identity provider to update. - in: body - required: true - schema: - type: object - properties: - type: - $ref: '#/definitions/apiv1IdentityProviderType' - description: Required. The type of the identity provider. - title: - type: string - description: Required. The display title of the identity provider. - identifierFilter: - type: string - description: Optional. Filter applied to user identifiers. - config: - $ref: '#/definitions/apiv1IdentityProviderConfig' - description: Required. Configuration for the identity provider. - title: Required. The identity provider to update. - required: - - type - - title - - config - - identityProvider - tags: - - IdentityProviderService - /api/v1/{inbox.name}: - patch: - summary: UpdateInbox updates an inbox. - operationId: InboxService_UpdateInbox - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1Inbox' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: inbox.name - description: |- - The resource name of the inbox. - Format: inboxes/{inbox} - in: path - required: true - type: string - pattern: inboxes/[^/]+ - - name: inbox - description: Required. The inbox to update. - in: body - required: true - schema: - type: object - properties: - sender: - type: string - title: |- - The sender of the inbox notification. - Format: users/{user} - readOnly: true - receiver: - type: string - title: |- - The receiver of the inbox notification. - Format: users/{user} - readOnly: true - status: - $ref: '#/definitions/v1InboxStatus' - description: The status of the inbox notification. - createTime: - type: string - format: date-time - description: Output only. The creation timestamp. - readOnly: true - type: - $ref: '#/definitions/v1InboxType' - description: The type of the inbox notification. - readOnly: true - activityId: - type: integer - format: int32 - description: Optional. The activity ID associated with this inbox notification. - title: Required. The inbox to update. - required: - - inbox - - name: allowMissing - description: Optional. If set to true, allows updating missing fields. - in: query - required: false - type: boolean - tags: - - InboxService - /api/v1/{memo.name}: - patch: - summary: UpdateMemo updates a memo. - operationId: MemoService_UpdateMemo - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/apiv1Memo' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: memo.name - description: |- - The resource name of the memo. - Format: memos/{memo}, memo is the user defined id or uuid. - in: path - required: true - type: string - pattern: memos/[^/]+ - - name: memo - description: |- - Required. The memo to update. - The `name` field is required. - in: body - required: true - schema: - type: object - properties: - state: - $ref: '#/definitions/v1State' - description: The state of the memo. - creator: - type: string - title: |- - The name of the creator. - Format: users/{user} - readOnly: true - createTime: - type: string - format: date-time - description: Output only. The creation timestamp. - readOnly: true - updateTime: - type: string - format: date-time - description: Output only. The last update timestamp. - readOnly: true - displayTime: - type: string - format: date-time - description: The display timestamp of the memo. - content: - type: string - description: Required. The content of the memo in Markdown format. - nodes: - type: array - items: - type: object - $ref: '#/definitions/v1Node' - description: Output only. The parsed nodes from the content. - readOnly: true - visibility: - $ref: '#/definitions/v1Visibility' - description: The visibility of the memo. - tags: - type: array - items: - type: string - description: Output only. The tags extracted from the content. - readOnly: true - pinned: - type: boolean - description: Whether the memo is pinned. - attachments: - type: array - items: - type: object - $ref: '#/definitions/v1Attachment' - description: Optional. The attachments of the memo. - relations: - type: array - items: - type: object - $ref: '#/definitions/v1MemoRelation' - description: Optional. The relations of the memo. - reactions: - type: array - items: - type: object - $ref: '#/definitions/v1Reaction' - description: Output only. The reactions to the memo. - readOnly: true - property: - $ref: '#/definitions/v1MemoProperty' - description: Output only. The computed properties of the memo. - readOnly: true - parent: - type: string - title: |- - Output only. The name of the parent memo. - Format: memos/{memo} - readOnly: true - snippet: - type: string - description: Output only. The snippet of the memo content. Plain text only. - readOnly: true - location: - $ref: '#/definitions/apiv1Location' - description: Optional. The location of the memo. - title: |- - Required. The memo to update. - The `name` field is required. - required: - - state - - content - - visibility - - memo - - name: allowMissing - description: Optional. If set to true, allows updating sensitive fields. - in: query - required: false - type: boolean - tags: - - MemoService - /api/v1/{name_1}: - get: - summary: GetAttachment returns a attachment by name. - operationId: AttachmentService_GetAttachment - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1Attachment' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name_1 - description: |- - Required. The attachment name of the attachment to retrieve. - Format: attachments/{attachment} - in: path - required: true - type: string - pattern: attachments/[^/]+ - tags: - - AttachmentService - delete: - summary: DeleteUser deletes a user. - operationId: UserService_DeleteUser - responses: - "200": - description: A successful response. - schema: - type: object - properties: {} - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name_1 - description: |- - Required. The resource name of the user to delete. - Format: users/{user} - in: path - required: true - type: string - pattern: users/[^/]+ - - name: force - description: Optional. If set to true, the user will be deleted even if they have associated data. - in: query - required: false - type: boolean - tags: - - UserService - /api/v1/{name_2}: - get: - summary: GetUser gets a user by name. - operationId: UserService_GetUser - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1User' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name_2 - description: |- - Required. The resource name of the user. - Format: users/{user} - in: path - required: true - type: string - pattern: users/[^/]+ - - name: readMask - description: |- - Optional. The fields to return in the response. - If not specified, all fields are returned. - in: query - required: false - type: string - tags: - - UserService - delete: - summary: DeleteUserAccessToken deletes an access token. - operationId: UserService_DeleteUserAccessToken - responses: - "200": - description: A successful response. - schema: - type: object - properties: {} - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name_2 - description: |- - Required. The resource name of the access token to delete. - Format: users/{user}/accessTokens/{access_token} - in: path - required: true - type: string - pattern: users/[^/]+/accessTokens/[^/]+ - tags: - - UserService - /api/v1/{name_3}: - get: - summary: GetIdentityProvider gets an identity provider. - operationId: IdentityProviderService_GetIdentityProvider - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/apiv1IdentityProvider' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name_3 - description: |- - Required. The resource name of the identity provider to get. - Format: identityProviders/{idp} - in: path - required: true - type: string - pattern: identityProviders/[^/]+ - tags: - - IdentityProviderService - delete: - summary: RevokeUserSession revokes a specific session for a user. - operationId: UserService_RevokeUserSession - responses: - "200": - description: A successful response. - schema: - type: object - properties: {} - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name_3 - description: |- - Required. The resource name of the session to revoke. - Format: users/{user}/sessions/{session} - in: path - required: true - type: string - pattern: users/[^/]+/sessions/[^/]+ - tags: - - UserService - /api/v1/{name_4}: - get: - summary: GetMemo gets a memo. - operationId: MemoService_GetMemo - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/apiv1Memo' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name_4 - description: |- - Required. The resource name of the memo. - Format: memos/{memo} - in: path - required: true - type: string - pattern: memos/[^/]+ - - name: readMask - description: |- - Optional. The fields to return in the response. - If not specified, all fields are returned. - in: query - required: false - type: string - tags: - - MemoService - delete: - summary: DeleteIdentityProvider deletes an identity provider. - operationId: IdentityProviderService_DeleteIdentityProvider - responses: - "200": - description: A successful response. - schema: - type: object - properties: {} - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name_4 - description: |- - Required. The resource name of the identity provider to delete. - Format: identityProviders/{idp} - in: path - required: true - type: string - pattern: identityProviders/[^/]+ - tags: - - IdentityProviderService - /api/v1/{name_5}: - get: - summary: GetShortcut gets a shortcut by name. - operationId: ShortcutService_GetShortcut - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/apiv1Shortcut' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name_5 - description: |- - Required. The resource name of the shortcut to retrieve. - Format: users/{user}/shortcuts/{shortcut} - in: path - required: true - type: string - pattern: users/[^/]+/shortcuts/[^/]+ - tags: - - ShortcutService - delete: - summary: DeleteInbox deletes an inbox. - operationId: InboxService_DeleteInbox - responses: - "200": - description: A successful response. - schema: - type: object - properties: {} - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name_5 - description: |- - Required. The resource name of the inbox to delete. - Format: inboxes/{inbox} - in: path - required: true - type: string - pattern: inboxes/[^/]+ - tags: - - InboxService - /api/v1/{name_6}: - get: - summary: GetWebhook gets a webhook by name. - operationId: WebhookService_GetWebhook - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/apiv1Webhook' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name_6 - description: |- - Required. The resource name of the webhook to retrieve. - Format: users/{user}/webhooks/{webhook} - in: path - required: true - type: string - pattern: users/[^/]+/webhooks/[^/]+ - tags: - - WebhookService - delete: - summary: DeleteMemo deletes a memo. - operationId: MemoService_DeleteMemo - responses: - "200": - description: A successful response. - schema: - type: object - properties: {} - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name_6 - description: |- - Required. The resource name of the memo to delete. - Format: memos/{memo} - in: path - required: true - type: string - pattern: memos/[^/]+ - - name: force - description: Optional. If set to true, the memo will be deleted even if it has associated data. - in: query - required: false - type: boolean - tags: - - MemoService - /api/v1/{name_7}: - get: - summary: Gets a workspace setting. - operationId: WorkspaceService_GetWorkspaceSetting - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/apiv1WorkspaceSetting' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name_7 - description: |- - The resource name of the workspace setting. - Format: workspace/settings/{setting} - in: path - required: true - type: string - pattern: workspace/settings/[^/]+ - tags: - - WorkspaceService - delete: - summary: DeleteMemoReaction deletes a reaction for a memo. - operationId: MemoService_DeleteMemoReaction - responses: - "200": - description: A successful response. - schema: - type: object - properties: {} - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name_7 - description: |- - Required. The resource name of the reaction to delete. - Format: reactions/{reaction} - in: path - required: true - type: string - pattern: reactions/[^/]+ - tags: - - MemoService - /api/v1/{name_8}: - delete: - summary: DeleteShortcut deletes a shortcut for a user. - operationId: ShortcutService_DeleteShortcut - responses: - "200": - description: A successful response. - schema: - type: object - properties: {} - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name_8 - description: |- - Required. The resource name of the shortcut to delete. - Format: users/{user}/shortcuts/{shortcut} - in: path - required: true - type: string - pattern: users/[^/]+/shortcuts/[^/]+ - tags: - - ShortcutService - /api/v1/{name_9}: - delete: - summary: DeleteWebhook deletes a webhook for a user. - operationId: WebhookService_DeleteWebhook - responses: - "200": - description: A successful response. - schema: - type: object - properties: {} - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name_9 - description: |- - Required. The resource name of the webhook to delete. - Format: users/{user}/webhooks/{webhook} - in: path - required: true - type: string - pattern: users/[^/]+/webhooks/[^/]+ - tags: - - WebhookService - /api/v1/{name}: - get: - summary: GetActivity returns the activity with the given id. - operationId: ActivityService_GetActivity - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1Activity' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name - description: |- - The name of the activity. - Format: activities/{id}, id is the system generated auto-incremented id. - in: path - required: true - type: string - pattern: activities/[^/]+ - tags: - - ActivityService - delete: - summary: DeleteAttachment deletes a attachment by name. - operationId: AttachmentService_DeleteAttachment - responses: - "200": - description: A successful response. - schema: - type: object - properties: {} - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name - description: |- - Required. The attachment name of the attachment to delete. - Format: attachments/{attachment} - in: path - required: true - type: string - pattern: attachments/[^/]+ - tags: - - AttachmentService - /api/v1/{name}/attachments: - get: - summary: ListMemoAttachments lists attachments for a memo. - operationId: MemoService_ListMemoAttachments - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1ListMemoAttachmentsResponse' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name - description: |- - Required. The resource name of the memo. - Format: memos/{memo} - in: path - required: true - type: string - pattern: memos/[^/]+ - - name: pageSize - description: Optional. The maximum number of attachments to return. - in: query - required: false - type: integer - format: int32 - - name: pageToken - description: Optional. A page token for pagination. - in: query - required: false - type: string - tags: - - MemoService - patch: - summary: SetMemoAttachments sets attachments for a memo. - operationId: MemoService_SetMemoAttachments - responses: - "200": - description: A successful response. - schema: - type: object - properties: {} - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name - description: |- - Required. The resource name of the memo. - Format: memos/{memo} - in: path - required: true - type: string - pattern: memos/[^/]+ - - name: body - in: body - required: true - schema: - $ref: '#/definitions/MemoServiceSetMemoAttachmentsBody' - tags: - - MemoService - /api/v1/{name}/avatar: - get: - summary: GetUserAvatar gets the avatar of a user. - operationId: UserService_GetUserAvatar - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/apiHttpBody' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name - description: |- - Required. The resource name of the user. - Format: users/{user} - in: path - required: true - type: string - pattern: users/[^/]+ - tags: - - UserService - /api/v1/{name}/comments: - get: - summary: ListMemoComments lists comments for a memo. - operationId: MemoService_ListMemoComments - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1ListMemoCommentsResponse' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name - description: |- - Required. The resource name of the memo. - Format: memos/{memo} - in: path - required: true - type: string - pattern: memos/[^/]+ - - name: pageSize - description: Optional. The maximum number of comments to return. - in: query - required: false - type: integer - format: int32 - - name: pageToken - description: Optional. A page token for pagination. - in: query - required: false - type: string - - name: orderBy - description: Optional. The order to sort results by. - in: query - required: false - type: string - tags: - - MemoService - post: - summary: CreateMemoComment creates a comment for a memo. - operationId: MemoService_CreateMemoComment - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/apiv1Memo' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name - description: |- - Required. The resource name of the memo. - Format: memos/{memo} - in: path - required: true - type: string - pattern: memos/[^/]+ - - name: comment - description: Required. The comment to create. - in: body - required: true - schema: - $ref: '#/definitions/apiv1Memo' - required: - - comment - - name: commentId - description: Optional. The comment ID to use. - in: query - required: false - type: string - tags: - - MemoService - /api/v1/{name}/reactions: - get: - summary: ListMemoReactions lists reactions for a memo. - operationId: MemoService_ListMemoReactions - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1ListMemoReactionsResponse' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name - description: |- - Required. The resource name of the memo. - Format: memos/{memo} - in: path - required: true - type: string - pattern: memos/[^/]+ - - name: pageSize - description: Optional. The maximum number of reactions to return. - in: query - required: false - type: integer - format: int32 - - name: pageToken - description: Optional. A page token for pagination. - in: query - required: false - type: string - tags: - - MemoService - post: - summary: UpsertMemoReaction upserts a reaction for a memo. - operationId: MemoService_UpsertMemoReaction - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1Reaction' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name - description: |- - Required. The resource name of the memo. - Format: memos/{memo} - in: path - required: true - type: string - pattern: memos/[^/]+ - - name: body - in: body - required: true - schema: - $ref: '#/definitions/MemoServiceUpsertMemoReactionBody' - tags: - - MemoService - /api/v1/{name}/relations: - get: - summary: ListMemoRelations lists relations for a memo. - operationId: MemoService_ListMemoRelations - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1ListMemoRelationsResponse' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name - description: |- - Required. The resource name of the memo. - Format: memos/{memo} - in: path - required: true - type: string - pattern: memos/[^/]+ - - name: pageSize - description: Optional. The maximum number of relations to return. - in: query - required: false - type: integer - format: int32 - - name: pageToken - description: Optional. A page token for pagination. - in: query - required: false - type: string - tags: - - MemoService - patch: - summary: SetMemoRelations sets relations for a memo. - operationId: MemoService_SetMemoRelations - responses: - "200": - description: A successful response. - schema: - type: object - properties: {} - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name - description: |- - Required. The resource name of the memo. - Format: memos/{memo} - in: path - required: true - type: string - pattern: memos/[^/]+ - - name: body - in: body - required: true - schema: - $ref: '#/definitions/MemoServiceSetMemoRelationsBody' - tags: - - MemoService - /api/v1/{name}:getSetting: - get: - summary: GetUserSetting returns the user setting. - operationId: UserService_GetUserSetting - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/apiv1UserSetting' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name - description: |- - Required. The resource name of the user. - Format: users/{user} - in: path - required: true - type: string - pattern: users/[^/]+ - tags: - - UserService - /api/v1/{name}:getStats: - get: - summary: GetUserStats returns statistics for a specific user. - operationId: UserService_GetUserStats - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1UserStats' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name - description: |- - Required. The resource name of the user. - Format: users/{user} - in: path - required: true - type: string - pattern: users/[^/]+ - tags: - - UserService - /api/v1/{parent}/accessTokens: - get: - summary: ListUserAccessTokens returns a list of access tokens for a user. - operationId: UserService_ListUserAccessTokens - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1ListUserAccessTokensResponse' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: parent - description: |- - Required. The parent resource whose access tokens will be listed. - Format: users/{user} - in: path - required: true - type: string - pattern: users/[^/]+ - - name: pageSize - description: Optional. The maximum number of access tokens to return. - in: query - required: false - type: integer - format: int32 - - name: pageToken - description: Optional. A page token for pagination. - in: query - required: false - type: string - 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/v1UserAccessToken' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: parent - description: |- - Required. The parent resource where this access token will be created. - Format: users/{user} - in: path - required: true - type: string - pattern: users/[^/]+ - - name: accessToken - description: Required. The access token to create. - in: body - required: true - schema: - $ref: '#/definitions/v1UserAccessToken' - required: - - accessToken - - name: accessTokenId - description: Optional. The access token ID to use. - in: query - required: false - type: string - tags: - - UserService - /api/v1/{parent}/inboxes: - get: - summary: ListInboxes lists inboxes for a user. - operationId: InboxService_ListInboxes - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1ListInboxesResponse' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: parent - description: |- - Required. The parent resource whose inboxes will be listed. - Format: users/{user} - in: path - required: true - type: string - pattern: users/[^/]+ - - name: pageSize - description: |- - Optional. The maximum number of inboxes to return. - The service may return fewer than this value. - If unspecified, at most 50 inboxes will be returned. - The maximum value is 1000; values above 1000 will be coerced to 1000. - in: query - required: false - type: integer - format: int32 - - name: pageToken - description: |- - Optional. A page token, received from a previous `ListInboxes` call. - Provide this to retrieve the subsequent page. - in: query - required: false - type: string - - name: filter - description: |- - Optional. Filter to apply to the list results. - Example: "status=UNREAD" or "type=MEMO_COMMENT" - Supported operators: =, != - Supported fields: status, type, sender, create_time - in: query - required: false - type: string - - name: orderBy - description: |- - Optional. The order to sort results by. - Example: "create_time desc" or "status asc" - in: query - required: false - type: string - tags: - - InboxService - /api/v1/{parent}/memos: - get: - summary: ListMemos lists memos with pagination and filter. - operationId: MemoService_ListMemos2 - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1ListMemosResponse' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: parent - description: |- - Optional. The parent is the owner of the memos. - If not specified or `users/-`, it will list all memos. - Format: users/{user} - in: path - required: true - type: string - pattern: users/[^/]+ - - name: pageSize - description: |- - Optional. The maximum number of memos to return. - The service may return fewer than this value. - If unspecified, at most 50 memos will be returned. - The maximum value is 1000; values above 1000 will be coerced to 1000. - in: query - required: false - type: integer - format: int32 - - name: pageToken - description: |- - Optional. A page token, received from a previous `ListMemos` call. - Provide this to retrieve the subsequent page. - in: query - required: false - type: string - - name: state - description: |- - Optional. The state of the memos to list. - Default to `NORMAL`. Set to `ARCHIVED` to list archived memos. - in: query - required: false - type: string - enum: - - STATE_UNSPECIFIED - - NORMAL - - ARCHIVED - default: STATE_UNSPECIFIED - - name: orderBy - description: |- - Optional. The order to sort results by. - Default to "display_time desc". - Example: "display_time desc" or "create_time asc" - in: query - required: false - type: string - - name: filter - description: |- - Optional. Filter to apply to the list results. - Filter is a CEL expression to filter memos. - Refer to `Shortcut.filter`. - in: query - required: false - type: string - - name: showDeleted - description: Optional. If true, show deleted memos in the response. - in: query - required: false - type: boolean - - name: oldFilter - description: |- - [Deprecated] Old filter contains some specific conditions to filter memos. - Format: "creator == 'users/{user}' && visibilities == ['PUBLIC', 'PROTECTED']" - in: query - required: false - type: string - tags: - - MemoService - /api/v1/{parent}/sessions: - get: - summary: ListUserSessions returns a list of active sessions for a user. - operationId: UserService_ListUserSessions - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1ListUserSessionsResponse' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: parent - description: |- - Required. The resource name of the parent. - Format: users/{user} - in: path - required: true - type: string - pattern: users/[^/]+ - tags: - - UserService - /api/v1/{parent}/shortcuts: - get: - summary: ListShortcuts returns a list of shortcuts for a user. - operationId: ShortcutService_ListShortcuts - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1ListShortcutsResponse' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: parent - description: |- - Required. The parent resource where shortcuts are listed. - Format: users/{user} - in: path - required: true - type: string - pattern: users/[^/]+ - tags: - - ShortcutService - post: - summary: CreateShortcut creates a new shortcut for a user. - operationId: ShortcutService_CreateShortcut - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/apiv1Shortcut' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: parent - description: |- - Required. The parent resource where this shortcut will be created. - Format: users/{user} - in: path - required: true - type: string - pattern: users/[^/]+ - - name: shortcut - description: Required. The shortcut to create. - in: body - required: true - schema: - $ref: '#/definitions/apiv1Shortcut' - required: - - shortcut - - name: validateOnly - description: Optional. If set, validate the request, but do not actually create the shortcut. - in: query - required: false - type: boolean - tags: - - ShortcutService - /api/v1/{parent}/tags/{tag}: - delete: - summary: DeleteMemoTag deletes a tag for a memo. - operationId: MemoService_DeleteMemoTag - responses: - "200": - description: A successful response. - schema: - type: object - properties: {} - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: parent - description: |- - Required. The parent, who owns the tags. - Format: memos/{memo}. Use "memos/-" to delete all tags. - in: path - required: true - type: string - pattern: memos/[^/]+ - - name: tag - description: Required. The tag name to delete. - in: path - required: true - type: string - - name: deleteRelatedMemos - description: Optional. Whether to delete related memos. - in: query - required: false - type: boolean - tags: - - MemoService - /api/v1/{parent}/tags:rename: - patch: - summary: RenameMemoTag renames a tag for a memo. - operationId: MemoService_RenameMemoTag - responses: - "200": - description: A successful response. - schema: - type: object - properties: {} - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: parent - description: |- - Required. The parent, who owns the tags. - Format: memos/{memo}. Use "memos/-" to rename all tags. - in: path - required: true - type: string - pattern: memos/[^/]+ - - name: body - in: body - required: true - schema: - $ref: '#/definitions/MemoServiceRenameMemoTagBody' - tags: - - MemoService - /api/v1/{parent}/webhooks: - get: - summary: ListWebhooks returns a list of webhooks for a user. - operationId: WebhookService_ListWebhooks - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1ListWebhooksResponse' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: parent - description: |- - Required. The parent resource where webhooks are listed. - Format: users/{user} - in: path - required: true - type: string - pattern: users/[^/]+ - tags: - - WebhookService - post: - summary: CreateWebhook creates a new webhook for a user. - operationId: WebhookService_CreateWebhook - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/apiv1Webhook' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: parent - description: |- - Required. The parent resource where this webhook will be created. - Format: users/{user} - in: path - required: true - type: string - pattern: users/[^/]+ - - name: webhook - description: Required. The webhook to create. - in: body - required: true - schema: - $ref: '#/definitions/apiv1Webhook' - required: - - webhook - - name: validateOnly - description: Optional. If set, validate the request, but do not actually create the webhook. - in: query - required: false - type: boolean - tags: - - WebhookService - /api/v1/{setting.name}: - patch: - summary: Updates a workspace setting. - operationId: WorkspaceService_UpdateWorkspaceSetting - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/apiv1WorkspaceSetting' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: setting.name - description: |- - The name of the workspace setting. - Format: workspace/settings/{setting} - in: path - required: true - type: string - pattern: workspace/settings/[^/]+ - - name: setting - description: The workspace setting resource which replaces the resource on the server. - in: body - required: true - schema: - type: object - properties: - generalSetting: - $ref: '#/definitions/apiv1WorkspaceGeneralSetting' - storageSetting: - $ref: '#/definitions/apiv1WorkspaceStorageSetting' - memoRelatedSetting: - $ref: '#/definitions/apiv1WorkspaceMemoRelatedSetting' - title: The workspace setting resource which replaces the resource on the server. - required: - - setting - tags: - - WorkspaceService - /api/v1/{setting.name}:updateSetting: - patch: - summary: UpdateUserSetting updates the user setting. - operationId: UserService_UpdateUserSetting - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/apiv1UserSetting' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: setting.name - description: |- - The resource name of the user whose setting this is. - Format: users/{user} - in: path - required: true - type: string - pattern: users/[^/]+ - - name: setting - description: Required. The user setting to update. - 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. - theme: - type: string - description: |- - The preferred theme of the user. - This references a CSS file in the web/public/themes/ directory. - If not set, the default theme will be used. - title: Required. The user setting to update. - required: - - setting - tags: - - UserService - /api/v1/{shortcut.name}: - patch: - summary: UpdateShortcut updates a shortcut for a user. - operationId: ShortcutService_UpdateShortcut - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/apiv1Shortcut' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: shortcut.name - description: |- - The resource name of the shortcut. - Format: users/{user}/shortcuts/{shortcut} - in: path - required: true - type: string - pattern: users/[^/]+/shortcuts/[^/]+ - - name: shortcut - description: Required. The shortcut resource which replaces the resource on the server. - in: body - required: true - schema: - type: object - properties: - title: - type: string - description: The title of the shortcut. - filter: - type: string - description: The filter expression for the shortcut. - title: Required. The shortcut resource which replaces the resource on the server. - required: - - title - - shortcut - tags: - - ShortcutService - /api/v1/{user.name}: - patch: - summary: UpdateUser updates a user. - operationId: UserService_UpdateUser - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1User' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: user.name - description: |- - The resource name of the user. - Format: users/{user} - in: path - required: true - type: string - pattern: users/[^/]+ - - name: user - description: Required. The user to update. - in: body - required: true - schema: - type: object - properties: - role: - $ref: '#/definitions/UserRole' - description: The role of the user. - username: - type: string - description: Required. The unique username for login. - email: - type: string - description: Optional. The email address of the user. - displayName: - type: string - description: Optional. The display name of the user. - avatarUrl: - type: string - description: Optional. The avatar URL of the user. - description: - type: string - description: Optional. The description of the user. - password: - type: string - description: Input only. The password for the user. - state: - $ref: '#/definitions/v1State' - description: The state of the user. - createTime: - type: string - format: date-time - description: Output only. The creation timestamp. - readOnly: true - updateTime: - type: string - format: date-time - description: Output only. The last update timestamp. - readOnly: true - title: Required. The user to update. - required: - - role - - username - - state - - user - - name: allowMissing - description: Optional. If set to true, allows updating sensitive fields. - in: query - required: false - type: boolean - tags: - - UserService - /api/v1/{webhook.name}: - patch: - summary: UpdateWebhook updates a webhook for a user. - operationId: WebhookService_UpdateWebhook - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/apiv1Webhook' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: webhook.name - description: |- - The resource name of the webhook. - Format: users/{user}/webhooks/{webhook} - in: path - required: true - type: string - pattern: users/[^/]+/webhooks/[^/]+ - - name: webhook - description: Required. The webhook resource which replaces the resource on the server. - in: body - required: true - schema: - type: object - properties: - displayName: - type: string - description: The display name of the webhook. - url: - type: string - description: The target URL for the webhook. - title: Required. The webhook resource which replaces the resource on the server. - required: - - displayName - - url - - webhook - tags: - - WebhookService - /file/{name}/{filename}: - get: - summary: GetAttachmentBinary returns a attachment binary by name. - operationId: AttachmentService_GetAttachmentBinary - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/apiHttpBody' - default: - description: An unexpected error response. - schema: - $ref: '#/definitions/googlerpcStatus' - parameters: - - name: name - description: |- - Required. The attachment name of the attachment. - Format: attachments/{attachment} - in: path - required: true - type: string - pattern: attachments/[^/]+ - - name: filename - description: The filename of the attachment. Mainly used for downloading. - in: path - required: true - type: string - - name: thumbnail - description: Optional. A flag indicating if the thumbnail version of the attachment should be returned. - in: query - required: false - type: boolean - tags: - - AttachmentService -definitions: - ActivityLevel: - type: string - enum: - - LEVEL_UNSPECIFIED - - INFO - - WARN - - ERROR - default: LEVEL_UNSPECIFIED - description: |- - Activity levels. - - - LEVEL_UNSPECIFIED: Unspecified level. - - INFO: Info level. - - WARN: Warn level. - - ERROR: Error level. - CreateSessionRequestPasswordCredentials: - type: object - properties: - username: - type: string - description: |- - The username to sign in with. - Required field for password-based authentication. - password: - type: string - description: |- - The password to sign in with. - Required field for password-based authentication. - description: Nested message for password-based authentication credentials. - required: - - username - - password - CreateSessionRequestSSOCredentials: - type: object - properties: - idpId: - type: integer - format: int32 - description: |- - The ID of the SSO provider. - Required field to identify the SSO provider. - code: - type: string - description: |- - The authorization code from the SSO provider. - Required field for completing the SSO flow. - redirectUri: - type: string - description: |- - The redirect URI used in the SSO flow. - Required field for security validation. - description: Nested message for SSO authentication credentials. - required: - - idpId - - code - - redirectUri - ListNodeKind: - type: string - enum: - - KIND_UNSPECIFIED - - ORDERED - - UNORDERED - - DESCRIPTION - default: KIND_UNSPECIFIED - MemoServiceRenameMemoTagBody: - type: object - properties: - oldTag: - type: string - description: Required. The old tag name to rename. - newTag: - type: string - description: Required. The new tag name. - required: - - oldTag - - newTag - MemoServiceSetMemoAttachmentsBody: - type: object - properties: - attachments: - type: array - items: - type: object - $ref: '#/definitions/v1Attachment' - description: Required. The attachments to set for the memo. - required: - - attachments - MemoServiceSetMemoRelationsBody: - type: object - properties: - relations: - type: array - items: - type: object - $ref: '#/definitions/v1MemoRelation' - description: Required. The relations to set for the memo. - required: - - relations - MemoServiceUpsertMemoReactionBody: - type: object - properties: - reaction: - $ref: '#/definitions/v1Reaction' - description: Required. The reaction to upsert. - required: - - reaction - TableNodeRow: - type: object - properties: - cells: - type: array - items: - type: object - $ref: '#/definitions/v1Node' - UserRole: - type: string - enum: - - ROLE_UNSPECIFIED - - HOST - - ADMIN - - USER - default: ROLE_UNSPECIFIED - description: |- - User role enumeration. - - - ROLE_UNSPECIFIED: Unspecified role. - - HOST: Host role with full system access. - - ADMIN: Admin role with administrative privileges. - - USER: Regular user role. - UserStatsMemoTypeStats: - type: object - properties: - linkCount: - type: integer - format: int32 - codeCount: - type: integer - format: int32 - todoCount: - type: integer - format: int32 - undoCount: - type: integer - format: int32 - description: Memo type statistics. - WorkspaceStorageSettingS3Config: - type: object - properties: - accessKeyId: - type: string - accessKeySecret: - type: string - endpoint: - type: string - region: - type: string - bucket: - type: string - usePathStyle: - type: boolean - title: 'Reference: https://developers.cloudflare.com/r2/examples/aws/aws-sdk-go/' - apiHttpBody: - type: object - properties: - contentType: - type: string - description: The HTTP Content-Type header value specifying the content type of the body. - data: - type: string - format: byte - description: The HTTP request/response body as raw binary. - extensions: - type: array - items: - type: object - $ref: '#/definitions/protobufAny' - description: |- - Application specific response metadata. Must be set in the first response - for streaming APIs. - description: |- - Message that represents an arbitrary HTTP body. It should only be used for - payload formats that can't be represented as JSON, such as raw binary or - an HTML page. - - - This message can be used both in streaming and non-streaming API methods in - the request as well as the response. - - It can be used as a top-level request field, which is convenient if one - wants to extract parameters from either the URL or HTTP template into the - request fields and also want access to the raw HTTP body. - - Example: - - message GetResourceRequest { - // A unique request id. - string request_id = 1; - - // The raw HTTP body is bound to this field. - google.api.HttpBody http_body = 2; - - } - - service ResourceService { - rpc GetResource(GetResourceRequest) - returns (google.api.HttpBody); - rpc UpdateResource(google.api.HttpBody) - returns (google.protobuf.Empty); - - } - - Example with streaming methods: - - service CaldavService { - rpc GetCalendar(stream google.api.HttpBody) - returns (stream google.api.HttpBody); - rpc UpdateCalendar(stream google.api.HttpBody) - returns (stream google.api.HttpBody); - - } - - Use of this type only changes how the request and response bodies are - handled, all other features will continue to work unchanged. - apiv1ActivityMemoCommentPayload: - type: object - properties: - memo: - type: string - title: |- - The memo name of comment. - Format: memos/{memo} - relatedMemo: - type: string - title: |- - The name of related memo. - Format: memos/{memo} - description: ActivityMemoCommentPayload represents the payload of a memo comment activity. - apiv1ActivityPayload: - type: object - properties: - memoComment: - $ref: '#/definitions/apiv1ActivityMemoCommentPayload' - description: Memo comment activity payload. - apiv1FieldMapping: - type: object - properties: - identifier: - type: string - displayName: - type: string - email: - type: string - avatarUrl: - type: string - apiv1IdentityProvider: - type: object - properties: - name: - type: string - title: |- - The resource name of the identity provider. - Format: identityProviders/{idp} - type: - $ref: '#/definitions/apiv1IdentityProviderType' - description: Required. The type of the identity provider. - title: - type: string - description: Required. The display title of the identity provider. - identifierFilter: - type: string - description: Optional. Filter applied to user identifiers. - config: - $ref: '#/definitions/apiv1IdentityProviderConfig' - description: Required. Configuration for the identity provider. - required: - - type - - title - - config - apiv1IdentityProviderConfig: - type: object - properties: - oauth2Config: - $ref: '#/definitions/apiv1OAuth2Config' - apiv1IdentityProviderType: - type: string - enum: - - TYPE_UNSPECIFIED - - OAUTH2 - default: TYPE_UNSPECIFIED - description: ' - OAUTH2: OAuth2 identity provider.' - apiv1Location: - type: object - properties: - placeholder: - type: string - description: A placeholder text for the location. - latitude: - type: number - format: double - description: The latitude of the location. - longitude: - type: number - format: double - description: The longitude of the location. - apiv1Memo: - type: object - properties: - name: - type: string - description: |- - The resource name of the memo. - Format: memos/{memo}, memo is the user defined id or uuid. - state: - $ref: '#/definitions/v1State' - description: The state of the memo. - creator: - type: string - title: |- - The name of the creator. - Format: users/{user} - readOnly: true - createTime: - type: string - format: date-time - description: Output only. The creation timestamp. - readOnly: true - updateTime: - type: string - format: date-time - description: Output only. The last update timestamp. - readOnly: true - displayTime: - type: string - format: date-time - description: The display timestamp of the memo. - content: - type: string - description: Required. The content of the memo in Markdown format. - nodes: - type: array - items: - type: object - $ref: '#/definitions/v1Node' - description: Output only. The parsed nodes from the content. - readOnly: true - visibility: - $ref: '#/definitions/v1Visibility' - description: The visibility of the memo. - tags: - type: array - items: - type: string - description: Output only. The tags extracted from the content. - readOnly: true - pinned: - type: boolean - description: Whether the memo is pinned. - attachments: - type: array - items: - type: object - $ref: '#/definitions/v1Attachment' - description: Optional. The attachments of the memo. - relations: - type: array - items: - type: object - $ref: '#/definitions/v1MemoRelation' - description: Optional. The relations of the memo. - reactions: - type: array - items: - type: object - $ref: '#/definitions/v1Reaction' - description: Output only. The reactions to the memo. - readOnly: true - property: - $ref: '#/definitions/v1MemoProperty' - description: Output only. The computed properties of the memo. - readOnly: true - parent: - type: string - title: |- - Output only. The name of the parent memo. - Format: memos/{memo} - readOnly: true - snippet: - type: string - description: Output only. The snippet of the memo content. Plain text only. - readOnly: true - location: - $ref: '#/definitions/apiv1Location' - description: Optional. The location of the memo. - required: - - state - - content - - visibility - apiv1OAuth2Config: - 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/apiv1FieldMapping' - apiv1Shortcut: - type: object - properties: - name: - type: string - title: |- - The resource name of the shortcut. - Format: users/{user}/shortcuts/{shortcut} - title: - type: string - description: The title of the shortcut. - filter: - type: string - description: The filter expression for the shortcut. - required: - - title - apiv1UserSetting: - type: object - properties: - name: - type: string - title: |- - The resource name of the user whose setting this is. - Format: users/{user} - 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. - theme: - type: string - description: |- - The preferred theme of the user. - This references a CSS file in the web/public/themes/ directory. - If not set, the default theme will be used. - title: User settings message - apiv1Webhook: - type: object - properties: - name: - type: string - title: |- - The resource name of the webhook. - Format: users/{user}/webhooks/{webhook} - displayName: - type: string - description: The display name of the webhook. - url: - type: string - description: The target URL for the webhook. - required: - - displayName - - url - apiv1WorkspaceCustomProfile: - type: object - properties: - title: - type: string - description: - type: string - logoUrl: - type: string - locale: - type: string - appearance: - type: string - apiv1WorkspaceGeneralSetting: - type: object - properties: - theme: - type: string - description: |- - theme is the name of the selected theme. - This references a CSS file in the web/public/themes/ directory. - disallowUserRegistration: - type: boolean - description: disallow_user_registration disallows user registration. - disallowPasswordAuth: - type: boolean - description: disallow_password_auth disallows password authentication. - additionalScript: - type: string - description: additional_script is the additional script. - additionalStyle: - type: string - description: additional_style is the additional style. - customProfile: - $ref: '#/definitions/apiv1WorkspaceCustomProfile' - description: custom_profile is the custom profile. - weekStartDayOffset: - type: integer - format: int32 - description: |- - week_start_day_offset is the week start day offset from Sunday. - 0: Sunday, 1: Monday, 2: Tuesday, 3: Wednesday, 4: Thursday, 5: Friday, 6: Saturday - Default is Sunday. - disallowChangeUsername: - type: boolean - description: disallow_change_username disallows changing username. - disallowChangeNickname: - type: boolean - description: disallow_change_nickname disallows changing nickname. - apiv1WorkspaceMemoRelatedSetting: - type: object - properties: - disallowPublicVisibility: - type: boolean - description: disallow_public_visibility disallows set memo as public visibility. - displayWithUpdateTime: - type: boolean - description: display_with_update_time orders and displays memo with update time. - contentLengthLimit: - type: integer - format: int32 - description: content_length_limit is the limit of content length. Unit is byte. - enableDoubleClickEdit: - type: boolean - description: enable_double_click_edit enables editing on double click. - enableLinkPreview: - type: boolean - description: enable_link_preview enables links preview. - enableComment: - type: boolean - description: enable_comment enables comment. - reactions: - type: array - items: - type: string - description: reactions is the list of reactions. - disableMarkdownShortcuts: - type: boolean - description: disable_markdown_shortcuts disallow the registration of markdown shortcuts. - enableBlurNsfwContent: - type: boolean - description: enable_blur_nsfw_content enables blurring of content marked as not safe for work (NSFW). - nsfwTags: - type: array - items: - type: string - description: nsfw_tags is the list of tags that mark content as NSFW for blurring. - apiv1WorkspaceSetting: - type: object - properties: - name: - type: string - title: |- - The name of the workspace setting. - Format: workspace/settings/{setting} - generalSetting: - $ref: '#/definitions/apiv1WorkspaceGeneralSetting' - storageSetting: - $ref: '#/definitions/apiv1WorkspaceStorageSetting' - memoRelatedSetting: - $ref: '#/definitions/apiv1WorkspaceMemoRelatedSetting' - description: A workspace setting resource. - apiv1WorkspaceStorageSetting: - type: object - properties: - storageType: - $ref: '#/definitions/apiv1WorkspaceStorageSettingStorageType' - description: storage_type is the storage type. - filepathTemplate: - type: string - title: |- - The template of file path. - e.g. assets/{timestamp}_{filename} - uploadSizeLimitMb: - type: string - format: int64 - description: The max upload size in megabytes. - s3Config: - $ref: '#/definitions/WorkspaceStorageSettingS3Config' - description: The S3 config. - apiv1WorkspaceStorageSettingStorageType: - type: string - enum: - - STORAGE_TYPE_UNSPECIFIED - - DATABASE - - LOCAL - - S3 - default: STORAGE_TYPE_UNSPECIFIED - description: |2- - - DATABASE: DATABASE is the database storage type. - - LOCAL: LOCAL is the local storage type. - - S3: S3 is the S3 storage type. - 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 - description: |- - A URL/resource name that uniquely identifies the type of the serialized - protocol buffer message. This string must contain at least - one "/" character. The last segment of the URL's path must represent - the fully qualified name of the type (as in - `path/google.protobuf.Duration`). The name should be in a canonical form - (e.g., leading "." is not accepted). - - In practice, teams usually precompile into the binary all types that they - expect it to use in the context of Any. However, for URLs which use the - scheme `http`, `https`, or no scheme, one can optionally set up a type - server that maps type URLs to message definitions as follows: - - * If no scheme is provided, `https` is assumed. - * An HTTP GET on the URL must yield a [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the official - protobuf release, and it is not used for type URLs beginning with - type.googleapis.com. As of May 2023, there are no widely used type server - implementations and no plans to implement one. - - Schemes other than `http`, `https` (or the empty scheme) might be - used with implementation specific semantics. - additionalProperties: {} - description: |- - `Any` contains an arbitrary serialized protocol buffer message along with a - URL that describes the type of the serialized message. - - Protobuf library provides support to pack/unpack Any values in the form - of utility functions or additional generated methods of the Any type. - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by default use - 'type.googleapis.com/full.type.name' as the type URL and the unpack - methods only use the fully qualified type name after the last '/' - in the type URL, for example "foo.bar.com/x/y.z" will yield type - name "y.z". - - JSON - ==== - The JSON representation of an `Any` value uses the regular - representation of the deserialized, embedded message, with an - additional field `@type` which contains the type URL. Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom JSON - representation, that representation will be embedded adding a field - `value` which holds the custom JSON in addition to the `@type` - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - v1Activity: - type: object - properties: - name: - type: string - title: |- - The name of the activity. - Format: activities/{id} - readOnly: true - creator: - type: string - title: |- - The name of the creator. - Format: users/{user} - readOnly: true - type: - $ref: '#/definitions/v1ActivityType' - description: The type of the activity. - readOnly: true - level: - $ref: '#/definitions/ActivityLevel' - description: The level of the activity. - readOnly: true - createTime: - type: string - format: date-time - description: The create time of the activity. - readOnly: true - payload: - $ref: '#/definitions/apiv1ActivityPayload' - description: The payload of the activity. - readOnly: true - v1ActivityType: - type: string - enum: - - TYPE_UNSPECIFIED - - MEMO_COMMENT - - VERSION_UPDATE - default: TYPE_UNSPECIFIED - description: |- - Activity types. - - - TYPE_UNSPECIFIED: Unspecified type. - - MEMO_COMMENT: Memo comment activity. - - VERSION_UPDATE: Version update activity. - v1Attachment: - type: object - properties: - name: - type: string - title: |- - The name of the attachment. - Format: attachments/{attachment} - createTime: - type: string - format: date-time - description: Output only. The creation timestamp. - readOnly: true - filename: - type: string - description: The filename of the attachment. - content: - type: string - format: byte - description: Input only. The content of the attachment. - externalLink: - type: string - description: Optional. The external link of the attachment. - type: - type: string - description: The MIME type of the attachment. - size: - type: string - format: int64 - description: Output only. The size of the attachment in bytes. - readOnly: true - memo: - type: string - title: |- - Optional. The related memo. Refer to `Memo.name`. - Format: memos/{memo} - required: - - filename - - type - v1AutoLinkNode: - type: object - properties: - url: - type: string - isRawText: - type: boolean - v1BlockquoteNode: - type: object - properties: - children: - type: array - items: - type: object - $ref: '#/definitions/v1Node' - v1BoldItalicNode: - type: object - properties: - symbol: - type: string - content: - type: string - v1BoldNode: - type: object - properties: - symbol: - type: string - children: - type: array - items: - type: object - $ref: '#/definitions/v1Node' - v1CodeBlockNode: - type: object - properties: - language: - type: string - content: - type: string - v1CodeNode: - type: object - properties: - content: - type: string - v1CreateSessionRequest: - type: object - properties: - passwordCredentials: - $ref: '#/definitions/CreateSessionRequestPasswordCredentials' - description: Username and password authentication method. - ssoCredentials: - $ref: '#/definitions/CreateSessionRequestSSOCredentials' - description: SSO provider authentication method. - v1CreateSessionResponse: - type: object - properties: - user: - $ref: '#/definitions/v1User' - description: The authenticated user information. - lastAccessedAt: - type: string - format: date-time - description: |- - Last time the session was accessed. - Used for sliding expiration calculation (last_accessed_time + 2 weeks). - v1EmbeddedContentNode: - type: object - properties: - resourceName: - type: string - description: The resource name of the embedded content. - params: - type: string - description: Additional parameters for the embedded content. - v1EscapingCharacterNode: - type: object - properties: - symbol: - type: string - v1GetCurrentSessionResponse: - type: object - properties: - user: - $ref: '#/definitions/v1User' - lastAccessedAt: - type: string - format: date-time - description: |- - Last time the session was accessed. - Used for sliding expiration calculation (last_accessed_time + 2 weeks). - v1HTMLElementNode: - type: object - properties: - tagName: - type: string - attributes: - type: object - additionalProperties: - type: string - v1HeadingNode: - type: object - properties: - level: - type: integer - format: int32 - children: - type: array - items: - type: object - $ref: '#/definitions/v1Node' - v1HighlightNode: - type: object - properties: - content: - type: string - v1HorizontalRuleNode: - type: object - properties: - symbol: - type: string - v1ImageNode: - type: object - properties: - altText: - type: string - url: - type: string - v1Inbox: - type: object - properties: - name: - type: string - title: |- - The resource name of the inbox. - Format: inboxes/{inbox} - sender: - type: string - title: |- - The sender of the inbox notification. - Format: users/{user} - readOnly: true - receiver: - type: string - title: |- - The receiver of the inbox notification. - Format: users/{user} - readOnly: true - status: - $ref: '#/definitions/v1InboxStatus' - description: The status of the inbox notification. - createTime: - type: string - format: date-time - description: Output only. The creation timestamp. - readOnly: true - type: - $ref: '#/definitions/v1InboxType' - description: The type of the inbox notification. - readOnly: true - activityId: - type: integer - format: int32 - description: Optional. The activity ID associated with this inbox notification. - v1InboxStatus: - type: string - enum: - - STATUS_UNSPECIFIED - - UNREAD - - ARCHIVED - default: STATUS_UNSPECIFIED - description: |- - Status enumeration for inbox notifications. - - - STATUS_UNSPECIFIED: Unspecified status. - - UNREAD: The notification is unread. - - ARCHIVED: The notification is archived. - v1InboxType: - type: string - enum: - - TYPE_UNSPECIFIED - - MEMO_COMMENT - - VERSION_UPDATE - default: TYPE_UNSPECIFIED - description: |- - Type enumeration for inbox notifications. - - - TYPE_UNSPECIFIED: Unspecified type. - - MEMO_COMMENT: Memo comment notification. - - VERSION_UPDATE: Version update notification. - v1ItalicNode: - type: object - properties: - symbol: - type: string - children: - type: array - items: - type: object - $ref: '#/definitions/v1Node' - v1LineBreakNode: - type: object - v1LinkMetadata: - type: object - properties: - title: - type: string - description: The title of the linked page. - description: - type: string - description: The description of the linked page. - image: - type: string - description: The URL of the preview image for the linked page. - v1LinkNode: - type: object - properties: - content: - type: array - items: - type: object - $ref: '#/definitions/v1Node' - url: - type: string - v1ListActivitiesResponse: - type: object - properties: - activities: - type: array - items: - type: object - $ref: '#/definitions/v1Activity' - description: The activities. - nextPageToken: - type: string - description: |- - A token to retrieve the next page of results. - Pass this value in the page_token field in the subsequent call to `ListActivities` - method to retrieve the next page of results. - v1ListAllUserStatsResponse: - type: object - properties: - userStats: - type: array - items: - type: object - $ref: '#/definitions/v1UserStats' - description: The list of user statistics. - nextPageToken: - type: string - description: A token for the next page of results. - totalSize: - type: integer - format: int32 - description: The total count of user statistics. - v1ListAttachmentsResponse: - type: object - properties: - attachments: - type: array - items: - type: object - $ref: '#/definitions/v1Attachment' - description: The list of attachments. - nextPageToken: - type: string - description: |- - A token that can be sent as `page_token` to retrieve the next page. - If this field is omitted, there are no subsequent pages. - totalSize: - type: integer - format: int32 - description: The total count of attachments (may be approximate). - v1ListIdentityProvidersResponse: - type: object - properties: - identityProviders: - type: array - items: - type: object - $ref: '#/definitions/apiv1IdentityProvider' - description: The list of identity providers. - v1ListInboxesResponse: - type: object - properties: - inboxes: - type: array - items: - type: object - $ref: '#/definitions/v1Inbox' - description: The list of inboxes. - nextPageToken: - type: string - description: |- - A token that can be sent as `page_token` to retrieve the next page. - If this field is omitted, there are no subsequent pages. - totalSize: - type: integer - format: int32 - description: The total count of inboxes (may be approximate). - v1ListMemoAttachmentsResponse: - type: object - properties: - attachments: - type: array - items: - type: object - $ref: '#/definitions/v1Attachment' - description: The list of attachments. - nextPageToken: - type: string - description: A token for the next page of results. - totalSize: - type: integer - format: int32 - description: The total count of attachments. - v1ListMemoCommentsResponse: - type: object - properties: - memos: - type: array - items: - type: object - $ref: '#/definitions/apiv1Memo' - description: The list of comment memos. - nextPageToken: - type: string - description: A token for the next page of results. - totalSize: - type: integer - format: int32 - description: The total count of comments. - v1ListMemoReactionsResponse: - type: object - properties: - reactions: - type: array - items: - type: object - $ref: '#/definitions/v1Reaction' - description: The list of reactions. - nextPageToken: - type: string - description: A token for the next page of results. - totalSize: - type: integer - format: int32 - description: The total count of reactions. - v1ListMemoRelationsResponse: - type: object - properties: - relations: - type: array - items: - type: object - $ref: '#/definitions/v1MemoRelation' - description: The list of relations. - nextPageToken: - type: string - description: A token for the next page of results. - totalSize: - type: integer - format: int32 - description: The total count of relations. - v1ListMemosResponse: - type: object - properties: - memos: - type: array - items: - type: object - $ref: '#/definitions/apiv1Memo' - description: The list of memos. - nextPageToken: - type: string - description: |- - A token that can be sent as `page_token` to retrieve the next page. - If this field is omitted, there are no subsequent pages. - totalSize: - type: integer - format: int32 - description: The total count of memos (may be approximate). - v1ListNode: - type: object - properties: - kind: - $ref: '#/definitions/ListNodeKind' - indent: - type: integer - format: int32 - children: - type: array - items: - type: object - $ref: '#/definitions/v1Node' - v1ListShortcutsResponse: - type: object - properties: - shortcuts: - type: array - items: - type: object - $ref: '#/definitions/apiv1Shortcut' - description: The list of shortcuts. - v1ListUserAccessTokensResponse: - type: object - properties: - accessTokens: - type: array - items: - type: object - $ref: '#/definitions/v1UserAccessToken' - description: The list of access tokens. - nextPageToken: - type: string - description: A token for the next page of results. - totalSize: - type: integer - format: int32 - description: The total count of access tokens. - v1ListUserSessionsResponse: - type: object - properties: - sessions: - type: array - items: - type: object - $ref: '#/definitions/v1UserSession' - description: The list of user sessions. - v1ListUsersResponse: - type: object - properties: - users: - type: array - items: - type: object - $ref: '#/definitions/v1User' - description: The list of users. - nextPageToken: - type: string - description: |- - A token that can be sent as `page_token` to retrieve the next page. - If this field is omitted, there are no subsequent pages. - totalSize: - type: integer - format: int32 - description: The total count of users (may be approximate). - v1ListWebhooksResponse: - type: object - properties: - webhooks: - type: array - items: - type: object - $ref: '#/definitions/apiv1Webhook' - description: The list of webhooks. - v1MathBlockNode: - type: object - properties: - content: - type: string - v1MathNode: - type: object - properties: - content: - type: string - v1MemoProperty: - type: object - properties: - hasLink: - type: boolean - hasTaskList: - type: boolean - hasCode: - type: boolean - hasIncompleteTasks: - type: boolean - description: Computed properties of a memo. - v1MemoRelation: - type: object - properties: - memo: - $ref: '#/definitions/v1MemoRelationMemo' - description: The memo in the relation. - relatedMemo: - $ref: '#/definitions/v1MemoRelationMemo' - description: The related memo. - type: - $ref: '#/definitions/v1MemoRelationType' - required: - - memo - - relatedMemo - - type - v1MemoRelationMemo: - type: object - properties: - name: - type: string - title: |- - The resource name of the memo. - Format: memos/{memo} - snippet: - type: string - description: Output only. The snippet of the memo content. Plain text only. - readOnly: true - description: Memo reference in relations. - required: - - name - v1MemoRelationType: - type: string - enum: - - TYPE_UNSPECIFIED - - REFERENCE - - COMMENT - default: TYPE_UNSPECIFIED - description: The type of the relation. - v1Node: - type: object - properties: - type: - $ref: '#/definitions/v1NodeType' - lineBreakNode: - $ref: '#/definitions/v1LineBreakNode' - description: Block nodes. - paragraphNode: - $ref: '#/definitions/v1ParagraphNode' - codeBlockNode: - $ref: '#/definitions/v1CodeBlockNode' - headingNode: - $ref: '#/definitions/v1HeadingNode' - horizontalRuleNode: - $ref: '#/definitions/v1HorizontalRuleNode' - blockquoteNode: - $ref: '#/definitions/v1BlockquoteNode' - listNode: - $ref: '#/definitions/v1ListNode' - orderedListItemNode: - $ref: '#/definitions/v1OrderedListItemNode' - unorderedListItemNode: - $ref: '#/definitions/v1UnorderedListItemNode' - taskListItemNode: - $ref: '#/definitions/v1TaskListItemNode' - mathBlockNode: - $ref: '#/definitions/v1MathBlockNode' - tableNode: - $ref: '#/definitions/v1TableNode' - embeddedContentNode: - $ref: '#/definitions/v1EmbeddedContentNode' - textNode: - $ref: '#/definitions/v1TextNode' - description: Inline nodes. - boldNode: - $ref: '#/definitions/v1BoldNode' - italicNode: - $ref: '#/definitions/v1ItalicNode' - boldItalicNode: - $ref: '#/definitions/v1BoldItalicNode' - codeNode: - $ref: '#/definitions/v1CodeNode' - imageNode: - $ref: '#/definitions/v1ImageNode' - linkNode: - $ref: '#/definitions/v1LinkNode' - autoLinkNode: - $ref: '#/definitions/v1AutoLinkNode' - tagNode: - $ref: '#/definitions/v1TagNode' - strikethroughNode: - $ref: '#/definitions/v1StrikethroughNode' - escapingCharacterNode: - $ref: '#/definitions/v1EscapingCharacterNode' - mathNode: - $ref: '#/definitions/v1MathNode' - highlightNode: - $ref: '#/definitions/v1HighlightNode' - subscriptNode: - $ref: '#/definitions/v1SubscriptNode' - superscriptNode: - $ref: '#/definitions/v1SuperscriptNode' - referencedContentNode: - $ref: '#/definitions/v1ReferencedContentNode' - spoilerNode: - $ref: '#/definitions/v1SpoilerNode' - htmlElementNode: - $ref: '#/definitions/v1HTMLElementNode' - v1NodeType: - type: string - enum: - - NODE_UNSPECIFIED - - LINE_BREAK - - PARAGRAPH - - CODE_BLOCK - - HEADING - - HORIZONTAL_RULE - - BLOCKQUOTE - - LIST - - ORDERED_LIST_ITEM - - UNORDERED_LIST_ITEM - - TASK_LIST_ITEM - - MATH_BLOCK - - TABLE - - EMBEDDED_CONTENT - - TEXT - - BOLD - - ITALIC - - BOLD_ITALIC - - CODE - - IMAGE - - LINK - - AUTO_LINK - - TAG - - STRIKETHROUGH - - ESCAPING_CHARACTER - - MATH - - HIGHLIGHT - - SUBSCRIPT - - SUPERSCRIPT - - REFERENCED_CONTENT - - SPOILER - - HTML_ELEMENT - default: NODE_UNSPECIFIED - description: |2- - - LINE_BREAK: Block nodes. - - TEXT: Inline nodes. - v1OrderedListItemNode: - type: object - properties: - number: - type: string - indent: - type: integer - format: int32 - children: - type: array - items: - type: object - $ref: '#/definitions/v1Node' - v1ParagraphNode: - type: object - properties: - children: - type: array - items: - type: object - $ref: '#/definitions/v1Node' - v1ParseMarkdownRequest: - type: object - properties: - markdown: - type: string - description: The markdown content to parse. - required: - - markdown - v1ParseMarkdownResponse: - type: object - properties: - nodes: - type: array - items: - type: object - $ref: '#/definitions/v1Node' - description: The parsed markdown nodes. - v1Reaction: - type: object - properties: - name: - type: string - title: |- - The resource name of the reaction. - Format: reactions/{reaction} - readOnly: true - creator: - type: string - title: |- - The resource name of the creator. - Format: users/{user} - readOnly: true - contentId: - type: string - title: |- - The resource name of the content. - For memo reactions, this should be the memo's resource name. - Format: memos/{memo} - reactionType: - type: string - description: "Required. The type of reaction (e.g., \"\U0001F44D\", \"❤️\", \"\U0001F604\")." - createTime: - type: string - format: date-time - description: Output only. The creation timestamp. - readOnly: true - required: - - contentId - - reactionType - v1ReferencedContentNode: - type: object - properties: - resourceName: - type: string - description: The resource name of the referenced content. - params: - type: string - description: Additional parameters for the referenced content. - v1RestoreMarkdownNodesRequest: - type: object - properties: - nodes: - type: array - items: - type: object - $ref: '#/definitions/v1Node' - description: The nodes to restore to markdown content. - required: - - nodes - v1RestoreMarkdownNodesResponse: - type: object - properties: - markdown: - type: string - description: The restored markdown content. - v1SearchUsersResponse: - type: object - properties: - users: - type: array - items: - type: object - $ref: '#/definitions/v1User' - description: The list of users matching the search query. - nextPageToken: - type: string - description: A token for the next page of results. - totalSize: - type: integer - format: int32 - description: The total count of matching users. - v1SpoilerNode: - type: object - properties: - content: - type: string - v1State: - type: string - enum: - - STATE_UNSPECIFIED - - NORMAL - - ARCHIVED - default: STATE_UNSPECIFIED - v1StrikethroughNode: - type: object - properties: - content: - type: string - v1StringifyMarkdownNodesRequest: - type: object - properties: - nodes: - type: array - items: - type: object - $ref: '#/definitions/v1Node' - description: The nodes to stringify to plain text. - required: - - nodes - v1StringifyMarkdownNodesResponse: - type: object - properties: - plainText: - type: string - description: The plain text content. - v1SubscriptNode: - type: object - properties: - content: - type: string - v1SuperscriptNode: - type: object - properties: - content: - type: string - v1TableNode: - type: object - properties: - header: - type: array - items: - type: object - $ref: '#/definitions/v1Node' - delimiter: - type: array - items: - type: string - rows: - type: array - items: - type: object - $ref: '#/definitions/TableNodeRow' - v1TagNode: - type: object - properties: - content: - type: string - v1TaskListItemNode: - type: object - properties: - symbol: - type: string - indent: - type: integer - format: int32 - complete: - type: boolean - children: - type: array - items: - type: object - $ref: '#/definitions/v1Node' - v1TextNode: - type: object - properties: - content: - type: string - v1UnorderedListItemNode: - type: object - properties: - symbol: - type: string - indent: - type: integer - format: int32 - children: - type: array - items: - type: object - $ref: '#/definitions/v1Node' - v1User: - type: object - properties: - name: - type: string - title: |- - The resource name of the user. - Format: users/{user} - role: - $ref: '#/definitions/UserRole' - description: The role of the user. - username: - type: string - description: Required. The unique username for login. - email: - type: string - description: Optional. The email address of the user. - displayName: - type: string - description: Optional. The display name of the user. - avatarUrl: - type: string - description: Optional. The avatar URL of the user. - description: - type: string - description: Optional. The description of the user. - password: - type: string - description: Input only. The password for the user. - state: - $ref: '#/definitions/v1State' - description: The state of the user. - createTime: - type: string - format: date-time - description: Output only. The creation timestamp. - readOnly: true - updateTime: - type: string - format: date-time - description: Output only. The last update timestamp. - readOnly: true - required: - - role - - username - - state - v1UserAccessToken: - type: object - properties: - name: - type: string - title: |- - The resource name of the access token. - Format: users/{user}/accessTokens/{access_token} - accessToken: - type: string - description: Output only. The access token value. - readOnly: true - description: - type: string - description: The description of the access token. - issuedAt: - type: string - format: date-time - description: Output only. The issued timestamp. - readOnly: true - expiresAt: - type: string - format: date-time - description: Optional. The expiration timestamp. - title: User access token message - v1UserSession: - type: object - properties: - name: - type: string - title: |- - The resource name of the session. - Format: users/{user}/sessions/{session} - sessionId: - type: string - description: The session ID. - readOnly: true - createTime: - type: string - format: date-time - description: The timestamp when the session was created. - readOnly: true - lastAccessedTime: - type: string - format: date-time - description: |- - The timestamp when the session was last accessed. - Used for sliding expiration calculation (last_accessed_time + 2 weeks). - readOnly: true - clientInfo: - $ref: '#/definitions/v1UserSessionClientInfo' - description: Client information associated with this session. - readOnly: true - v1UserSessionClientInfo: - type: object - properties: - userAgent: - type: string - description: User agent string of the client. - ipAddress: - type: string - description: IP address of the client. - deviceType: - type: string - description: Optional. Device type (e.g., "mobile", "desktop", "tablet"). - os: - type: string - description: Optional. Operating system (e.g., "iOS 17.0", "Windows 11"). - browser: - type: string - description: Optional. Browser name and version (e.g., "Chrome 119.0"). - v1UserStats: - type: object - properties: - name: - type: string - title: |- - The resource name of the user whose stats these are. - Format: users/{user} - memoDisplayTimestamps: - type: array - items: - type: string - format: date-time - description: The timestamps when the memos were displayed. - memoTypeStats: - $ref: '#/definitions/UserStatsMemoTypeStats' - description: The stats of memo types. - tagCount: - type: object - additionalProperties: - type: integer - format: int32 - description: The count of tags. - pinnedMemos: - type: array - items: - type: string - description: The pinned memos of the user. - totalMemoCount: - type: integer - format: int32 - description: Total memo count. - title: User statistics messages - v1Visibility: - type: string - enum: - - VISIBILITY_UNSPECIFIED - - PRIVATE - - PROTECTED - - PUBLIC - default: VISIBILITY_UNSPECIFIED - v1WorkspaceProfile: - type: object - properties: - owner: - type: string - title: |- - The name of instance owner. - Format: users/{user} - version: - type: string - description: Version is the current version of instance. - mode: - type: string - description: Mode is the instance mode (e.g. "prod", "dev" or "demo"). - instanceUrl: - type: string - description: Instance URL is the URL of the instance. - description: Workspace profile message containing basic workspace information. diff --git a/proto/gen/openapi.yaml b/proto/gen/openapi.yaml new file mode 100644 index 000000000..dceaf9192 --- /dev/null +++ b/proto/gen/openapi.yaml @@ -0,0 +1,3967 @@ +# Generated with protoc-gen-openapi +# https://github.com/google/gnostic/tree/master/cmd/protoc-gen-openapi + +openapi: 3.0.3 +info: + title: "" + version: 0.0.1 +paths: + /api/v1/activities: + get: + tags: + - ActivityService + description: ListActivities returns a list of activities. + operationId: ActivityService_ListActivities + parameters: + - name: pageSize + in: query + description: |- + The maximum number of activities to return. + The service may return fewer than this value. + If unspecified, at most 100 activities will be returned. + The maximum value is 1000; values above 1000 will be coerced to 1000. + schema: + type: integer + format: int32 + - name: pageToken + in: query + description: |- + A page token, received from a previous `ListActivities` call. + Provide this to retrieve the subsequent page. + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ListActivitiesResponse' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/activities/{activity}: + get: + tags: + - ActivityService + description: GetActivity returns the activity with the given id. + operationId: ActivityService_GetActivity + parameters: + - name: activity + in: path + description: The activity id. + required: true + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/Activity' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/attachments: + get: + tags: + - AttachmentService + description: ListAttachments lists all attachments. + operationId: AttachmentService_ListAttachments + parameters: + - name: pageSize + in: query + description: |- + Optional. The maximum number of attachments to return. + The service may return fewer than this value. + If unspecified, at most 50 attachments will be returned. + The maximum value is 1000; values above 1000 will be coerced to 1000. + schema: + type: integer + format: int32 + - name: pageToken + in: query + description: |- + Optional. A page token, received from a previous `ListAttachments` call. + Provide this to retrieve the subsequent page. + schema: + type: string + - name: filter + in: query + description: |- + Optional. Filter to apply to the list results. + Example: "type=image/png" or "filename:*.jpg" + Supported operators: =, !=, <, <=, >, >=, : + Supported fields: filename, type, size, create_time, memo + schema: + type: string + - name: orderBy + in: query + description: |- + Optional. The order to sort results by. + Example: "create_time desc" or "filename asc" + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ListAttachmentsResponse' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + post: + tags: + - AttachmentService + description: CreateAttachment creates a new attachment. + operationId: AttachmentService_CreateAttachment + parameters: + - name: attachmentId + in: query + description: |- + Optional. The attachment ID to use for this attachment. + If empty, a unique ID will be generated. + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/Attachment' + required: true + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/Attachment' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/attachments/{attachment}: + get: + tags: + - AttachmentService + description: GetAttachment returns a attachment by name. + operationId: AttachmentService_GetAttachment + parameters: + - name: attachment + in: path + description: The attachment id. + required: true + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/Attachment' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + delete: + tags: + - AttachmentService + description: DeleteAttachment deletes a attachment by name. + operationId: AttachmentService_DeleteAttachment + parameters: + - name: attachment + in: path + description: The attachment id. + required: true + schema: + type: string + responses: + "200": + description: OK + content: {} + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + patch: + tags: + - AttachmentService + description: UpdateAttachment updates a attachment. + operationId: AttachmentService_UpdateAttachment + parameters: + - name: attachment + in: path + description: The attachment id. + required: true + schema: + type: string + - name: updateMask + in: query + description: Required. The list of fields to update. + schema: + type: string + format: field-mask + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/Attachment' + required: true + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/Attachment' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/auth/sessions: + post: + tags: + - AuthService + description: |- + CreateSession authenticates a user and creates a new session. + Returns the authenticated user information upon successful authentication. + operationId: AuthService_CreateSession + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreateSessionRequest' + required: true + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/CreateSessionResponse' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/auth/sessions/current: + get: + tags: + - AuthService + description: |- + GetCurrentSession returns the current active session information. + This method is idempotent and safe, suitable for checking current session state. + operationId: AuthService_GetCurrentSession + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/GetCurrentSessionResponse' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + delete: + tags: + - AuthService + description: |- + DeleteSession terminates the current user session. + This is an idempotent operation that invalidates the user's authentication. + operationId: AuthService_DeleteSession + responses: + "200": + description: OK + content: {} + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/identityProviders: + get: + tags: + - IdentityProviderService + description: ListIdentityProviders lists identity providers. + operationId: IdentityProviderService_ListIdentityProviders + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ListIdentityProvidersResponse' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + post: + tags: + - IdentityProviderService + description: CreateIdentityProvider creates an identity provider. + operationId: IdentityProviderService_CreateIdentityProvider + parameters: + - name: identityProviderId + in: query + description: |- + Optional. The ID to use for the identity provider, which will become the final component of the resource name. + If not provided, the system will generate one. + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/IdentityProvider' + required: true + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/IdentityProvider' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/identityProviders/{identityProvider}: + get: + tags: + - IdentityProviderService + description: GetIdentityProvider gets an identity provider. + operationId: IdentityProviderService_GetIdentityProvider + parameters: + - name: identityProvider + in: path + description: The identityProvider id. + required: true + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/IdentityProvider' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + delete: + tags: + - IdentityProviderService + description: DeleteIdentityProvider deletes an identity provider. + operationId: IdentityProviderService_DeleteIdentityProvider + parameters: + - name: identityProvider + in: path + description: The identityProvider id. + required: true + schema: + type: string + responses: + "200": + description: OK + content: {} + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + patch: + tags: + - IdentityProviderService + description: UpdateIdentityProvider updates an identity provider. + operationId: IdentityProviderService_UpdateIdentityProvider + parameters: + - name: identityProvider + in: path + description: The identityProvider id. + required: true + schema: + type: string + - name: updateMask + in: query + description: |- + Required. The update mask applies to the resource. Only the top level fields of + IdentityProvider are supported. + schema: + type: string + format: field-mask + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/IdentityProvider' + required: true + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/IdentityProvider' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/inboxes/{inboxe}: + delete: + tags: + - InboxService + description: DeleteInbox deletes an inbox. + operationId: InboxService_DeleteInbox + parameters: + - name: inboxe + in: path + description: The inboxe id. + required: true + schema: + type: string + responses: + "200": + description: OK + content: {} + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + patch: + tags: + - InboxService + description: UpdateInbox updates an inbox. + operationId: InboxService_UpdateInbox + parameters: + - name: inboxe + in: path + description: The inboxe id. + required: true + schema: + type: string + - name: updateMask + in: query + description: Required. The list of fields to update. + schema: + type: string + format: field-mask + - name: allowMissing + in: query + description: Optional. If set to true, allows updating missing fields. + schema: + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/Inbox' + required: true + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/Inbox' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/markdown/links:getMetadata: + get: + tags: + - MarkdownService + description: |- + GetLinkMetadata returns metadata for a given link. + This is useful for generating link previews. + operationId: MarkdownService_GetLinkMetadata + parameters: + - name: link + in: query + description: The link URL to get metadata for. + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/LinkMetadata' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/markdown:parse: + post: + tags: + - MarkdownService + description: |- + ParseMarkdown parses the given markdown content and returns a list of nodes. + This is a utility method that transforms markdown text into structured nodes. + operationId: MarkdownService_ParseMarkdown + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ParseMarkdownRequest' + required: true + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ParseMarkdownResponse' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/markdown:restore: + post: + tags: + - MarkdownService + description: |- + RestoreMarkdownNodes restores the given nodes to markdown content. + This is the inverse operation of ParseMarkdown. + operationId: MarkdownService_RestoreMarkdownNodes + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/RestoreMarkdownNodesRequest' + required: true + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/RestoreMarkdownNodesResponse' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/markdown:stringify: + post: + tags: + - MarkdownService + description: |- + StringifyMarkdownNodes stringify the given nodes to plain text content. + This removes all markdown formatting and returns plain text. + operationId: MarkdownService_StringifyMarkdownNodes + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/StringifyMarkdownNodesRequest' + required: true + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/StringifyMarkdownNodesResponse' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/memos: + get: + tags: + - MemoService + description: ListMemos lists memos with pagination and filter. + operationId: MemoService_ListMemos + parameters: + - name: parent + in: query + description: |- + Optional. The parent is the owner of the memos. + If not specified or `users/-`, it will list all memos. + Format: users/{user} + schema: + type: string + - name: pageSize + in: query + description: |- + Optional. The maximum number of memos to return. + The service may return fewer than this value. + If unspecified, at most 50 memos will be returned. + The maximum value is 1000; values above 1000 will be coerced to 1000. + schema: + type: integer + format: int32 + - name: pageToken + in: query + description: |- + Optional. A page token, received from a previous `ListMemos` call. + Provide this to retrieve the subsequent page. + schema: + type: string + - name: state + in: query + description: |- + Optional. The state of the memos to list. + Default to `NORMAL`. Set to `ARCHIVED` to list archived memos. + schema: + enum: + - STATE_UNSPECIFIED + - NORMAL + - ARCHIVED + type: string + format: enum + - name: orderBy + in: query + description: |- + Optional. The order to sort results by. + Default to "display_time desc". + Example: "display_time desc" or "create_time asc" + schema: + type: string + - name: filter + in: query + description: |- + Optional. Filter to apply to the list results. + Filter is a CEL expression to filter memos. + Refer to `Shortcut.filter`. + schema: + type: string + - name: showDeleted + in: query + description: Optional. If true, show deleted memos in the response. + schema: + type: boolean + - name: oldFilter + in: query + description: |- + [Deprecated] Old filter contains some specific conditions to filter memos. + Format: "creator == 'users/{user}' && visibilities == ['PUBLIC', 'PROTECTED']" + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ListMemosResponse' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + post: + tags: + - MemoService + description: CreateMemo creates a memo. + operationId: MemoService_CreateMemo + parameters: + - name: memoId + in: query + description: |- + Optional. The memo ID to use for this memo. + If empty, a unique ID will be generated. + schema: + type: string + - name: validateOnly + in: query + description: Optional. If set, validate the request but don't actually create the memo. + schema: + type: boolean + - name: requestId + in: query + description: Optional. An idempotency token. + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/Memo' + required: true + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/Memo' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/memos/{memo}: + get: + tags: + - MemoService + description: GetMemo gets a memo. + operationId: MemoService_GetMemo + parameters: + - name: memo + in: path + description: The memo id. + required: true + schema: + type: string + - name: readMask + in: query + description: |- + Optional. The fields to return in the response. + If not specified, all fields are returned. + schema: + type: string + format: field-mask + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/Memo' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + delete: + tags: + - MemoService + description: DeleteMemo deletes a memo. + operationId: MemoService_DeleteMemo + parameters: + - name: memo + in: path + description: The memo id. + required: true + schema: + type: string + - name: force + in: query + description: Optional. If set to true, the memo will be deleted even if it has associated data. + schema: + type: boolean + responses: + "200": + description: OK + content: {} + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + patch: + tags: + - MemoService + description: UpdateMemo updates a memo. + operationId: MemoService_UpdateMemo + parameters: + - name: memo + in: path + description: The memo id. + required: true + schema: + type: string + - name: updateMask + in: query + description: Required. The list of fields to update. + schema: + type: string + format: field-mask + - name: allowMissing + in: query + description: Optional. If set to true, allows updating sensitive fields. + schema: + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/Memo' + required: true + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/Memo' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/memos/{memo}/attachments: + get: + tags: + - MemoService + description: ListMemoAttachments lists attachments for a memo. + operationId: MemoService_ListMemoAttachments + parameters: + - name: memo + in: path + description: The memo id. + required: true + schema: + type: string + - name: pageSize + in: query + description: Optional. The maximum number of attachments to return. + schema: + type: integer + format: int32 + - name: pageToken + in: query + description: Optional. A page token for pagination. + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ListMemoAttachmentsResponse' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + patch: + tags: + - MemoService + description: SetMemoAttachments sets attachments for a memo. + operationId: MemoService_SetMemoAttachments + parameters: + - name: memo + in: path + description: The memo id. + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SetMemoAttachmentsRequest' + required: true + responses: + "200": + description: OK + content: {} + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/memos/{memo}/comments: + get: + tags: + - MemoService + description: ListMemoComments lists comments for a memo. + operationId: MemoService_ListMemoComments + parameters: + - name: memo + in: path + description: The memo id. + required: true + schema: + type: string + - name: pageSize + in: query + description: Optional. The maximum number of comments to return. + schema: + type: integer + format: int32 + - name: pageToken + in: query + description: Optional. A page token for pagination. + schema: + type: string + - name: orderBy + in: query + description: Optional. The order to sort results by. + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ListMemoCommentsResponse' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + post: + tags: + - MemoService + description: CreateMemoComment creates a comment for a memo. + operationId: MemoService_CreateMemoComment + parameters: + - name: memo + in: path + description: The memo id. + required: true + schema: + type: string + - name: commentId + in: query + description: Optional. The comment ID to use. + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/Memo' + required: true + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/Memo' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/memos/{memo}/reactions: + get: + tags: + - MemoService + description: ListMemoReactions lists reactions for a memo. + operationId: MemoService_ListMemoReactions + parameters: + - name: memo + in: path + description: The memo id. + required: true + schema: + type: string + - name: pageSize + in: query + description: Optional. The maximum number of reactions to return. + schema: + type: integer + format: int32 + - name: pageToken + in: query + description: Optional. A page token for pagination. + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ListMemoReactionsResponse' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + post: + tags: + - MemoService + description: UpsertMemoReaction upserts a reaction for a memo. + operationId: MemoService_UpsertMemoReaction + parameters: + - name: memo + in: path + description: The memo id. + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UpsertMemoReactionRequest' + required: true + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/Reaction' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/memos/{memo}/relations: + get: + tags: + - MemoService + description: ListMemoRelations lists relations for a memo. + operationId: MemoService_ListMemoRelations + parameters: + - name: memo + in: path + description: The memo id. + required: true + schema: + type: string + - name: pageSize + in: query + description: Optional. The maximum number of relations to return. + schema: + type: integer + format: int32 + - name: pageToken + in: query + description: Optional. A page token for pagination. + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ListMemoRelationsResponse' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + patch: + tags: + - MemoService + description: SetMemoRelations sets relations for a memo. + operationId: MemoService_SetMemoRelations + parameters: + - name: memo + in: path + description: The memo id. + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SetMemoRelationsRequest' + required: true + responses: + "200": + description: OK + content: {} + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/memos/{memo}/tags/{tag}: + delete: + tags: + - MemoService + description: DeleteMemoTag deletes a tag for a memo. + operationId: MemoService_DeleteMemoTag + parameters: + - name: tag + in: path + description: Required. The tag name to delete. + required: true + schema: + type: string + - name: memo + in: path + description: The memo id. + required: true + schema: + type: string + - name: tag + in: path + description: The tag id. + required: true + schema: + type: string + - name: deleteRelatedMemos + in: query + description: Optional. Whether to delete related memos. + schema: + type: boolean + responses: + "200": + description: OK + content: {} + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/memos/{memo}/tags:rename: + patch: + tags: + - MemoService + description: RenameMemoTag renames a tag for a memo. + operationId: MemoService_RenameMemoTag + parameters: + - name: memo + in: path + description: The memo id. + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/RenameMemoTagRequest' + required: true + responses: + "200": + description: OK + content: {} + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/reactions/{reaction}: + delete: + tags: + - MemoService + description: DeleteMemoReaction deletes a reaction for a memo. + operationId: MemoService_DeleteMemoReaction + parameters: + - name: reaction + in: path + description: The reaction id. + required: true + schema: + type: string + responses: + "200": + description: OK + content: {} + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/users: + get: + tags: + - UserService + description: ListUsers returns a list of users. + operationId: UserService_ListUsers + parameters: + - name: pageSize + in: query + description: |- + Optional. The maximum number of users to return. + The service may return fewer than this value. + If unspecified, at most 50 users will be returned. + The maximum value is 1000; values above 1000 will be coerced to 1000. + schema: + type: integer + format: int32 + - name: pageToken + in: query + description: |- + Optional. A page token, received from a previous `ListUsers` call. + Provide this to retrieve the subsequent page. + schema: + type: string + - name: filter + in: query + description: |- + Optional. Filter to apply to the list results. + Example: "state=ACTIVE" or "role=USER" or "email:@example.com" + Supported operators: =, !=, <, <=, >, >=, : + Supported fields: username, email, role, state, create_time, update_time + schema: + type: string + - name: orderBy + in: query + description: |- + Optional. The order to sort results by. + Example: "create_time desc" or "username asc" + schema: + type: string + - name: showDeleted + in: query + description: Optional. If true, show deleted users in the response. + schema: + type: boolean + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ListUsersResponse' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + post: + tags: + - UserService + description: CreateUser creates a new user. + operationId: UserService_CreateUser + parameters: + - name: userId + in: query + description: |- + Optional. The user ID to use for this user. + If empty, a unique ID will be generated. + Must match the pattern [a-z0-9-]+ + schema: + type: string + - name: validateOnly + in: query + description: Optional. If set, validate the request but don't actually create the user. + schema: + type: boolean + - name: requestId + in: query + description: |- + Optional. An idempotency token that can be used to ensure that multiple + requests to create a user have the same result. + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/User' + required: true + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/User' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/users/{user}: + get: + tags: + - UserService + description: GetUser gets a user by name. + operationId: UserService_GetUser + parameters: + - name: user + in: path + description: The user id. + required: true + schema: + type: string + - name: readMask + in: query + description: |- + Optional. The fields to return in the response. + If not specified, all fields are returned. + schema: + type: string + format: field-mask + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/User' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + delete: + tags: + - UserService + description: DeleteUser deletes a user. + operationId: UserService_DeleteUser + parameters: + - name: user + in: path + description: The user id. + required: true + schema: + type: string + - name: force + in: query + description: Optional. If set to true, the user will be deleted even if they have associated data. + schema: + type: boolean + responses: + "200": + description: OK + content: {} + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + patch: + tags: + - UserService + description: UpdateUser updates a user. + operationId: UserService_UpdateUser + parameters: + - name: user + in: path + description: The user id. + required: true + schema: + type: string + - name: updateMask + in: query + description: Required. The list of fields to update. + schema: + type: string + format: field-mask + - name: allowMissing + in: query + description: Optional. If set to true, allows updating sensitive fields. + schema: + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/User' + required: true + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/User' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/users/{user}/accessTokens: + get: + tags: + - UserService + description: ListUserAccessTokens returns a list of access tokens for a user. + operationId: UserService_ListUserAccessTokens + parameters: + - name: user + in: path + description: The user id. + required: true + schema: + type: string + - name: pageSize + in: query + description: Optional. The maximum number of access tokens to return. + schema: + type: integer + format: int32 + - name: pageToken + in: query + description: Optional. A page token for pagination. + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ListUserAccessTokensResponse' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + post: + tags: + - UserService + description: CreateUserAccessToken creates a new access token for a user. + operationId: UserService_CreateUserAccessToken + parameters: + - name: user + in: path + description: The user id. + required: true + schema: + type: string + - name: accessTokenId + in: query + description: Optional. The access token ID to use. + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UserAccessToken' + required: true + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/UserAccessToken' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/users/{user}/accessTokens/{accessToken}: + delete: + tags: + - UserService + description: DeleteUserAccessToken deletes an access token. + operationId: UserService_DeleteUserAccessToken + parameters: + - name: user + in: path + description: The user id. + required: true + schema: + type: string + - name: accessToken + in: path + description: The accessToken id. + required: true + schema: + type: string + responses: + "200": + description: OK + content: {} + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/users/{user}/avatar: + get: + tags: + - UserService + description: GetUserAvatar gets the avatar of a user. + operationId: UserService_GetUserAvatar + parameters: + - name: user + in: path + description: The user id. + required: true + schema: + type: string + responses: + "200": + description: OK + content: + '*/*': {} + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/users/{user}/inboxes: + get: + tags: + - InboxService + description: ListInboxes lists inboxes for a user. + operationId: InboxService_ListInboxes + parameters: + - name: user + in: path + description: The user id. + required: true + schema: + type: string + - name: pageSize + in: query + description: |- + Optional. The maximum number of inboxes to return. + The service may return fewer than this value. + If unspecified, at most 50 inboxes will be returned. + The maximum value is 1000; values above 1000 will be coerced to 1000. + schema: + type: integer + format: int32 + - name: pageToken + in: query + description: |- + Optional. A page token, received from a previous `ListInboxes` call. + Provide this to retrieve the subsequent page. + schema: + type: string + - name: filter + in: query + description: |- + Optional. Filter to apply to the list results. + Example: "status=UNREAD" or "type=MEMO_COMMENT" + Supported operators: =, != + Supported fields: status, type, sender, create_time + schema: + type: string + - name: orderBy + in: query + description: |- + Optional. The order to sort results by. + Example: "create_time desc" or "status asc" + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ListInboxesResponse' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/users/{user}/memos: + get: + tags: + - MemoService + description: ListMemos lists memos with pagination and filter. + operationId: MemoService_ListMemos + parameters: + - name: user + in: path + description: The user id. + required: true + schema: + type: string + - name: pageSize + in: query + description: |- + Optional. The maximum number of memos to return. + The service may return fewer than this value. + If unspecified, at most 50 memos will be returned. + The maximum value is 1000; values above 1000 will be coerced to 1000. + schema: + type: integer + format: int32 + - name: pageToken + in: query + description: |- + Optional. A page token, received from a previous `ListMemos` call. + Provide this to retrieve the subsequent page. + schema: + type: string + - name: state + in: query + description: |- + Optional. The state of the memos to list. + Default to `NORMAL`. Set to `ARCHIVED` to list archived memos. + schema: + enum: + - STATE_UNSPECIFIED + - NORMAL + - ARCHIVED + type: string + format: enum + - name: orderBy + in: query + description: |- + Optional. The order to sort results by. + Default to "display_time desc". + Example: "display_time desc" or "create_time asc" + schema: + type: string + - name: filter + in: query + description: |- + Optional. Filter to apply to the list results. + Filter is a CEL expression to filter memos. + Refer to `Shortcut.filter`. + schema: + type: string + - name: showDeleted + in: query + description: Optional. If true, show deleted memos in the response. + schema: + type: boolean + - name: oldFilter + in: query + description: |- + [Deprecated] Old filter contains some specific conditions to filter memos. + Format: "creator == 'users/{user}' && visibilities == ['PUBLIC', 'PROTECTED']" + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ListMemosResponse' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/users/{user}/sessions: + get: + tags: + - UserService + description: ListUserSessions returns a list of active sessions for a user. + operationId: UserService_ListUserSessions + parameters: + - name: user + in: path + description: The user id. + required: true + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ListUserSessionsResponse' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/users/{user}/sessions/{session}: + delete: + tags: + - UserService + description: RevokeUserSession revokes a specific session for a user. + operationId: UserService_RevokeUserSession + parameters: + - name: user + in: path + description: The user id. + required: true + schema: + type: string + - name: session + in: path + description: The session id. + required: true + schema: + type: string + responses: + "200": + description: OK + content: {} + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/users/{user}/shortcuts: + get: + tags: + - ShortcutService + description: ListShortcuts returns a list of shortcuts for a user. + operationId: ShortcutService_ListShortcuts + parameters: + - name: user + in: path + description: The user id. + required: true + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ListShortcutsResponse' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + post: + tags: + - ShortcutService + description: CreateShortcut creates a new shortcut for a user. + operationId: ShortcutService_CreateShortcut + parameters: + - name: user + in: path + description: The user id. + required: true + schema: + type: string + - name: validateOnly + in: query + description: Optional. If set, validate the request, but do not actually create the shortcut. + schema: + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/Shortcut' + required: true + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/Shortcut' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/users/{user}/shortcuts/{shortcut}: + get: + tags: + - ShortcutService + description: GetShortcut gets a shortcut by name. + operationId: ShortcutService_GetShortcut + parameters: + - name: user + in: path + description: The user id. + required: true + schema: + type: string + - name: shortcut + in: path + description: The shortcut id. + required: true + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/Shortcut' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + delete: + tags: + - ShortcutService + description: DeleteShortcut deletes a shortcut for a user. + operationId: ShortcutService_DeleteShortcut + parameters: + - name: user + in: path + description: The user id. + required: true + schema: + type: string + - name: shortcut + in: path + description: The shortcut id. + required: true + schema: + type: string + responses: + "200": + description: OK + content: {} + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + patch: + tags: + - ShortcutService + description: UpdateShortcut updates a shortcut for a user. + operationId: ShortcutService_UpdateShortcut + parameters: + - name: user + in: path + description: The user id. + required: true + schema: + type: string + - name: shortcut + in: path + description: The shortcut id. + required: true + schema: + type: string + - name: updateMask + in: query + description: Optional. The list of fields to update. + schema: + type: string + format: field-mask + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/Shortcut' + required: true + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/Shortcut' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/users/{user}/webhooks: + get: + tags: + - WebhookService + description: ListWebhooks returns a list of webhooks for a user. + operationId: WebhookService_ListWebhooks + parameters: + - name: user + in: path + description: The user id. + required: true + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ListWebhooksResponse' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + post: + tags: + - WebhookService + description: CreateWebhook creates a new webhook for a user. + operationId: WebhookService_CreateWebhook + parameters: + - name: user + in: path + description: The user id. + required: true + schema: + type: string + - name: validateOnly + in: query + description: Optional. If set, validate the request, but do not actually create the webhook. + schema: + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/Webhook' + required: true + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/Webhook' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/users/{user}/webhooks/{webhook}: + get: + tags: + - WebhookService + description: GetWebhook gets a webhook by name. + operationId: WebhookService_GetWebhook + parameters: + - name: user + in: path + description: The user id. + required: true + schema: + type: string + - name: webhook + in: path + description: The webhook id. + required: true + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/Webhook' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + delete: + tags: + - WebhookService + description: DeleteWebhook deletes a webhook for a user. + operationId: WebhookService_DeleteWebhook + parameters: + - name: user + in: path + description: The user id. + required: true + schema: + type: string + - name: webhook + in: path + description: The webhook id. + required: true + schema: + type: string + responses: + "200": + description: OK + content: {} + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + patch: + tags: + - WebhookService + description: UpdateWebhook updates a webhook for a user. + operationId: WebhookService_UpdateWebhook + parameters: + - name: user + in: path + description: The user id. + required: true + schema: + type: string + - name: webhook + in: path + description: The webhook id. + required: true + schema: + type: string + - name: updateMask + in: query + description: Optional. The list of fields to update. + schema: + type: string + format: field-mask + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/Webhook' + required: true + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/Webhook' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/users/{user}:getSetting: + get: + tags: + - UserService + description: GetUserSetting returns the user setting. + operationId: UserService_GetUserSetting + parameters: + - name: user + in: path + description: The user id. + required: true + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/UserSetting' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/users/{user}:getStats: + get: + tags: + - UserService + description: GetUserStats returns statistics for a specific user. + operationId: UserService_GetUserStats + parameters: + - name: user + in: path + description: The user id. + required: true + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/UserStats' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/users/{user}:updateSetting: + patch: + tags: + - UserService + description: UpdateUserSetting updates the user setting. + operationId: UserService_UpdateUserSetting + parameters: + - name: user + in: path + description: The user id. + required: true + schema: + type: string + - name: updateMask + in: query + description: Required. The list of fields to update. + schema: + type: string + format: field-mask + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UserSetting' + required: true + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/UserSetting' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/users:search: + get: + tags: + - UserService + description: SearchUsers searches for users based on query. + operationId: UserService_SearchUsers + parameters: + - name: query + in: query + description: Required. The search query. + schema: + type: string + - name: pageSize + in: query + description: Optional. The maximum number of users to return. + schema: + type: integer + format: int32 + - name: pageToken + in: query + description: Optional. A page token for pagination. + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/SearchUsersResponse' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/users:stats: + get: + tags: + - UserService + description: ListAllUserStats returns statistics for all users. + operationId: UserService_ListAllUserStats + parameters: + - name: pageSize + in: query + description: Optional. The maximum number of user stats to return. + schema: + type: integer + format: int32 + - name: pageToken + in: query + description: Optional. A page token for pagination. + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ListAllUserStatsResponse' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/workspace/profile: + get: + tags: + - WorkspaceService + description: Gets the workspace profile. + operationId: WorkspaceService_GetWorkspaceProfile + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/WorkspaceProfile' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/workspace/{workspace}/*: + get: + tags: + - WorkspaceService + description: Gets a workspace setting. + operationId: WorkspaceService_GetWorkspaceSetting + parameters: + - name: workspace + in: path + description: The workspace id. + required: true + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/WorkspaceSetting' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + patch: + tags: + - WorkspaceService + description: Updates a workspace setting. + operationId: WorkspaceService_UpdateWorkspaceSetting + parameters: + - name: workspace + in: path + description: The workspace id. + required: true + schema: + type: string + - name: updateMask + in: query + description: The list of fields to update. + schema: + type: string + format: field-mask + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/WorkspaceSetting' + required: true + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/WorkspaceSetting' + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /file/attachments/{attachment}/{filename: + get: + tags: + - AttachmentService + description: GetAttachmentBinary returns a attachment binary by name. + operationId: AttachmentService_GetAttachmentBinary + parameters: + - name: filename + in: path + description: The filename of the attachment. Mainly used for downloading. + required: true + schema: + type: string + - name: attachment + in: path + description: The attachment id. + required: true + schema: + type: string + - name: thumbnail + in: query + description: Optional. A flag indicating if the thumbnail version of the attachment should be returned. + schema: + type: boolean + responses: + "200": + description: OK + content: + '*/*': {} + default: + description: Default error response + content: + application/json: + schema: + $ref: '#/components/schemas/Status' +components: + schemas: + Activity: + type: object + properties: + name: + readOnly: true + type: string + description: |- + The name of the activity. + Format: activities/{id} + creator: + readOnly: true + type: string + description: |- + The name of the creator. + Format: users/{user} + type: + readOnly: true + enum: + - TYPE_UNSPECIFIED + - MEMO_COMMENT + - VERSION_UPDATE + type: string + description: The type of the activity. + format: enum + level: + readOnly: true + enum: + - LEVEL_UNSPECIFIED + - INFO + - WARN + - ERROR + type: string + description: The level of the activity. + format: enum + createTime: + readOnly: true + type: string + description: The create time of the activity. + format: date-time + payload: + readOnly: true + allOf: + - $ref: '#/components/schemas/ActivityPayload' + description: The payload of the activity. + ActivityMemoCommentPayload: + type: object + properties: + memo: + type: string + description: |- + The memo name of comment. + Format: memos/{memo} + relatedMemo: + type: string + description: |- + The name of related memo. + Format: memos/{memo} + description: ActivityMemoCommentPayload represents the payload of a memo comment activity. + ActivityPayload: + type: object + properties: + memoComment: + allOf: + - $ref: '#/components/schemas/ActivityMemoCommentPayload' + description: Memo comment activity payload. + Attachment: + required: + - filename + - type + type: object + properties: + name: + type: string + description: |- + The name of the attachment. + Format: attachments/{attachment} + createTime: + readOnly: true + type: string + description: Output only. The creation timestamp. + format: date-time + filename: + type: string + description: The filename of the attachment. + content: + writeOnly: true + type: string + description: Input only. The content of the attachment. + format: bytes + externalLink: + type: string + description: Optional. The external link of the attachment. + type: + type: string + description: The MIME type of the attachment. + size: + readOnly: true + type: string + description: Output only. The size of the attachment in bytes. + memo: + type: string + description: |- + Optional. The related memo. Refer to `Memo.name`. + Format: memos/{memo} + AutoLinkNode: + type: object + properties: + url: + type: string + isRawText: + type: boolean + BlockquoteNode: + type: object + properties: + children: + type: array + items: + $ref: '#/components/schemas/Node' + BoldItalicNode: + type: object + properties: + symbol: + type: string + content: + type: string + BoldNode: + type: object + properties: + symbol: + type: string + children: + type: array + items: + $ref: '#/components/schemas/Node' + CodeBlockNode: + type: object + properties: + language: + type: string + content: + type: string + CodeNode: + type: object + properties: + content: + type: string + CreateSessionRequest: + type: object + properties: + passwordCredentials: + allOf: + - $ref: '#/components/schemas/CreateSessionRequest_PasswordCredentials' + description: Username and password authentication method. + ssoCredentials: + allOf: + - $ref: '#/components/schemas/CreateSessionRequest_SSOCredentials' + description: SSO provider authentication method. + CreateSessionRequest_PasswordCredentials: + required: + - username + - password + type: object + properties: + username: + type: string + description: |- + The username to sign in with. + Required field for password-based authentication. + password: + type: string + description: |- + The password to sign in with. + Required field for password-based authentication. + description: Nested message for password-based authentication credentials. + CreateSessionRequest_SSOCredentials: + required: + - idpId + - code + - redirectUri + type: object + properties: + idpId: + type: integer + description: |- + The ID of the SSO provider. + Required field to identify the SSO provider. + format: int32 + code: + type: string + description: |- + The authorization code from the SSO provider. + Required field for completing the SSO flow. + redirectUri: + type: string + description: |- + The redirect URI used in the SSO flow. + Required field for security validation. + description: Nested message for SSO authentication credentials. + CreateSessionResponse: + type: object + properties: + user: + allOf: + - $ref: '#/components/schemas/User' + description: The authenticated user information. + lastAccessedAt: + type: string + description: |- + Last time the session was accessed. + Used for sliding expiration calculation (last_accessed_time + 2 weeks). + format: date-time + EmbeddedContentNode: + type: object + properties: + resourceName: + type: string + description: The resource name of the embedded content. + params: + type: string + description: Additional parameters for the embedded content. + EscapingCharacterNode: + type: object + properties: + symbol: + type: string + FieldMapping: + type: object + properties: + identifier: + type: string + displayName: + type: string + email: + type: string + avatarUrl: + type: string + GetCurrentSessionResponse: + type: object + properties: + user: + $ref: '#/components/schemas/User' + lastAccessedAt: + type: string + description: |- + Last time the session was accessed. + Used for sliding expiration calculation (last_accessed_time + 2 weeks). + format: date-time + GoogleProtobufAny: + type: object + properties: + '@type': + type: string + description: The type of the serialized message. + additionalProperties: true + description: Contains an arbitrary serialized message along with a @type that describes the type of the serialized message. + HTMLElementNode: + type: object + properties: + tagName: + type: string + attributes: + type: object + additionalProperties: + type: string + HeadingNode: + type: object + properties: + level: + type: integer + format: int32 + children: + type: array + items: + $ref: '#/components/schemas/Node' + HighlightNode: + type: object + properties: + content: + type: string + HorizontalRuleNode: + type: object + properties: + symbol: + type: string + IdentityProvider: + required: + - type + - title + - config + type: object + properties: + name: + type: string + description: |- + The resource name of the identity provider. + Format: identityProviders/{idp} + type: + enum: + - TYPE_UNSPECIFIED + - OAUTH2 + type: string + description: Required. The type of the identity provider. + format: enum + title: + type: string + description: Required. The display title of the identity provider. + identifierFilter: + type: string + description: Optional. Filter applied to user identifiers. + config: + allOf: + - $ref: '#/components/schemas/IdentityProviderConfig' + description: Required. Configuration for the identity provider. + IdentityProviderConfig: + type: object + properties: + oauth2Config: + $ref: '#/components/schemas/OAuth2Config' + ImageNode: + type: object + properties: + altText: + type: string + url: + type: string + Inbox: + type: object + properties: + name: + type: string + description: |- + The resource name of the inbox. + Format: inboxes/{inbox} + sender: + readOnly: true + type: string + description: |- + The sender of the inbox notification. + Format: users/{user} + receiver: + readOnly: true + type: string + description: |- + The receiver of the inbox notification. + Format: users/{user} + status: + enum: + - STATUS_UNSPECIFIED + - UNREAD + - ARCHIVED + type: string + description: The status of the inbox notification. + format: enum + createTime: + readOnly: true + type: string + description: Output only. The creation timestamp. + format: date-time + type: + readOnly: true + enum: + - TYPE_UNSPECIFIED + - MEMO_COMMENT + - VERSION_UPDATE + type: string + description: The type of the inbox notification. + format: enum + activityId: + type: integer + description: Optional. The activity ID associated with this inbox notification. + format: int32 + ItalicNode: + type: object + properties: + symbol: + type: string + children: + type: array + items: + $ref: '#/components/schemas/Node' + LineBreakNode: + type: object + properties: {} + LinkMetadata: + type: object + properties: + title: + type: string + description: The title of the linked page. + description: + type: string + description: The description of the linked page. + image: + type: string + description: The URL of the preview image for the linked page. + LinkNode: + type: object + properties: + content: + type: array + items: + $ref: '#/components/schemas/Node' + url: + type: string + ListActivitiesResponse: + type: object + properties: + activities: + type: array + items: + $ref: '#/components/schemas/Activity' + description: The activities. + nextPageToken: + type: string + description: |- + A token to retrieve the next page of results. + Pass this value in the page_token field in the subsequent call to `ListActivities` + method to retrieve the next page of results. + ListAllUserStatsResponse: + type: object + properties: + userStats: + type: array + items: + $ref: '#/components/schemas/UserStats' + description: The list of user statistics. + nextPageToken: + type: string + description: A token for the next page of results. + totalSize: + type: integer + description: The total count of user statistics. + format: int32 + ListAttachmentsResponse: + type: object + properties: + attachments: + type: array + items: + $ref: '#/components/schemas/Attachment' + description: The list of attachments. + nextPageToken: + type: string + description: |- + A token that can be sent as `page_token` to retrieve the next page. + If this field is omitted, there are no subsequent pages. + totalSize: + type: integer + description: The total count of attachments (may be approximate). + format: int32 + ListIdentityProvidersResponse: + type: object + properties: + identityProviders: + type: array + items: + $ref: '#/components/schemas/IdentityProvider' + description: The list of identity providers. + ListInboxesResponse: + type: object + properties: + inboxes: + type: array + items: + $ref: '#/components/schemas/Inbox' + description: The list of inboxes. + nextPageToken: + type: string + description: |- + A token that can be sent as `page_token` to retrieve the next page. + If this field is omitted, there are no subsequent pages. + totalSize: + type: integer + description: The total count of inboxes (may be approximate). + format: int32 + ListMemoAttachmentsResponse: + type: object + properties: + attachments: + type: array + items: + $ref: '#/components/schemas/Attachment' + description: The list of attachments. + nextPageToken: + type: string + description: A token for the next page of results. + totalSize: + type: integer + description: The total count of attachments. + format: int32 + ListMemoCommentsResponse: + type: object + properties: + memos: + type: array + items: + $ref: '#/components/schemas/Memo' + description: The list of comment memos. + nextPageToken: + type: string + description: A token for the next page of results. + totalSize: + type: integer + description: The total count of comments. + format: int32 + ListMemoReactionsResponse: + type: object + properties: + reactions: + type: array + items: + $ref: '#/components/schemas/Reaction' + description: The list of reactions. + nextPageToken: + type: string + description: A token for the next page of results. + totalSize: + type: integer + description: The total count of reactions. + format: int32 + ListMemoRelationsResponse: + type: object + properties: + relations: + type: array + items: + $ref: '#/components/schemas/MemoRelation' + description: The list of relations. + nextPageToken: + type: string + description: A token for the next page of results. + totalSize: + type: integer + description: The total count of relations. + format: int32 + ListMemosResponse: + type: object + properties: + memos: + type: array + items: + $ref: '#/components/schemas/Memo' + description: The list of memos. + nextPageToken: + type: string + description: |- + A token that can be sent as `page_token` to retrieve the next page. + If this field is omitted, there are no subsequent pages. + totalSize: + type: integer + description: The total count of memos (may be approximate). + format: int32 + ListNode: + type: object + properties: + kind: + enum: + - KIND_UNSPECIFIED + - ORDERED + - UNORDERED + - DESCRIPTION + type: string + format: enum + indent: + type: integer + format: int32 + children: + type: array + items: + $ref: '#/components/schemas/Node' + ListShortcutsResponse: + type: object + properties: + shortcuts: + type: array + items: + $ref: '#/components/schemas/Shortcut' + description: The list of shortcuts. + ListUserAccessTokensResponse: + type: object + properties: + accessTokens: + type: array + items: + $ref: '#/components/schemas/UserAccessToken' + description: The list of access tokens. + nextPageToken: + type: string + description: A token for the next page of results. + totalSize: + type: integer + description: The total count of access tokens. + format: int32 + ListUserSessionsResponse: + type: object + properties: + sessions: + type: array + items: + $ref: '#/components/schemas/UserSession' + description: The list of user sessions. + ListUsersResponse: + type: object + properties: + users: + type: array + items: + $ref: '#/components/schemas/User' + description: The list of users. + nextPageToken: + type: string + description: |- + A token that can be sent as `page_token` to retrieve the next page. + If this field is omitted, there are no subsequent pages. + totalSize: + type: integer + description: The total count of users (may be approximate). + format: int32 + ListWebhooksResponse: + type: object + properties: + webhooks: + type: array + items: + $ref: '#/components/schemas/Webhook' + description: The list of webhooks. + Location: + type: object + properties: + placeholder: + type: string + description: A placeholder text for the location. + latitude: + type: number + description: The latitude of the location. + format: double + longitude: + type: number + description: The longitude of the location. + format: double + MathBlockNode: + type: object + properties: + content: + type: string + MathNode: + type: object + properties: + content: + type: string + Memo: + required: + - state + - content + - visibility + type: object + properties: + name: + type: string + description: |- + The resource name of the memo. + Format: memos/{memo}, memo is the user defined id or uuid. + state: + enum: + - STATE_UNSPECIFIED + - NORMAL + - ARCHIVED + type: string + description: The state of the memo. + format: enum + creator: + readOnly: true + type: string + description: |- + The name of the creator. + Format: users/{user} + createTime: + readOnly: true + type: string + description: Output only. The creation timestamp. + format: date-time + updateTime: + readOnly: true + type: string + description: Output only. The last update timestamp. + format: date-time + displayTime: + type: string + description: The display timestamp of the memo. + format: date-time + content: + type: string + description: Required. The content of the memo in Markdown format. + nodes: + readOnly: true + type: array + items: + $ref: '#/components/schemas/Node' + description: Output only. The parsed nodes from the content. + visibility: + enum: + - VISIBILITY_UNSPECIFIED + - PRIVATE + - PROTECTED + - PUBLIC + type: string + description: The visibility of the memo. + format: enum + tags: + readOnly: true + type: array + items: + type: string + description: Output only. The tags extracted from the content. + pinned: + type: boolean + description: Whether the memo is pinned. + attachments: + type: array + items: + $ref: '#/components/schemas/Attachment' + description: Optional. The attachments of the memo. + relations: + type: array + items: + $ref: '#/components/schemas/MemoRelation' + description: Optional. The relations of the memo. + reactions: + readOnly: true + type: array + items: + $ref: '#/components/schemas/Reaction' + description: Output only. The reactions to the memo. + property: + readOnly: true + allOf: + - $ref: '#/components/schemas/Memo_Property' + description: Output only. The computed properties of the memo. + parent: + readOnly: true + type: string + description: |- + Output only. The name of the parent memo. + Format: memos/{memo} + snippet: + readOnly: true + type: string + description: Output only. The snippet of the memo content. Plain text only. + location: + allOf: + - $ref: '#/components/schemas/Location' + description: Optional. The location of the memo. + MemoRelation: + required: + - memo + - relatedMemo + - type + type: object + properties: + memo: + allOf: + - $ref: '#/components/schemas/MemoRelation_Memo' + description: The memo in the relation. + relatedMemo: + allOf: + - $ref: '#/components/schemas/MemoRelation_Memo' + description: The related memo. + type: + enum: + - TYPE_UNSPECIFIED + - REFERENCE + - COMMENT + type: string + format: enum + MemoRelation_Memo: + required: + - name + type: object + properties: + name: + type: string + description: |- + The resource name of the memo. + Format: memos/{memo} + snippet: + readOnly: true + type: string + description: Output only. The snippet of the memo content. Plain text only. + description: Memo reference in relations. + Memo_Property: + type: object + properties: + hasLink: + type: boolean + hasTaskList: + type: boolean + hasCode: + type: boolean + hasIncompleteTasks: + type: boolean + description: Computed properties of a memo. + Node: + type: object + properties: + type: + enum: + - NODE_UNSPECIFIED + - LINE_BREAK + - PARAGRAPH + - CODE_BLOCK + - HEADING + - HORIZONTAL_RULE + - BLOCKQUOTE + - LIST + - ORDERED_LIST_ITEM + - UNORDERED_LIST_ITEM + - TASK_LIST_ITEM + - MATH_BLOCK + - TABLE + - EMBEDDED_CONTENT + - TEXT + - BOLD + - ITALIC + - BOLD_ITALIC + - CODE + - IMAGE + - LINK + - AUTO_LINK + - TAG + - STRIKETHROUGH + - ESCAPING_CHARACTER + - MATH + - HIGHLIGHT + - SUBSCRIPT + - SUPERSCRIPT + - REFERENCED_CONTENT + - SPOILER + - HTML_ELEMENT + type: string + format: enum + lineBreakNode: + allOf: + - $ref: '#/components/schemas/LineBreakNode' + description: Block nodes. + paragraphNode: + $ref: '#/components/schemas/ParagraphNode' + codeBlockNode: + $ref: '#/components/schemas/CodeBlockNode' + headingNode: + $ref: '#/components/schemas/HeadingNode' + horizontalRuleNode: + $ref: '#/components/schemas/HorizontalRuleNode' + blockquoteNode: + $ref: '#/components/schemas/BlockquoteNode' + listNode: + $ref: '#/components/schemas/ListNode' + orderedListItemNode: + $ref: '#/components/schemas/OrderedListItemNode' + unorderedListItemNode: + $ref: '#/components/schemas/UnorderedListItemNode' + taskListItemNode: + $ref: '#/components/schemas/TaskListItemNode' + mathBlockNode: + $ref: '#/components/schemas/MathBlockNode' + tableNode: + $ref: '#/components/schemas/TableNode' + embeddedContentNode: + $ref: '#/components/schemas/EmbeddedContentNode' + textNode: + allOf: + - $ref: '#/components/schemas/TextNode' + description: Inline nodes. + boldNode: + $ref: '#/components/schemas/BoldNode' + italicNode: + $ref: '#/components/schemas/ItalicNode' + boldItalicNode: + $ref: '#/components/schemas/BoldItalicNode' + codeNode: + $ref: '#/components/schemas/CodeNode' + imageNode: + $ref: '#/components/schemas/ImageNode' + linkNode: + $ref: '#/components/schemas/LinkNode' + autoLinkNode: + $ref: '#/components/schemas/AutoLinkNode' + tagNode: + $ref: '#/components/schemas/TagNode' + strikethroughNode: + $ref: '#/components/schemas/StrikethroughNode' + escapingCharacterNode: + $ref: '#/components/schemas/EscapingCharacterNode' + mathNode: + $ref: '#/components/schemas/MathNode' + highlightNode: + $ref: '#/components/schemas/HighlightNode' + subscriptNode: + $ref: '#/components/schemas/SubscriptNode' + superscriptNode: + $ref: '#/components/schemas/SuperscriptNode' + referencedContentNode: + $ref: '#/components/schemas/ReferencedContentNode' + spoilerNode: + $ref: '#/components/schemas/SpoilerNode' + htmlElementNode: + $ref: '#/components/schemas/HTMLElementNode' + OAuth2Config: + 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: '#/components/schemas/FieldMapping' + OrderedListItemNode: + type: object + properties: + number: + type: string + indent: + type: integer + format: int32 + children: + type: array + items: + $ref: '#/components/schemas/Node' + ParagraphNode: + type: object + properties: + children: + type: array + items: + $ref: '#/components/schemas/Node' + ParseMarkdownRequest: + required: + - markdown + type: object + properties: + markdown: + type: string + description: The markdown content to parse. + ParseMarkdownResponse: + type: object + properties: + nodes: + type: array + items: + $ref: '#/components/schemas/Node' + description: The parsed markdown nodes. + Reaction: + required: + - contentId + - reactionType + type: object + properties: + name: + readOnly: true + type: string + description: |- + The resource name of the reaction. + Format: reactions/{reaction} + creator: + readOnly: true + type: string + description: |- + The resource name of the creator. + Format: users/{user} + contentId: + type: string + description: |- + The resource name of the content. + For memo reactions, this should be the memo's resource name. + Format: memos/{memo} + reactionType: + type: string + description: "Required. The type of reaction (e.g., \"\U0001F44D\", \"❤️\", \"\U0001F604\")." + createTime: + readOnly: true + type: string + description: Output only. The creation timestamp. + format: date-time + ReferencedContentNode: + type: object + properties: + resourceName: + type: string + description: The resource name of the referenced content. + params: + type: string + description: Additional parameters for the referenced content. + RenameMemoTagRequest: + required: + - parent + - oldTag + - newTag + type: object + properties: + parent: + type: string + description: |- + Required. The parent, who owns the tags. + Format: memos/{memo}. Use "memos/-" to rename all tags. + oldTag: + type: string + description: Required. The old tag name to rename. + newTag: + type: string + description: Required. The new tag name. + RestoreMarkdownNodesRequest: + required: + - nodes + type: object + properties: + nodes: + type: array + items: + $ref: '#/components/schemas/Node' + description: The nodes to restore to markdown content. + RestoreMarkdownNodesResponse: + type: object + properties: + markdown: + type: string + description: The restored markdown content. + SearchUsersResponse: + type: object + properties: + users: + type: array + items: + $ref: '#/components/schemas/User' + description: The list of users matching the search query. + nextPageToken: + type: string + description: A token for the next page of results. + totalSize: + type: integer + description: The total count of matching users. + format: int32 + SetMemoAttachmentsRequest: + required: + - name + - attachments + type: object + properties: + name: + type: string + description: |- + Required. The resource name of the memo. + Format: memos/{memo} + attachments: + type: array + items: + $ref: '#/components/schemas/Attachment' + description: Required. The attachments to set for the memo. + SetMemoRelationsRequest: + required: + - name + - relations + type: object + properties: + name: + type: string + description: |- + Required. The resource name of the memo. + Format: memos/{memo} + relations: + type: array + items: + $ref: '#/components/schemas/MemoRelation' + description: Required. The relations to set for the memo. + Shortcut: + required: + - title + type: object + properties: + name: + type: string + description: |- + The resource name of the shortcut. + Format: users/{user}/shortcuts/{shortcut} + title: + type: string + description: The title of the shortcut. + filter: + type: string + description: The filter expression for the shortcut. + SpoilerNode: + type: object + properties: + content: + type: string + Status: + type: object + properties: + code: + type: integer + description: The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code]. + format: int32 + message: + type: string + description: A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client. + details: + type: array + items: + $ref: '#/components/schemas/GoogleProtobufAny' + description: A list of messages that carry the error details. There is a common set of message types for APIs to use. + description: 'The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).' + StrikethroughNode: + type: object + properties: + content: + type: string + StringifyMarkdownNodesRequest: + required: + - nodes + type: object + properties: + nodes: + type: array + items: + $ref: '#/components/schemas/Node' + description: The nodes to stringify to plain text. + StringifyMarkdownNodesResponse: + type: object + properties: + plainText: + type: string + description: The plain text content. + SubscriptNode: + type: object + properties: + content: + type: string + SuperscriptNode: + type: object + properties: + content: + type: string + TableNode: + type: object + properties: + header: + type: array + items: + $ref: '#/components/schemas/Node' + delimiter: + type: array + items: + type: string + rows: + type: array + items: + $ref: '#/components/schemas/TableNode_Row' + TableNode_Row: + type: object + properties: + cells: + type: array + items: + $ref: '#/components/schemas/Node' + TagNode: + type: object + properties: + content: + type: string + TaskListItemNode: + type: object + properties: + symbol: + type: string + indent: + type: integer + format: int32 + complete: + type: boolean + children: + type: array + items: + $ref: '#/components/schemas/Node' + TextNode: + type: object + properties: + content: + type: string + UnorderedListItemNode: + type: object + properties: + symbol: + type: string + indent: + type: integer + format: int32 + children: + type: array + items: + $ref: '#/components/schemas/Node' + UpsertMemoReactionRequest: + required: + - name + - reaction + type: object + properties: + name: + type: string + description: |- + Required. The resource name of the memo. + Format: memos/{memo} + reaction: + allOf: + - $ref: '#/components/schemas/Reaction' + description: Required. The reaction to upsert. + User: + required: + - role + - username + - state + type: object + properties: + name: + type: string + description: |- + The resource name of the user. + Format: users/{user} + role: + enum: + - ROLE_UNSPECIFIED + - HOST + - ADMIN + - USER + type: string + description: The role of the user. + format: enum + username: + type: string + description: Required. The unique username for login. + email: + type: string + description: Optional. The email address of the user. + displayName: + type: string + description: Optional. The display name of the user. + avatarUrl: + type: string + description: Optional. The avatar URL of the user. + description: + type: string + description: Optional. The description of the user. + password: + writeOnly: true + type: string + description: Input only. The password for the user. + state: + enum: + - STATE_UNSPECIFIED + - NORMAL + - ARCHIVED + type: string + description: The state of the user. + format: enum + createTime: + readOnly: true + type: string + description: Output only. The creation timestamp. + format: date-time + updateTime: + readOnly: true + type: string + description: Output only. The last update timestamp. + format: date-time + UserAccessToken: + type: object + properties: + name: + type: string + description: |- + The resource name of the access token. + Format: users/{user}/accessTokens/{access_token} + accessToken: + readOnly: true + type: string + description: Output only. The access token value. + description: + type: string + description: The description of the access token. + issuedAt: + readOnly: true + type: string + description: Output only. The issued timestamp. + format: date-time + expiresAt: + type: string + description: Optional. The expiration timestamp. + format: date-time + description: User access token message + UserSession: + type: object + properties: + name: + type: string + description: |- + The resource name of the session. + Format: users/{user}/sessions/{session} + sessionId: + readOnly: true + type: string + description: The session ID. + createTime: + readOnly: true + type: string + description: The timestamp when the session was created. + format: date-time + lastAccessedTime: + readOnly: true + type: string + description: |- + The timestamp when the session was last accessed. + Used for sliding expiration calculation (last_accessed_time + 2 weeks). + format: date-time + clientInfo: + readOnly: true + allOf: + - $ref: '#/components/schemas/UserSession_ClientInfo' + description: Client information associated with this session. + UserSession_ClientInfo: + type: object + properties: + userAgent: + type: string + description: User agent string of the client. + ipAddress: + type: string + description: IP address of the client. + deviceType: + type: string + description: Optional. Device type (e.g., "mobile", "desktop", "tablet"). + os: + type: string + description: Optional. Operating system (e.g., "iOS 17.0", "Windows 11"). + browser: + type: string + description: Optional. Browser name and version (e.g., "Chrome 119.0"). + UserSetting: + type: object + properties: + name: + type: string + description: |- + The resource name of the user whose setting this is. + Format: users/{user} + 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. + theme: + type: string + description: |- + The preferred theme of the user. + This references a CSS file in the web/public/themes/ directory. + If not set, the default theme will be used. + description: User settings message + UserStats: + type: object + properties: + name: + type: string + description: |- + The resource name of the user whose stats these are. + Format: users/{user} + memoDisplayTimestamps: + type: array + items: + type: string + format: date-time + description: The timestamps when the memos were displayed. + memoTypeStats: + allOf: + - $ref: '#/components/schemas/UserStats_MemoTypeStats' + description: The stats of memo types. + tagCount: + type: object + additionalProperties: + type: integer + format: int32 + description: The count of tags. + pinnedMemos: + type: array + items: + type: string + description: The pinned memos of the user. + totalMemoCount: + type: integer + description: Total memo count. + format: int32 + description: User statistics messages + UserStats_MemoTypeStats: + type: object + properties: + linkCount: + type: integer + format: int32 + codeCount: + type: integer + format: int32 + todoCount: + type: integer + format: int32 + undoCount: + type: integer + format: int32 + description: Memo type statistics. + Webhook: + required: + - displayName + - url + type: object + properties: + name: + type: string + description: |- + The resource name of the webhook. + Format: users/{user}/webhooks/{webhook} + displayName: + type: string + description: The display name of the webhook. + url: + type: string + description: The target URL for the webhook. + WorkspaceCustomProfile: + type: object + properties: + title: + type: string + description: + type: string + logoUrl: + type: string + locale: + type: string + appearance: + type: string + WorkspaceGeneralSetting: + type: object + properties: + theme: + type: string + description: |- + theme is the name of the selected theme. + This references a CSS file in the web/public/themes/ directory. + disallowUserRegistration: + type: boolean + description: disallow_user_registration disallows user registration. + disallowPasswordAuth: + type: boolean + description: disallow_password_auth disallows password authentication. + additionalScript: + type: string + description: additional_script is the additional script. + additionalStyle: + type: string + description: additional_style is the additional style. + customProfile: + allOf: + - $ref: '#/components/schemas/WorkspaceCustomProfile' + description: custom_profile is the custom profile. + weekStartDayOffset: + type: integer + description: |- + week_start_day_offset is the week start day offset from Sunday. + 0: Sunday, 1: Monday, 2: Tuesday, 3: Wednesday, 4: Thursday, 5: Friday, 6: Saturday + Default is Sunday. + format: int32 + disallowChangeUsername: + type: boolean + description: disallow_change_username disallows changing username. + disallowChangeNickname: + type: boolean + description: disallow_change_nickname disallows changing nickname. + WorkspaceMemoRelatedSetting: + type: object + properties: + disallowPublicVisibility: + type: boolean + description: disallow_public_visibility disallows set memo as public visibility. + displayWithUpdateTime: + type: boolean + description: display_with_update_time orders and displays memo with update time. + contentLengthLimit: + type: integer + description: content_length_limit is the limit of content length. Unit is byte. + format: int32 + enableDoubleClickEdit: + type: boolean + description: enable_double_click_edit enables editing on double click. + enableLinkPreview: + type: boolean + description: enable_link_preview enables links preview. + enableComment: + type: boolean + description: enable_comment enables comment. + reactions: + type: array + items: + type: string + description: reactions is the list of reactions. + disableMarkdownShortcuts: + type: boolean + description: disable_markdown_shortcuts disallow the registration of markdown shortcuts. + enableBlurNsfwContent: + type: boolean + description: enable_blur_nsfw_content enables blurring of content marked as not safe for work (NSFW). + nsfwTags: + type: array + items: + type: string + description: nsfw_tags is the list of tags that mark content as NSFW for blurring. + WorkspaceProfile: + type: object + properties: + owner: + type: string + description: |- + The name of instance owner. + Format: users/{user} + version: + type: string + description: Version is the current version of instance. + mode: + type: string + description: Mode is the instance mode (e.g. "prod", "dev" or "demo"). + instanceUrl: + type: string + description: Instance URL is the URL of the instance. + description: Workspace profile message containing basic workspace information. + WorkspaceSetting: + type: object + properties: + name: + type: string + description: |- + The name of the workspace setting. + Format: workspace/settings/{setting} + generalSetting: + $ref: '#/components/schemas/WorkspaceGeneralSetting' + storageSetting: + $ref: '#/components/schemas/WorkspaceStorageSetting' + memoRelatedSetting: + $ref: '#/components/schemas/WorkspaceMemoRelatedSetting' + description: A workspace setting resource. + WorkspaceStorageSetting: + type: object + properties: + storageType: + enum: + - STORAGE_TYPE_UNSPECIFIED + - DATABASE + - LOCAL + - S3 + type: string + description: storage_type is the storage type. + format: enum + filepathTemplate: + type: string + description: |- + The template of file path. + e.g. assets/{timestamp}_{filename} + uploadSizeLimitMb: + type: string + description: The max upload size in megabytes. + s3Config: + allOf: + - $ref: '#/components/schemas/WorkspaceStorageSetting_S3Config' + description: The S3 config. + WorkspaceStorageSetting_S3Config: + type: object + properties: + accessKeyId: + type: string + accessKeySecret: + type: string + endpoint: + type: string + region: + type: string + bucket: + type: string + usePathStyle: + type: boolean + description: 'Reference: https://developers.cloudflare.com/r2/examples/aws/aws-sdk-go/' +tags: + - name: ActivityService + - name: AttachmentService + - name: AuthService + - name: IdentityProviderService + - name: InboxService + - name: MarkdownService + - name: MemoService + - name: ShortcutService + - name: UserService + - name: WebhookService + - name: WorkspaceService