Files
WebDrop/contracts/api.schemas.json
justmeandClaude Sonnet 5.5 7e6ef5e587
ci/woodpecker/push/web-build Pipeline failed
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/push/dev-image-api unknown status
chore(contract): regenerate API contract after AccountProfile comment change
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> [CI]
2026-10-19 14:19:30 +08:00

2369 lines
45 KiB
JSON

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"x-backend-contract-sha256": "89c6298b865197835486f01891acc597802367a7ae1b89f21ba882a52935df3b",
"$defs": {
"AccountChannelBody": {
"type": "object",
"properties": {
"channel_id": {
"type": "string"
},
"created_at": {
"type": "integer"
},
"payload": {
"type": "string"
},
"role": {
"type": "string"
}
},
"required": [
"channel_id",
"created_at",
"payload",
"role"
]
},
"AccountDeviceBody": {
"type": "object",
"properties": {
"created_at": {
"type": "integer"
},
"current": {
"type": "boolean"
},
"id": {
"type": "string"
},
"last_seen": {
"type": "integer"
},
"name": {
"type": "string"
}
},
"required": [
"created_at",
"current",
"id",
"last_seen",
"name"
]
},
"AccountDeviceNameRequest": {
"type": "object",
"properties": {
"name": {
"type": "string"
}
},
"required": [
"name"
]
},
"AccountDeviceSigningRequest": {
"type": "object",
"properties": {
"device_id": {
"type": "string"
},
"public_key": {
"type": "string"
},
"signature": {
"type": "string"
}
},
"required": [
"device_id",
"public_key",
"signature"
]
},
"AccountProfile": {
"type": "object",
"properties": {
"avatar": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"displayName": {
"type": "string"
},
"hasAvatar": {
"type": "boolean"
},
"modifiedAt": {
"type": "integer"
},
"username": {
"type": "string"
}
},
"required": [
"displayName",
"hasAvatar",
"modifiedAt",
"username"
]
},
"AccountProfileRequest": {
"type": "object",
"properties": {
"avatar": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"avatarThumb": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"displayName": {
"type": "string"
},
"keepAvatar": {
"type": "boolean"
}
},
"required": [
"displayName",
"keepAvatar"
]
},
"AccountRegisterRequest": {
"type": "object",
"properties": {
"public_key": {
"type": "string"
},
"salt": {
"type": "string"
},
"signing_public_key": {
"type": "string"
},
"username": {
"type": "string"
},
"vault": {
"type": "string"
},
"verifier": {
"type": "string"
}
},
"required": [
"public_key",
"salt",
"signing_public_key",
"username",
"vault",
"verifier"
]
},
"AccountSaltBody": {
"type": "object",
"properties": {
"salt": {
"type": "string"
}
},
"required": [
"salt"
]
},
"AccountSaltRequest": {
"type": "object",
"properties": {
"username": {
"type": "string"
}
},
"required": [
"username"
]
},
"AccountSessionBody": {
"type": "object",
"properties": {
"token": {
"type": "string"
},
"username": {
"type": "string"
}
},
"required": [
"token",
"username"
]
},
"AccountSessionRequest": {
"type": "object",
"properties": {
"device_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"device_name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"username": {
"type": "string"
},
"verifier": {
"type": "string"
}
},
"required": [
"username",
"verifier"
]
},
"AccountVaultBody": {
"type": "object",
"properties": {
"revision": {
"type": "integer"
},
"vault": {
"type": "string"
}
},
"required": [
"revision",
"vault"
]
},
"AccountVaultRequest": {
"type": "object",
"properties": {
"revision": {
"type": "integer"
},
"vault": {
"type": "string"
}
},
"required": [
"revision",
"vault"
]
},
"AppendResult": {
"type": "object",
"properties": {
"seq": {
"type": "integer"
}
},
"required": [
"seq"
]
},
"ChannelHistoryRequest": {
"type": "object",
"properties": {
"chatHistory": {
"type": "boolean"
},
"filesHistory": {
"type": "boolean"
}
},
"required": [
"chatHistory",
"filesHistory"
]
},
"ChannelInfo": {
"type": "object",
"properties": {
"avatar_version": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"can_create_channel": {
"type": "boolean"
},
"can_delete_any": {
"type": "boolean"
},
"can_delete_own": {
"type": "boolean"
},
"can_edit_settings": {
"type": "boolean"
},
"can_invite": {
"type": "boolean"
},
"can_manage_folders": {
"type": "boolean"
},
"can_manage_roles": {
"type": "boolean"
},
"can_manage_structure": {
"type": "boolean"
},
"can_remove_members": {
"type": "boolean"
},
"can_upload": {
"type": "boolean"
},
"created_at": {
"type": "integer"
},
"creator_account": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"expires_at": {
"type": "integer"
},
"id": {
"type": "string"
},
"is_owner": {
"type": "boolean"
},
"last_seq": {
"type": "integer"
},
"members_used": {
"type": "integer"
},
"mode": {
"$ref": "#/$defs/ChannelMode"
},
"oldest_seq": {
"type": "integer"
},
"password_required": {
"type": "boolean"
},
"settings": {
"$ref": "#/$defs/ChannelSettings"
}
},
"required": [
"can_create_channel",
"can_delete_any",
"can_delete_own",
"can_edit_settings",
"can_invite",
"can_manage_folders",
"can_manage_roles",
"can_manage_structure",
"can_remove_members",
"can_upload",
"created_at",
"expires_at",
"id",
"is_owner",
"last_seq",
"members_used",
"mode",
"oldest_seq",
"password_required",
"settings"
]
},
"ChannelMode": {
"type": "string",
"enum": [
"enc",
"raw"
]
},
"ChannelSettings": {
"type": "object",
"properties": {
"delete_policy": {
"$ref": "#/$defs/DeletePolicy"
},
"file_max_downloads": {
"type": "integer"
},
"join_policy": {
"$ref": "#/$defs/JoinPolicy"
},
"max_items": {
"type": "integer"
},
"max_members": {
"type": "integer"
},
"members_can_upload": {
"type": "boolean"
},
"name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"ttl_seconds": {
"type": "integer"
},
"ui_restrict_copy_download": {
"type": "boolean"
}
},
"required": [
"delete_policy",
"file_max_downloads",
"join_policy",
"max_items",
"max_members",
"members_can_upload",
"ttl_seconds",
"ui_restrict_copy_download"
]
},
"ChannelSettingsPatch": {
"type": "object",
"properties": {
"avatar": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"avatar_thumb": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"delete_policy": {
"anyOf": [
{
"$ref": "#/$defs/DeletePolicy"
},
{
"type": "null"
}
]
},
"file_max_downloads": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"join_password": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"join_policy": {
"anyOf": [
{
"$ref": "#/$defs/JoinPolicy"
},
{
"type": "null"
}
]
},
"max_items": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"max_members": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"members_can_upload": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
]
},
"name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"ttl_seconds": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"ui_restrict_copy_download": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
]
}
},
"required": []
},
"CreateChannelRequest": {
"type": "object",
"properties": {
"id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"join_password": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"key_package": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"mode": {
"anyOf": [
{
"$ref": "#/$defs/ChannelMode"
},
{
"type": "null"
}
]
},
"owner_hash": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"read_hash": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"settings": {
"anyOf": [
{
"$ref": "#/$defs/ChannelSettings"
},
{
"type": "null"
}
]
},
"write_hash": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": []
},
"CreateShareRequest": {
"type": "object",
"properties": {
"id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"owner_hash": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"read_hash": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"settings": {
"anyOf": [
{
"$ref": "#/$defs/ShareSettings"
},
{
"type": "null"
}
]
}
},
"required": []
},
"CryptoState": {
"type": "object",
"properties": {
"access": {
"type": "array",
"items": {
"$ref": "#/$defs/ChannelAccess"
}
},
"envelopes": {
"type": "array",
"items": {
"$ref": "#/$defs/DomainEnvelope"
}
},
"objects": {
"type": "array",
"items": {
"$ref": "#/$defs/ObjectEnvelope"
}
},
"revision": {
"type": "integer"
}
},
"required": [
"access",
"envelopes",
"objects",
"revision"
]
},
"ChannelAccess": {
"type": "object",
"properties": {
"channelId": {
"type": "string"
},
"chatFromRevision": {
"type": "integer"
},
"chatRead": {
"type": "boolean"
},
"chatWrite": {
"type": "boolean"
},
"filesFromRevision": {
"type": "integer"
},
"filesRead": {
"type": "boolean"
},
"filesUpload": {
"type": "boolean"
},
"username": {
"type": "string"
}
},
"required": [
"channelId",
"chatFromRevision",
"chatRead",
"chatWrite",
"filesFromRevision",
"filesRead",
"filesUpload",
"username"
]
},
"DeletePolicy": {
"type": "string",
"enum": [
"owner_only",
"own",
"anyone"
]
},
"DomainEnvelope": {
"type": "object",
"properties": {
"channelId": {
"type": "string"
},
"domain": {
"$ref": "#/$defs/CryptoDomain"
},
"epoch": {
"type": "integer"
},
"payload": {
"type": "string"
},
"username": {
"type": "string"
}
},
"required": [
"channelId",
"domain",
"epoch",
"payload",
"username"
]
},
"CryptoDomain": {
"type": "string",
"enum": [
"chat",
"files"
]
},
"DomainPublishRequest": {
"type": "object",
"properties": {
"channelId": {
"type": "string"
},
"domain": {
"$ref": "#/$defs/CryptoDomain"
},
"envelopes": {
"type": "array",
"items": {
"$ref": "#/$defs/DomainEnvelope"
}
},
"epoch": {
"type": "integer"
}
},
"required": [
"channelId",
"domain",
"envelopes",
"epoch"
]
},
"ErrorBody": {
"type": "object",
"properties": {
"error": {
"type": "string"
}
},
"required": [
"error"
]
},
"FileGrantBody": {
"type": "object",
"properties": {
"domain": {
"type": "string"
},
"expires_at": {
"type": "integer"
},
"ticket": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"domain",
"expires_at",
"ticket",
"url"
]
},
"FileGrantRequest": {
"type": "object",
"properties": {
"channel": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"from": {
"type": "integer"
},
"item": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"op": {
"type": "string"
}
},
"required": [
"from",
"op"
]
},
"FinishShareRequest": {
"type": "object",
"properties": {
"manifest_item_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": []
},
"GoneLogBody": {
"type": "object",
"properties": {
"error": {
"type": "string"
},
"oldest_seq": {
"type": "integer"
}
},
"required": [
"error",
"oldest_seq"
]
},
"InvitationBody": {
"type": "object",
"properties": {
"can_revoke": {
"type": "boolean"
},
"channel_id": {
"type": "string"
},
"created_at": {
"type": "integer"
},
"payload": {
"type": "string"
},
"username": {
"type": "string"
}
},
"required": [
"can_revoke",
"channel_id",
"created_at",
"payload",
"username"
]
},
"InvitationCryptoPlan": {
"type": "object",
"properties": {
"batches": {
"type": "array",
"items": {
"$ref": "#/$defs/CryptoGrantBatch"
}
},
"channelId": {
"type": "string"
},
"username": {
"type": "string"
}
},
"required": [
"batches",
"channelId",
"username"
]
},
"CryptoGrantBatch": {
"type": "object",
"properties": {
"domain": {
"$ref": "#/$defs/CryptoDomain"
},
"epoch": {
"type": "integer"
},
"recipients": {
"type": "array",
"items": {
"type": "string"
}
},
"rotate": {
"type": "boolean"
}
},
"required": [
"domain",
"epoch",
"recipients",
"rotate"
]
},
"InvitationRequest": {
"type": "object",
"properties": {
"domain_envelopes": {
"anyOf": [
{
"type": "array",
"items": {
"$ref": "#/$defs/DomainEnvelope"
}
},
{
"type": "null"
}
]
},
"payload": {
"type": "string"
},
"username": {
"type": "string"
}
},
"required": [
"payload",
"username"
]
},
"JoinPolicy": {
"type": "string",
"enum": [
"open",
"invite"
]
},
"JoinRequest": {
"type": "object",
"properties": {
"password": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": []
},
"JoinResult": {
"type": "object",
"properties": {
"joined_at": {
"type": "integer"
},
"members_max": {
"type": "integer"
},
"members_used": {
"type": "integer"
}
},
"required": [
"joined_at",
"members_max",
"members_used"
]
},
"KeyPackageRequest": {
"type": "object",
"properties": {
"payload": {
"type": "string"
}
},
"required": [
"payload"
]
},
"MemberBody": {
"type": "object",
"properties": {
"can_remove": {
"type": "boolean"
},
"devices": {
"type": "integer"
},
"joined_at": {
"type": "integer"
},
"last_seen": {
"type": "integer"
},
"online": {
"type": "boolean"
},
"online_devices": {
"type": "integer"
},
"role": {
"type": "string"
},
"username": {
"type": "string"
}
},
"required": [
"can_remove",
"devices",
"joined_at",
"last_seen",
"online",
"online_devices",
"role",
"username"
]
},
"ObjectEnvelope": {
"type": "object",
"properties": {
"authorAccount": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"channelId": {
"type": "string"
},
"createdRevision": {
"type": "integer"
},
"deleteEvent": {
"anyOf": [
{
"$ref": "#/$defs/SignedContentEventRecord"
},
{
"type": "null"
}
]
},
"domain": {
"$ref": "#/$defs/CryptoDomain"
},
"epoch": {
"type": "integer"
},
"event": {
"anyOf": [
{
"$ref": "#/$defs/SignedContentEventRecord"
},
{
"type": "null"
}
]
},
"itemId": {
"type": "string"
},
"keyEnvelope": {
"type": "string"
}
},
"required": [
"channelId",
"createdRevision",
"domain",
"epoch",
"itemId",
"keyEnvelope"
]
},
"PasskeyBeginRequest": {
"type": "object",
"properties": {
"username": {
"type": "string"
},
"verifier": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"username"
]
},
"PasskeyEnvelopeRequest": {
"type": "object",
"properties": {
"credential": {
"type": "string"
},
"id": {
"type": "string"
},
"key_envelope": {
"type": "string"
},
"username": {
"type": "string"
}
},
"required": [
"credential",
"id",
"key_envelope",
"username"
]
},
"PasskeyFinishRequest": {
"type": "object",
"properties": {
"credential": {
"type": "string"
},
"device_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"device_name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"id": {
"type": "string"
},
"key_envelope": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"username": {
"type": "string"
}
},
"required": [
"credential",
"id",
"username"
]
},
"PasskeyInfoBody": {
"type": "object",
"properties": {
"can_recover": {
"type": "boolean"
},
"created_at": {
"type": "integer"
},
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"prf_salt": {
"type": "string"
}
},
"required": [
"can_recover",
"created_at",
"id",
"name",
"prf_salt"
]
},
"PasskeyOptionsBody": {
"type": "object",
"properties": {
"credentials": {
"type": "array",
"items": {
"$ref": "#/$defs/PasskeyInfoBody"
}
},
"id": {
"type": "string"
},
"options": {
"type": "string"
},
"prf_salt": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"credentials",
"id",
"options"
]
},
"PasskeySessionBody": {
"type": "object",
"properties": {
"credential_id": {
"type": "string"
},
"key_envelope": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"prf_salt": {
"type": "string"
},
"token": {
"type": "string"
},
"username": {
"type": "string"
}
},
"required": [
"credential_id",
"prf_salt",
"token",
"username"
]
},
"PublicKeyBody": {
"type": "object",
"properties": {
"public_key": {
"type": "string"
},
"signing_public_key": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"public_key"
]
},
"ServerInfoBody": {
"type": "object",
"properties": {
"captcha": {
"$ref": "#/$defs/CaptchaBody"
},
"choices": {
"$ref": "#/$defs/SettingChoicesBody"
},
"contract_version": {
"type": "string"
},
"defaults": {
"$ref": "#/$defs/DefaultsBody"
},
"files": {
"$ref": "#/$defs/FilesInfoBody"
},
"limits": {
"$ref": "#/$defs/LimitsBody"
},
"protocol": {
"type": "integer"
},
"transports": {
"$ref": "#/$defs/TransportsBody"
}
},
"required": [
"captcha",
"choices",
"contract_version",
"defaults",
"files",
"limits",
"protocol",
"transports"
]
},
"CaptchaBody": {
"type": "object",
"properties": {
"api_endpoint": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"enabled": {
"type": "boolean"
},
"provider": {
"type": "string"
}
},
"required": [
"enabled",
"provider"
]
},
"DefaultsBody": {
"type": "object",
"properties": {
"channel": {
"$ref": "#/$defs/ChannelSettings"
},
"channel_mode": {
"$ref": "#/$defs/ChannelMode"
},
"share": {
"$ref": "#/$defs/ShareSettings"
}
},
"required": [
"channel",
"channel_mode",
"share"
]
},
"FilesInfoBody": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
},
"url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"enabled"
]
},
"LimitsBody": {
"type": "object",
"properties": {
"max_channel_bytes": {
"type": "integer"
},
"max_frames_per_item": {
"type": "integer"
},
"max_items": {
"type": "integer"
},
"max_members": {
"type": "integer"
},
"max_payload_bytes": {
"type": "integer"
},
"max_ttl_seconds": {
"type": "integer"
},
"max_visitors": {
"type": "integer"
},
"max_workspace_bytes": {
"type": "integer"
},
"min_ttl_seconds": {
"type": "integer"
}
},
"required": [
"max_channel_bytes",
"max_frames_per_item",
"max_items",
"max_members",
"max_payload_bytes",
"max_ttl_seconds",
"max_visitors",
"max_workspace_bytes",
"min_ttl_seconds"
]
},
"SettingChoicesBody": {
"type": "object",
"properties": {
"file_max_downloads": {
"type": "array",
"items": {
"type": "integer"
}
},
"max_members": {
"type": "array",
"items": {
"type": "integer"
}
},
"max_visitors": {
"type": "array",
"items": {
"type": "integer"
}
},
"ttl_seconds": {
"type": "array",
"items": {
"type": "integer"
}
}
},
"required": [
"file_max_downloads",
"max_members",
"max_visitors",
"ttl_seconds"
]
},
"ShareInfo": {
"type": "object",
"properties": {
"created_at": {
"type": "integer"
},
"expires_at": {
"type": "integer"
},
"id": {
"type": "string"
},
"items": {
"type": "array",
"items": {
"$ref": "#/$defs/ShareItemInfo"
}
},
"manifest_item_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"sealed_at": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"settings": {
"$ref": "#/$defs/ShareSettings"
},
"state": {
"type": "string"
}
},
"required": [
"created_at",
"expires_at",
"id",
"items",
"settings",
"state"
]
},
"ShareItemInfo": {
"type": "object",
"properties": {
"bytes": {
"type": "integer"
},
"complete": {
"type": "boolean"
},
"downloads_left": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"frames": {
"type": "integer"
},
"item_id": {
"type": "string"
},
"max_downloads": {
"type": "integer"
}
},
"required": [
"bytes",
"complete",
"downloads_left",
"frames",
"item_id",
"max_downloads"
]
},
"ShareSettings": {
"type": "object",
"properties": {
"file_max_downloads": {
"type": "integer"
},
"max_visitors": {
"type": "integer"
},
"ttl_seconds": {
"type": "integer"
}
},
"required": [
"file_max_downloads",
"max_visitors",
"ttl_seconds"
]
},
"ShareSettingsPatch": {
"type": "object",
"properties": {
"file_max_downloads": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"max_visitors": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"ttl_seconds": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
}
},
"required": []
},
"SignedContentEventRecord": {
"type": "object",
"properties": {
"deviceCertificateSignature": {
"type": "string"
},
"eventId": {
"type": "string"
},
"frameCount": {
"type": "integer"
},
"kind": {
"type": "string"
},
"manifestHash": {
"type": "string"
},
"signature": {
"type": "string"
},
"signerAccount": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"signerDeviceId": {
"type": "string"
},
"signerDevicePublicKey": {
"type": "string"
},
"signerRootPublicKey": {
"type": "string"
},
"targetItemId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"deviceCertificateSignature",
"eventId",
"frameCount",
"kind",
"manifestHash",
"signature",
"signerDeviceId",
"signerDevicePublicKey",
"signerRootPublicKey"
]
},
"TransportsBody": {
"type": "object",
"properties": {
"http3": {
"type": "boolean"
},
"sse": {
"type": "boolean"
},
"websocket": {
"type": "boolean"
}
},
"required": [
"http3",
"sse",
"websocket"
]
},
"WorkspaceBody": {
"type": "object",
"properties": {
"people": {
"type": "array",
"items": {
"$ref": "#/$defs/AccountProfile"
}
},
"structure": {
"$ref": "#/$defs/WorkspaceState"
}
},
"required": [
"people",
"structure"
]
},
"WorkspaceChannelCreatedBody": {
"type": "object",
"properties": {
"channel": {
"$ref": "#/$defs/WorkspaceChannel"
},
"workspace": {
"$ref": "#/$defs/WorkspaceBody"
}
},
"required": [
"channel",
"workspace"
]
},
"WorkspaceChannel": {
"type": "object",
"properties": {
"chatEpoch": {
"type": "integer"
},
"chatHistory": {
"type": "boolean"
},
"createdAt": {
"type": "integer"
},
"createdBy": {
"type": "string"
},
"fileDomain": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"filesEpoch": {
"type": "integer"
},
"filesHistory": {
"type": "boolean"
},
"groupId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"id": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"chatEpoch",
"chatHistory",
"createdAt",
"createdBy",
"filesEpoch",
"filesHistory",
"id",
"name"
]
},
"WorkspaceChannelRequest": {
"type": "object",
"properties": {
"fileDomain": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"groupId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"name": {
"type": "string"
}
},
"required": [
"name"
]
},
"WorkspaceFileDomainRequest": {
"type": "object",
"properties": {
"fileDomain": {
"type": "string"
}
},
"required": [
"fileDomain"
]
},
"WorkspaceFolderRequest": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"parentId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"threadId": {
"type": "string"
}
},
"required": [
"name",
"threadId"
]
},
"WorkspaceGroupCreatedBody": {
"type": "object",
"properties": {
"group": {
"$ref": "#/$defs/WorkspaceGroup"
},
"workspace": {
"$ref": "#/$defs/WorkspaceBody"
}
},
"required": [
"group",
"workspace"
]
},
"WorkspaceGroup": {
"type": "object",
"properties": {
"createdAt": {
"type": "integer"
},
"id": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"createdAt",
"id",
"name"
]
},
"WorkspaceGroupRequest": {
"type": "object",
"properties": {
"groupId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": []
},
"WorkspaceMoveRequest": {
"type": "object",
"properties": {
"folderId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"itemIds": {
"type": "array",
"items": {
"type": "string"
}
},
"threadId": {
"type": "string"
}
},
"required": [
"itemIds",
"threadId"
]
},
"WorkspaceNameRequest": {
"type": "object",
"properties": {
"name": {
"type": "string"
}
},
"required": [
"name"
]
},
"WorkspaceRoleCreatedBody": {
"type": "object",
"properties": {
"role": {
"$ref": "#/$defs/WorkspaceRole"
},
"workspace": {
"$ref": "#/$defs/WorkspaceBody"
}
},
"required": [
"role",
"workspace"
]
},
"WorkspaceRole": {
"type": "object",
"properties": {
"color": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"createdAt": {
"type": "integer"
},
"id": {
"type": "string"
},
"members": {
"type": "array",
"items": {
"type": "string"
}
},
"name": {
"type": "string"
},
"permissions": {
"type": "array",
"items": {
"type": "string"
}
},
"prefix": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"suffix": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"createdAt",
"id",
"members",
"name",
"permissions"
]
},
"WorkspaceRoleMembersRequest": {
"type": "object",
"properties": {
"members": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"members"
]
},
"WorkspaceRoleRequest": {
"type": "object",
"properties": {
"color": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"name": {
"type": "string"
},
"permissions": {
"type": "array",
"items": {
"type": "string"
}
},
"prefix": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"suffix": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"name",
"permissions"
]
},
"WorkspaceState": {
"type": "object",
"properties": {
"channels": {
"type": "array",
"items": {
"$ref": "#/$defs/WorkspaceChannel"
}
},
"defaultChannelId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"folders": {
"type": "array",
"items": {
"$ref": "#/$defs/WorkspaceFolder"
}
},
"groups": {
"type": "array",
"items": {
"$ref": "#/$defs/WorkspaceGroup"
}
},
"locations": {
"type": "array",
"items": {
"$ref": "#/$defs/WorkspaceLocation"
}
},
"revision": {
"type": "integer"
},
"roles": {
"type": "array",
"items": {
"$ref": "#/$defs/WorkspaceRole"
}
},
"rolesSeeded": {
"type": "boolean"
}
},
"required": [
"channels",
"folders",
"groups",
"locations",
"revision",
"roles",
"rolesSeeded"
]
},
"WorkspaceFolder": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"parentId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"threadId": {
"type": "string"
}
},
"required": [
"id",
"name",
"threadId"
]
},
"WorkspaceLocation": {
"type": "object",
"properties": {
"authorAccount": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"folderId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"itemId": {
"type": "string"
},
"threadId": {
"type": "string"
}
},
"required": [
"itemId",
"threadId"
]
}
}
}