# 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/memos :
get :
tags :
- MemoService
description : ListMemos lists memos with pagination and filter.
operationId : MemoService_ListMemos
parameters :
- 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".
Supports comma-separated list of fields following AIP-132.
Example : "pinned desc, display_time desc" or "create_time asc"
Supported fields : pinned, display_time, create_time, update_time, name
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
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
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
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
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/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 : "username == 'steven'"
Supported operators : ==
Supported fields : username
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 ID or username.
Supports both numeric IDs and username strings :
- users/{id} (e.g., users/101)
- users/{username} (e.g., users/steven)
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}/notifications:
get :
tags :
- UserService
description : ListUserNotifications lists notifications for a user.
operationId : UserService_ListUserNotifications
parameters :
- name : user
in : path
description : The user id.
required : true
schema :
type : string
- name : pageSize
in : query
schema :
type : integer
format : int32
- name : pageToken
in : query
schema :
type : string
- name : filter
in : query
schema :
type : string
responses :
"200" :
description : OK
content :
application/json :
schema :
$ref : '#/components/schemas/ListUserNotificationsResponse'
default :
description : Default error response
content :
application/json :
schema :
$ref : '#/components/schemas/Status'
/api/v1/users/{user}/notifications/{notification}:
delete :
tags :
- UserService
description : DeleteUserNotification deletes a notification.
operationId : UserService_DeleteUserNotification
parameters :
- name : user
in : path
description : The user id.
required : true
schema :
type : string
- name : notification
in : path
description : The notification 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 :
- UserService
description : UpdateUserNotification updates a notification.
operationId : UserService_UpdateUserNotification
parameters :
- name : user
in : path
description : The user id.
required : true
schema :
type : string
- name : notification
in : path
description : The notification id.
required : true
schema :
type : string
- name : updateMask
in : query
schema :
type : string
format : field-mask
requestBody :
content :
application/json :
schema :
$ref : '#/components/schemas/UserNotification'
required : true
responses :
"200" :
description : OK
content :
application/json :
schema :
$ref : '#/components/schemas/UserNotification'
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}/settings:
get :
tags :
- UserService
description : ListUserSettings returns a list of user settings.
operationId : UserService_ListUserSettings
parameters :
- name : user
in : path
description : The user id.
required : true
schema :
type : string
- name : pageSize
in : query
description : |-
Optional. The maximum number of settings to return.
The service may return fewer than this value.
If unspecified, at most 50 settings 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 `ListUserSettings` call.
Provide this to retrieve the subsequent page.
schema :
type : string
responses :
"200" :
description : OK
content :
application/json :
schema :
$ref : '#/components/schemas/ListUserSettingsResponse'
default :
description : Default error response
content :
application/json :
schema :
$ref : '#/components/schemas/Status'
/api/v1/users/{user}/settings/{setting}:
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
- name : setting
in : path
description : The setting 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'
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 : setting
in : path
description : The setting 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/{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 :
- UserService
description : ListUserWebhooks returns a list of webhooks for a user.
operationId : UserService_ListUserWebhooks
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/ListUserWebhooksResponse'
default :
description : Default error response
content :
application/json :
schema :
$ref : '#/components/schemas/Status'
post :
tags :
- UserService
description : CreateUserWebhook creates a new webhook for a user.
operationId : UserService_CreateUserWebhook
parameters :
- name : user
in : path
description : The user id.
required : true
schema :
type : string
requestBody :
content :
application/json :
schema :
$ref : '#/components/schemas/UserWebhook'
required : true
responses :
"200" :
description : OK
content :
application/json :
schema :
$ref : '#/components/schemas/UserWebhook'
default :
description : Default error response
content :
application/json :
schema :
$ref : '#/components/schemas/Status'
/api/v1/users/{user}/webhooks/{webhook}:
delete :
tags :
- UserService
description : DeleteUserWebhook deletes a webhook for a user.
operationId : UserService_DeleteUserWebhook
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 :
- UserService
description : UpdateUserWebhook updates an existing webhook for a user.
operationId : UserService_UpdateUserWebhook
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 : The list of fields to update.
schema :
type : string
format : field-mask
requestBody :
content :
application/json :
schema :
$ref : '#/components/schemas/UserWebhook'
required : true
responses :
"200" :
description : OK
content :
application/json :
schema :
$ref : '#/components/schemas/UserWebhook'
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:stats :
get :
tags :
- UserService
description : ListAllUserStats returns statistics for all users.
operationId : UserService_ListAllUserStats
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
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}
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
FieldMapping :
type : object
properties :
identifier :
type : string
displayName :
type : string
email :
type : string
avatarUrl :
type : string
GeneralSetting_CustomProfile :
type : object
properties :
title :
type : string
description :
type : string
logoUrl :
type : string
locale :
type : string
description : Custom profile configuration for workspace branding.
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.
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'
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 :
stats :
type : array
items :
$ref : '#/components/schemas/UserStats'
description : The list of user statistics.
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.
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.
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.
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.
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
ListUserNotificationsResponse :
type : object
properties :
notifications :
type : array
items :
$ref : '#/components/schemas/UserNotification'
nextPageToken :
type : string
ListUserSessionsResponse :
type : object
properties :
sessions :
type : array
items :
$ref : '#/components/schemas/UserSession'
description : The list of user sessions.
ListUserSettingsResponse :
type : object
properties :
settings :
type : array
items :
$ref : '#/components/schemas/UserSetting'
description : The list of user settings.
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 settings (may be approximate).
format : int32
description : Response message for ListUserSettings method.
ListUserWebhooksResponse :
type : object
properties :
webhooks :
type : array
items :
$ref : '#/components/schemas/UserWebhook'
description : The list of webhooks.
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
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
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.
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.
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'
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
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.
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).'
StorageSetting_S3Config :
type : object
properties :
accessKeyId :
type : string
accessKeySecret :
type : string
endpoint :
type : string
region :
type : string
bucket :
type : string
usePathStyle :
type : boolean
description : |-
S3 configuration for cloud storage backend.
Reference : https://developers.cloudflare.com/r2/examples/aws/aws-sdk-go/
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
UserNotification :
type : object
properties :
name :
readOnly : true
type : string
description : |-
The resource name of the notification.
Format : users/{user}/notifications/{notification}
sender :
readOnly : true
type : string
description : |-
The sender of the notification.
Format : users/{user}
status :
enum :
- STATUS_UNSPECIFIED
- UNREAD
- ARCHIVED
type : string
description : The status of the notification.
format : enum
createTime :
readOnly : true
type : string
description : The creation timestamp.
format : date-time
type :
readOnly : true
enum :
- TYPE_UNSPECIFIED
- MEMO_COMMENT
type : string
description : The type of the notification.
format : enum
activityId :
type : integer
description : The activity ID associated with this notification.
format : int32
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 name of the user setting.
Format : users/{user}/settings/{setting}, {setting} is the key for the setting.
For example, "users/123/settings/GENERAL" for general settings.
generalSetting :
$ref : '#/components/schemas/UserSetting_GeneralSetting'
sessionsSetting :
$ref : '#/components/schemas/UserSetting_SessionsSetting'
accessTokensSetting :
$ref : '#/components/schemas/UserSetting_AccessTokensSetting'
webhooksSetting :
$ref : '#/components/schemas/UserSetting_WebhooksSetting'
description : User settings message
UserSetting_AccessTokensSetting :
type : object
properties :
accessTokens :
type : array
items :
$ref : '#/components/schemas/UserAccessToken'
description : List of user access tokens.
description : User access tokens configuration.
UserSetting_GeneralSetting :
type : object
properties :
locale :
type : string
description : The preferred locale 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 : General user settings configuration.
UserSetting_SessionsSetting :
type : object
properties :
sessions :
type : array
items :
$ref : '#/components/schemas/UserSession'
description : List of active user sessions.
description : User authentication sessions configuration.
UserSetting_WebhooksSetting :
type : object
properties :
webhooks :
type : array
items :
$ref : '#/components/schemas/UserWebhook'
description : List of user webhooks.
description : User webhooks configuration.
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.
UserWebhook :
type : object
properties :
name :
type : string
description : |-
The name of the webhook.
Format : users/{user}/webhooks/{webhook}
url :
type : string
description : The URL to send the webhook to.
displayName :
type : string
description : Optional. Human-readable name for the webhook.
createTime :
readOnly : true
type : string
description : The creation time of the webhook.
format : date-time
updateTime :
readOnly : true
type : string
description : The last update time of the webhook.
format : date-time
description : UserWebhook represents a webhook owned by a user.
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/WorkspaceSetting_GeneralSetting'
storageSetting :
$ref : '#/components/schemas/WorkspaceSetting_StorageSetting'
memoRelatedSetting :
$ref : '#/components/schemas/WorkspaceSetting_MemoRelatedSetting'
description : A workspace setting resource.
WorkspaceSetting_GeneralSetting :
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/GeneralSetting_CustomProfile'
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.
description : General workspace settings configuration.
WorkspaceSetting_MemoRelatedSetting :
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.
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.
description : Memo-related workspace settings and policies.
WorkspaceSetting_StorageSetting :
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/StorageSetting_S3Config'
description : The S3 config.
description : Storage configuration settings for workspace attachments.
tags :
- name : ActivityService
- name : AttachmentService
- name : AuthService
- name : IdentityProviderService
- name : MemoService
- name : ShortcutService
- name : UserService
- name : WorkspaceService