Files
simplex-chat/bots/api/TYPES.md
T
Narasimha-sc bc1e8b6de7 core: allow creating a user without making it active
Adds keepActiveUser to NewUser. When set, the new user is created but the
current active user is preserved.

This is needed to create a profile for an invitation: the prepared chat is
resolved under the active user by APIChangePreparedContactUser, so the profile
that owns the invitation has to stay active until the chat has been moved to
the new one. Creating and activating in one step makes that reassignment
impossible without switching back and forth.

BoolDef gives the field omittedField = False, so clients that do not send it -
iOS, the CLI, and any older caller - keep the current behaviour of activating
the new user.

keepActiveUser is ignored when there is no active user to keep, which would
otherwise leave the app with none at all.

Note the response is still CRActiveUser: it carries the created user, which is
not the active one on this path. Documented at the field.

Regenerates the API docs and the generated TypeScript and Python client types,
which are checked by the Bot API docs tests.

The generator emits BoolDef fields as required in the client types, so the two
hand-maintained clients that build a NewUser literal - simplex-chat-python and
simplex-chat-nodejs - stop type-checking until the field is added there too. No
test covers those; a4e3a1ea1 did the same when clientService was added.
2026-08-03 07:59:49 +00:00

70 KiB

API Types

This file is generated automatically.


ACIReaction

Record type:


AChat

Record type:


AChatItem

Record type:


AddRelayResult

Record type:


AddressSettings

Record type:


AgentCryptoError

Discriminated union type:

DECRYPT_AES:

  • type: "DECRYPT_AES"

DECRYPT_CB:

  • type: "DECRYPT_CB"

RATCHET_HEADER:

  • type: "RATCHET_HEADER"

RATCHET_SYNC:

  • type: "RATCHET_SYNC"

AgentErrorType

Discriminated union type:

CMD:

CONN:

NO_USER:

  • type: "NO_USER"

SMP:

  • type: "SMP"
  • serverAddress: string
  • smpErr: ErrorType

NTF:

  • type: "NTF"
  • serverAddress: string
  • ntfErr: ErrorType

XFTP:

FILE:

NO_NAME_SERVERS:

  • type: "NO_NAME_SERVERS"

PROXY:

  • type: "PROXY"
  • proxyServer: string
  • relayServer: string
  • proxyErr: ProxyClientError

RCP:

BROKER:

AGENT:

NOTICE:

  • type: "NOTICE"
  • server: string
  • preset: bool
  • expiresAt: UTCTime?

INTERNAL:

  • type: "INTERNAL"
  • internalErr: string

CRITICAL:

  • type: "CRITICAL"
  • offerRestart: bool
  • criticalErr: string

INACTIVE:

  • type: "INACTIVE"

AgentServiceError

Discriminated union type:

Rejected:

  • type: "rejected"
  • rejectReason: string

Timeout:

  • type: "timeout"

NoPendingRequest:

  • type: "noPendingRequest"

NotDRAddress:

  • type: "notDRAddress"

BadSignature:

  • type: "badSignature"

AutoAccept

Record type:

  • acceptIncognito: bool

BadgeInfo

Record type:

  • badgeType: BadgeType
  • badgeExpiry: UTCTime?
  • badgeExtra: string

BadgeProof

Record type:

  • badgeKeyIdx: int
  • presHeader: string
  • proof: string
  • badgeInfo: BadgeInfo

BadgeStatus

Enum type:

  • "active"
  • "expired"
  • "expiredOld"
  • "failed"
  • "unknownKey"

BadgeType

Enum type:

  • "supporter"
  • "legend"
  • "investor"

BlockingInfo

Record type:


BlockingReason

Enum type:

  • "spam"
  • "content"

BrokerErrorType

Discriminated union type:

RESPONSE:

  • type: "RESPONSE"
  • respErr: string

UNEXPECTED:

  • type: "UNEXPECTED"
  • respErr: string

NETWORK:

HOST:

  • type: "HOST"

NO_SERVICE:

  • type: "NO_SERVICE"

TRANSPORT:

TIMEOUT:

  • type: "TIMEOUT"

BusinessChatInfo

Record type:


BusinessChatType

Enum type:

  • "business"
  • "customer"

CICallStatus

Enum type:

  • "pending"
  • "missed"
  • "rejected"
  • "accepted"
  • "negotiated"
  • "progress"
  • "ended"
  • "error"

CIContent

Discriminated union type:

SndMsgContent:

RcvMsgContent:

SndDeleted:

RcvDeleted:

SndCall:

RcvCall:

RcvIntegrityError:

RcvDecryptionError:

  • type: "rcvDecryptionError"
  • msgDecryptError: MsgDecryptError
  • msgCount: word32

RcvMsgError:

RcvGroupInvitation:

SndGroupInvitation:

RcvDirectEvent:

RcvGroupEvent:

SndGroupEvent:

RcvConnEvent:

SndConnEvent:

RcvChatFeature:

SndChatFeature:

RcvChatPreference:

SndChatPreference:

RcvGroupFeature:

SndGroupFeature:

RcvChatFeatureRejected:

RcvGroupFeatureRejected:

  • type: "rcvGroupFeatureRejected"
  • groupFeature: GroupFeature

SndModerated:

  • type: "sndModerated"

RcvModerated:

  • type: "rcvModerated"

RcvBlocked:

  • type: "rcvBlocked"

SndDirectE2EEInfo:

  • type: "sndDirectE2EEInfo"
  • e2eeInfo: E2EInfo

RcvDirectE2EEInfo:

  • type: "rcvDirectE2EEInfo"
  • e2eeInfo: E2EInfo

SndGroupE2EEInfo:

  • type: "sndGroupE2EEInfo"
  • e2eeInfo: E2EInfo

RcvGroupE2EEInfo:

  • type: "rcvGroupE2EEInfo"
  • e2eeInfo: E2EInfo

ChatBanner:

  • type: "chatBanner"

CIDeleteMode

Enum type:

  • "broadcast"
  • "internal"
  • "internalMark"
  • "history"

CIDeleted

Discriminated union type:

Deleted:

  • type: "deleted"
  • deletedTs: UTCTime?
  • chatType: ChatType

Blocked:

  • type: "blocked"
  • deletedTs: UTCTime?

BlockedByAdmin:

  • type: "blockedByAdmin"
  • deletedTs: UTCTime?

Moderated:

  • type: "moderated"
  • deletedTs: UTCTime?
  • byGroupMember: GroupMember

CIDirection

Discriminated union type:

DirectSnd:

  • type: "directSnd"

DirectRcv:

  • type: "directRcv"

GroupSnd:

  • type: "groupSnd"

GroupRcv:

ChannelRcv:

  • type: "channelRcv"

LocalSnd:

  • type: "localSnd"

LocalRcv:

  • type: "localRcv"

CIFile

Record type:


CIFileStatus

Discriminated union type:

SndStored:

  • type: "sndStored"

SndTransfer:

  • type: "sndTransfer"
  • sndProgress: int64
  • sndTotal: int64

SndCancelled:

  • type: "sndCancelled"

SndComplete:

  • type: "sndComplete"

SndError:

SndWarning:

RcvInvitation:

  • type: "rcvInvitation"

RcvAccepted:

  • type: "rcvAccepted"

RcvTransfer:

  • type: "rcvTransfer"
  • rcvProgress: int64
  • rcvTotal: int64

RcvAborted:

  • type: "rcvAborted"

RcvComplete:

  • type: "rcvComplete"

RcvCancelled:

  • type: "rcvCancelled"

RcvError:

RcvWarning:

Invalid:

  • type: "invalid"
  • text: string

CIForwardedFrom

Discriminated union type:

Unknown:

  • type: "unknown"

Contact:

  • type: "contact"
  • chatName: string
  • msgDir: MsgDirection
  • contactId: int64?
  • chatItemId: int64?

Group:

  • type: "group"
  • chatName: string
  • msgDir: MsgDirection
  • groupId: int64?
  • chatItemId: int64?

CIGroupInvitation

Record type:


CIGroupInvitationStatus

Enum type:

  • "pending"
  • "accepted"
  • "rejected"
  • "expired"

CIMention

Record type:


CIMentionMember

Record type:

  • groupMemberId: int64
  • displayName: string
  • localAlias: string?
  • memberRole: GroupMemberRole

CIMeta

Record type:

  • itemId: int64
  • itemTs: UTCTime
  • itemText: string
  • itemStatus: CIStatus
  • sentViaProxy: bool?
  • itemSharedMsgId: string?
  • itemForwarded: CIForwardedFrom?
  • itemDeleted: CIDeleted?
  • itemEdited: bool
  • itemTimed: CITimed?
  • itemLive: bool?
  • userMention: bool
  • hasLink: bool
  • deletable: bool
  • editable: bool
  • forwardedByMember: int64?
  • showGroupAsSender: bool
  • msgVerified: MsgVerified?
  • createdAt: UTCTime
  • updatedAt: UTCTime

CIQuote

Record type:


CIReaction

Record type:


CIReactionCount

Record type:

  • reaction: MsgReaction
  • userReacted: bool
  • totalReacted: int

CIStatus

Discriminated union type:

SndNew:

  • type: "sndNew"

SndSent:

SndRcvd:

SndErrorAuth:

  • type: "sndErrorAuth"

SndError:

SndWarning:

  • type: "sndWarning"
  • agentError: SndError

RcvNew:

  • type: "rcvNew"

RcvRead:

  • type: "rcvRead"

Invalid:

  • type: "invalid"
  • text: string

CITimed

Record type:

  • ttl: int
  • deleteAt: UTCTime?

ChatBotCommand

Discriminated union type:

Command:

  • type: "command"
  • keyword: string
  • label: string
  • params: string?

Menu:


ChatDeleteMode

Discriminated union type:

Full:

  • type: "full"
  • notify: bool

Entity:

  • type: "entity"
  • notify: bool

Messages:

  • type: "messages"

Syntax:

full|entity|messages[ notify=off]
type + (type == 'messages' ? '' : (!notify ? ' notify=off' : '')) // JavaScript
str(type) + ('' if str(type) == 'messages' else (' notify=off' if not notify else '')) # Python

ChatError

Discriminated union type:

Error:

ErrorAgent:

ErrorStore:


ChatErrorType

Discriminated union type:

NoActiveUser:

  • type: "noActiveUser"

NoConnectionUser:

  • type: "noConnectionUser"
  • agentConnId: string

NoSndFileUser:

  • type: "noSndFileUser"
  • agentSndFileId: string

NoRcvFileUser:

  • type: "noRcvFileUser"
  • agentRcvFileId: string

UserUnknown:

  • type: "userUnknown"

UserExists:

  • type: "userExists"
  • contactName: string

ChatRelayExists:

  • type: "chatRelayExists"

DifferentActiveUser:

  • type: "differentActiveUser"
  • commandUserId: int64
  • activeUserId: int64

CantDeleteActiveUser:

  • type: "cantDeleteActiveUser"
  • userId: int64

CantDeleteLastUser:

  • type: "cantDeleteLastUser"
  • userId: int64

CantHideLastUser:

  • type: "cantHideLastUser"
  • userId: int64

HiddenUserAlwaysMuted:

  • type: "hiddenUserAlwaysMuted"
  • userId: int64

EmptyUserPassword:

  • type: "emptyUserPassword"
  • userId: int64

UserAlreadyHidden:

  • type: "userAlreadyHidden"
  • userId: int64

UserNotHidden:

  • type: "userNotHidden"
  • userId: int64

InvalidDisplayName:

  • type: "invalidDisplayName"
  • displayName: string
  • validName: string

ChatNotStarted:

  • type: "chatNotStarted"

ChatNotStopped:

  • type: "chatNotStopped"

ChatStoreChanged:

  • type: "chatStoreChanged"

InvalidConnReq:

  • type: "invalidConnReq"

SimplexDomainNotReady:

NotResolvedLocally:

  • type: "notResolvedLocally"

UnsupportedConnReq:

  • type: "unsupportedConnReq"

ConnReqMessageProhibited:

  • type: "connReqMessageProhibited"

ContactNotReady:

  • type: "contactNotReady"
  • contact: Contact

ContactNotActive:

  • type: "contactNotActive"
  • contact: Contact

ContactDisabled:

  • type: "contactDisabled"
  • contact: Contact

ConnectionDisabled:

  • type: "connectionDisabled"
  • connection: Connection

GroupUserRole:

GroupMemberInitialRole:

ContactIncognitoCantInvite:

  • type: "contactIncognitoCantInvite"

GroupIncognitoCantInvite:

  • type: "groupIncognitoCantInvite"

GroupContactRole:

  • type: "groupContactRole"
  • contactName: string

GroupDuplicateMember:

  • type: "groupDuplicateMember"
  • contactName: string

GroupDuplicateMemberId:

  • type: "groupDuplicateMemberId"

GroupNotJoined:

  • type: "groupNotJoined"
  • groupInfo: GroupInfo

GroupMemberNotActive:

  • type: "groupMemberNotActive"

CantBlockMemberForSelf:

GroupMemberUserRemoved:

  • type: "groupMemberUserRemoved"

GroupMemberNotFound:

  • type: "groupMemberNotFound"

GroupCantResendInvitation:

  • type: "groupCantResendInvitation"
  • groupInfo: GroupInfo
  • contactName: string

GroupInternal:

  • type: "groupInternal"
  • message: string

FileNotFound:

  • type: "fileNotFound"
  • message: string

FileSize:

  • type: "fileSize"
  • filePath: string

FileAlreadyReceiving:

  • type: "fileAlreadyReceiving"
  • message: string

FileCancelled:

  • type: "fileCancelled"
  • message: string

FileCancel:

  • type: "fileCancel"
  • fileId: int64
  • message: string

FileAlreadyExists:

  • type: "fileAlreadyExists"
  • filePath: string

FileWrite:

  • type: "fileWrite"
  • filePath: string
  • message: string

FileSend:

FileRcvChunk:

  • type: "fileRcvChunk"
  • message: string

FileInternal:

  • type: "fileInternal"
  • message: string

FileImageType:

  • type: "fileImageType"
  • filePath: string

FileImageSize:

  • type: "fileImageSize"
  • filePath: string

FileNotReceived:

  • type: "fileNotReceived"
  • fileId: int64

FileNotApproved:

  • type: "fileNotApproved"
  • fileId: int64
  • unknownServers: [string]

FallbackToSMPProhibited:

  • type: "fallbackToSMPProhibited"
  • fileId: int64

InlineFileProhibited:

  • type: "inlineFileProhibited"
  • fileId: int64

InvalidForward:

  • type: "invalidForward"

InvalidChatItemUpdate:

  • type: "invalidChatItemUpdate"

InvalidChatItemDelete:

  • type: "invalidChatItemDelete"

HasCurrentCall:

  • type: "hasCurrentCall"

NoCurrentCall:

  • type: "noCurrentCall"

CallContact:

  • type: "callContact"
  • contactId: int64

DirectMessagesProhibited:

AgentVersion:

  • type: "agentVersion"

AgentNoSubResult:

  • type: "agentNoSubResult"
  • agentConnId: string

CommandError:

  • type: "commandError"
  • message: string

AgentCommandError:

  • type: "agentCommandError"
  • message: string

InvalidFileDescription:

  • type: "invalidFileDescription"
  • message: string

ConnectionIncognitoChangeProhibited:

  • type: "connectionIncognitoChangeProhibited"

ConnectionUserChangeProhibited:

  • type: "connectionUserChangeProhibited"

PeerChatVRangeIncompatible:

  • type: "peerChatVRangeIncompatible"

RelayTestError:

  • type: "relayTestError"
  • message: string

InternalError:

  • type: "internalError"
  • message: string

Exception:

  • type: "exception"
  • message: string

ChatFeature

Enum type:

  • "timedMessages"
  • "fullDelete"
  • "reactions"
  • "voice"
  • "files"
  • "calls"
  • "sessions"

ChatInfo

Discriminated union type:

Direct:

Group:

Local:

ContactRequest:

ContactConnection:


ChatItem

Record type:


ChatItemDeletion

Message deletion result.

Record type:


ChatListQuery

Discriminated union type:

Filters:

  • type: "filters"
  • favorite: bool
  • unread: bool

Search:

  • type: "search"
  • search: string

ChatPeerType

Enum type:

  • "human"
  • "bot"
  • "business"

ChatRef

Used in API commands. Chat scope can only be passed with groups.

Record type:

Syntax:

<str(chatType)><chatId>[<str(chatScope)>]
ChatType.cmdString(chatType) + chatId + (chatScope ? GroupChatScope.cmdString(chatScope) : '') // JavaScript
ChatType_cmd_string(chatType) + str(chatId) + ((GroupChatScope_cmd_string(chatScope)) if chatScope is not None else '') # Python

ChatSettings

Record type:

  • enableNtfs: MsgFilter
  • sendRcpts: bool?
  • favorite: bool

ChatStats

Record type:

  • unreadCount: int
  • unreadMentions: int
  • reportsCount: int
  • minUnreadItemId: int64
  • unreadChat: bool

ChatType

Enum type:

  • "direct"
  • "group"
  • "local"

Syntax:

@|#|*|
self == 'direct' ? '@' : self == 'group' ? '#' : self == 'local' ? '*' : '' // JavaScript
'@' if str(self) == 'direct' else '#' if str(self) == 'group' else '*' if str(self) == 'local' else '' # Python

ChatWallpaper

Record type:

  • preset: string?
  • imageFile: string?
  • background: string?
  • tint: string?
  • scaleType: ChatWallpaperScale?
  • scale: double?

ChatWallpaperScale

Enum type:

  • "fill"
  • "fit"
  • "repeat"

ClientNotice

Record type:

  • ttl: int64?

Color

Enum type:

  • "black"
  • "red"
  • "green"
  • "yellow"
  • "blue"
  • "magenta"
  • "cyan"
  • "white"

CommandError

Discriminated union type:

UNKNOWN:

  • type: "UNKNOWN"

SYNTAX:

  • type: "SYNTAX"

PROHIBITED:

  • type: "PROHIBITED"

NO_AUTH:

  • type: "NO_AUTH"

HAS_AUTH:

  • type: "HAS_AUTH"

NO_ENTITY:

  • type: "NO_ENTITY"

CommandErrorType

Discriminated union type:

PROHIBITED:

  • type: "PROHIBITED"

SYNTAX:

  • type: "SYNTAX"

NO_CONN:

  • type: "NO_CONN"

SIZE:

  • type: "SIZE"

LARGE:

  • type: "LARGE"

CommentsGroupPreference

Record type:


ComposedMessage

Record type:


ConnStatus

Discriminated union type:

New:

  • type: "new"

Prepared:

  • type: "prepared"

Joined:

  • type: "joined"

Requested:

  • type: "requested"

Accepted:

  • type: "accepted"

SndReady:

  • type: "sndReady"

Ready:

  • type: "ready"

Deleted:

  • type: "deleted"

Failed:

  • type: "failed"
  • connError: string

ConnType

Enum type:

  • "contact"
  • "member"
  • "user_contact"

Connection

Record type:

  • connId: int64
  • agentConnId: string
  • connChatVersion: int
  • peerChatVRange: VersionRange
  • connLevel: int
  • viaContact: int64?
  • viaUserContactLink: int64?
  • viaGroupLink: bool
  • groupLinkId: string?
  • xContactId: string?
  • customUserProfileId: int64?
  • connType: ConnType
  • connStatus: ConnStatus
  • contactConnInitiated: bool
  • localAlias: string
  • entityId: int64?
  • connectionCode: SecurityCode?
  • pqSupport: bool
  • pqEncryption: bool
  • pqSndEnabled: bool?
  • pqRcvEnabled: bool?
  • authErrCounter: int
  • quotaErrCounter: int
  • createdAt: UTCTime

ConnectionEntity

Discriminated union type:

RcvDirectMsgConnection:

RcvGroupMsgConnection:

UserContactConnection:


ConnectionErrorType

Discriminated union type:

NOT_FOUND:

  • type: "NOT_FOUND"

DUPLICATE:

  • type: "DUPLICATE"

SIMPLEX:

  • type: "SIMPLEX"

NOT_ACCEPTED:

  • type: "NOT_ACCEPTED"

NOT_AVAILABLE:

  • type: "NOT_AVAILABLE"

ConnectionMode

Enum type:

  • "inv"
  • "con"

ConnectionPlan

Discriminated union type:

InvitationLink:

ContactAddress:

GroupLink:

Error:


Contact

Record type:


ContactAddressPlan

Discriminated union type:

Ok:

OwnLink:

  • type: "ownLink"

ConnectingConfirmReconnect:

  • type: "connectingConfirmReconnect"

ConnectingProhibit:

  • type: "connectingProhibit"
  • contact: Contact

Known:

ContactViaAddress:

  • type: "contactViaAddress"
  • contact: Contact

ContactShortLinkData

Record type:


ContactStatus

Enum type:

  • "active"
  • "deleted"
  • "deletedByUser"
  • "rejected"

ContactUserPref

Discriminated union type:

Contact:

User:


ContactUserPreference

Record type:


ContactUserPreferences

Record type:


Record type:

  • connFullLink: string
  • connShortLink: string?

Syntax:

<connFullLink>[ <connShortLink>]
connFullLink + (connShortLink ? ' ' + connShortLink : '') // JavaScript
connFullLink + ((' ' + connShortLink) if connShortLink is not None else '') # Python

CryptoFile

Record type:


CryptoFileArgs

Record type:

  • fileKey: string
  • fileNonce: string

DroppedMsg

Record type:

  • brokerTs: UTCTime
  • attempts: int

E2EInfo

Record type:

  • public: bool?
  • pqEnabled: bool?

ErrorType

Discriminated union type:

BLOCK:

  • type: "BLOCK"

SESSION:

  • type: "SESSION"

CMD:

PROXY:

AUTH:

  • type: "AUTH"

BLOCKED:

SERVICE:

  • type: "SERVICE"

CRYPTO:

  • type: "CRYPTO"

QUOTA:

  • type: "QUOTA"

STORE:

  • type: "STORE"
  • storeErr: string

NO_MSG:

  • type: "NO_MSG"

LARGE_MSG:

  • type: "LARGE_MSG"

EXPIRED:

  • type: "EXPIRED"

INTERNAL:

  • type: "INTERNAL"

NAME:

DUPLICATE_:

  • type: "DUPLICATE_"

FeatureAllowed

Enum type:

  • "always"
  • "yes"
  • "no"

FileDescr

Record type:

  • fileDescrText: string
  • fileDescrPartNo: int
  • fileDescrComplete: bool

FileError

Discriminated union type:

Auth:

  • type: "auth"

Blocked:

NoFile:

  • type: "noFile"

Relay:

Other:

  • type: "other"
  • fileError: string

FileErrorType

Discriminated union type:

NOT_APPROVED:

  • type: "NOT_APPROVED"

SIZE:

  • type: "SIZE"

REDIRECT:

  • type: "REDIRECT"
  • redirectError: string

FILE_IO:

  • type: "FILE_IO"
  • fileIOError: string

NO_FILE:

  • type: "NO_FILE"

FileInvitation

Record type:

  • fileName: string
  • fileSize: int64
  • fileDigest: string?
  • fileConnReq: string?
  • fileInline: InlineFileMode?
  • fileDescr: FileDescr?

FileProtocol

Enum type:

  • "smp"
  • "xftp"
  • "local"

FileStatus

Enum type:

  • "new"
  • "accepted"
  • "connected"
  • "complete"
  • "cancelled"

FileTransferMeta

Record type:

  • fileId: int64
  • xftpSndFile: XFTPSndFile?
  • xftpRedirectFor: int64?
  • fileName: string
  • filePath: string
  • fileSize: int64
  • fileInline: InlineFileMode?
  • chunkSize: int64
  • cancelled: bool

FileType

Enum type:

  • "normal"
  • "roster"

Format

Discriminated union type:

Bold:

  • type: "bold"

Italic:

  • type: "italic"

StrikeThrough:

  • type: "strikeThrough"

Snippet:

  • type: "snippet"

Secret:

  • type: "secret"

Small:

  • type: "small"

Colored:

  • type: "colored"
  • color: Color

Uri:

  • type: "uri"

HyperLink:

  • type: "hyperLink"
  • showText: string?
  • linkUri: string

SimplexLink:

  • type: "simplexLink"
  • showText: string?
  • linkType: SimplexLinkType
  • simplexUri: string
  • smpHosts: [string]

SimplexName:

Command:

  • type: "command"
  • commandStr: string

Mention:

  • type: "mention"
  • memberName: string

Email:

  • type: "email"

Phone:

  • type: "phone"

FormattedText

Record type:

  • format: Format?
  • text: string

FullGroupPreferences

Record type:


FullPreferences

Record type:


Group

Record type:


GroupChatScope

Discriminated union type:

MemberSupport:

  • type: "memberSupport"
  • groupMemberId_: int64?

Syntax:

(_support[:<groupMemberId_>])
'(_support' + (groupMemberId_ ? ':' + groupMemberId_ : '') + ')' // JavaScript
'(_support' + ((':' + str(groupMemberId_)) if groupMemberId_ is not None else '') + ')' # Python

GroupChatScopeInfo

Discriminated union type:

MemberSupport:


GroupDirectInvitation

Record type:

  • groupDirectInvLink: string
  • fromGroupId_: int64?
  • fromGroupMemberId_: int64?
  • fromGroupMemberConnId_: int64?
  • groupDirectInvStartedConnection: bool

GroupFeature

Enum type:

  • "timedMessages"
  • "directMessages"
  • "fullDelete"
  • "reactions"
  • "voice"
  • "files"
  • "simplexLinks"
  • "reports"
  • "history"
  • "support"
  • "sessions"
  • "comments"
  • "signMessages"

GroupFeatureEnabled

Enum type:

  • "on"
  • "off"

GroupInfo

Record type:


GroupKeys

Record type:

  • publicGroupId: string
  • groupRootKey: GroupRootKey
  • memberPrivKey: string

Record type:

  • userContactLinkId: int64
  • connLinkContact: CreatedConnLink
  • shortLinkDataSet: bool
  • shortLinkLargeDataSet: bool
  • groupLinkId: string
  • acceptMemberRole: GroupMemberRole

GroupLinkOwner

Record type:

  • memberId: string
  • memberKey: string

GroupLinkPlan

Discriminated union type:

Ok:

OwnLink:

ConnectingConfirmReconnect:

  • type: "connectingConfirmReconnect"

ConnectingProhibit:

  • type: "connectingProhibit"
  • groupInfo_: GroupInfo?

Known:

NoRelays:

UpdateRequired:


GroupMember

Record type:


GroupMemberAdmission

Record type:


GroupMemberCategory

Enum type:

  • "user"
  • "invitee"
  • "host"
  • "pre"
  • "post"

GroupMemberRef

Record type:

  • groupMemberId: int64
  • profile: Profile

GroupMemberRole

Enum type:

  • "relay"
  • "observer"
  • "author"
  • "member"
  • "moderator"
  • "admin"
  • "owner"

GroupMemberSettings

Record type:

  • showMessages: bool

GroupMemberStatus

Enum type:

  • "rejected"
  • "removed"
  • "left"
  • "deleted"
  • "unknown"
  • "invited"
  • "pending_approval"
  • "pending_review"
  • "introduced"
  • "intro-inv"
  • "accepted"
  • "announced"
  • "connected"
  • "complete"
  • "creator"

GroupPreference

Record type:


GroupPreferences

Record type:


GroupProfile

Record type:


GroupRelay

Record type:


GroupRootKey

Discriminated union type:

Private:

  • type: "private"
  • rootPrivKey: string

Public:

  • type: "public"
  • rootPubKey: string

GroupShortLinkData

Record type:


GroupShortLinkInfo

Record type:

  • direct: bool
  • groupRelays: [string]
  • publicGroupId: string?

GroupSummary

Record type:

  • currentMembers: int64
  • publicMemberCount: int64?

GroupSupportChat

Record type:

  • chatTs: UTCTime
  • unread: int64
  • memberAttention: int64
  • mentions: int64
  • lastMsgFromMemberTs: UTCTime?

GroupType

Enum type:

  • "channel"
  • "group"

HandshakeError

Enum type:

  • "PARSE"
  • "IDENTITY"
  • "BAD_AUTH"
  • "BAD_SERVICE"

InlineFileMode

Enum type:

  • "offer"
  • "sent"

InvitationLinkPlan

Discriminated union type:

Ok:

OwnLink:

  • type: "ownLink"

Connecting:

  • type: "connecting"
  • contact_: Contact?

Known:


InvitedBy

Discriminated union type:

Contact:

  • type: "contact"
  • byContactId: int64

User:

  • type: "user"

Unknown:

  • type: "unknown"

LinkContent

Discriminated union type:

Page:

  • type: "page"

Image:

  • type: "image"

Video:

  • type: "video"
  • duration: int?

Unknown:

  • type: "unknown"
  • tag: string
  • json: JSONObject

LinkOwnerSig

Record type:

  • ownerId: string?
  • chatBinding: string
  • ownerSig: string

LinkPreview

Record type:

  • uri: string
  • title: string
  • description: string
  • image: string
  • content: LinkContent?

LocalBadge

Record type:


LocalProfile

Record type:

  • profileId: int64
  • displayName: string
  • fullName: string
  • shortDescr: string?
  • description: string?
  • image: string?
  • contactLink: string?
  • preferences: Preferences?
  • peerType: ChatPeerType?
  • localBadge: LocalBadge?
  • localAlias: string
  • contactDomain: SimplexDomainClaim?
  • contactDomainVerified: bool?

MemberCriteria

Enum type:

  • "all"

Connection link sent in a message - only short links are allowed.

Discriminated union type:

Contact:

  • type: "contact"
  • connLink: string
  • profile: Profile
  • business: bool

Invitation:

  • type: "invitation"
  • invLink: string
  • profile: Profile

Group:


MsgContent

Discriminated union type:

Text:

  • type: "text"
  • text: string

Link:

Image:

  • type: "image"
  • text: string
  • image: string

Video:

  • type: "video"
  • text: string
  • image: string
  • duration: int

Voice:

  • type: "voice"
  • text: string
  • duration: int

File:

  • type: "file"
  • text: string

Report:

Chat:

Unknown:

  • type: "unknown"
  • tag: string
  • text: string
  • json: JSONObject

MsgDecryptError

Enum type:

  • "ratchetHeader"
  • "tooManySkipped"
  • "ratchetEarlier"
  • "other"
  • "ratchetSync"

MsgDirection

Enum type:

  • "rcv"
  • "snd"

MsgErrorType

Discriminated union type:

MsgSkipped:

  • type: "msgSkipped"
  • fromMsgId: int64
  • toMsgId: int64

MsgBadId:

  • type: "msgBadId"
  • msgId: int64

MsgBadHash:

  • type: "msgBadHash"

MsgDuplicate:

  • type: "msgDuplicate"

MsgFilter

Enum type:

  • "none"
  • "all"
  • "mentions"

MsgReaction

Discriminated union type:

Emoji:

  • type: "emoji"
  • emoji: string

Unknown:

  • type: "unknown"
  • tag: string
  • json: JSONObject

MsgReceiptStatus

Enum type:

  • "ok"
  • "badMsgHash"

MsgSigStatus

Enum type:

  • "verified"
  • "signedNoKey"

MsgVerified

Discriminated union type:

Signed:

SigMissing:

  • type: "sigMissing"

NameErrorType

Discriminated union type:

NO_RESOLVER:

  • type: "NO_RESOLVER"

NOT_FOUND:

  • type: "NOT_FOUND"

RESOLVER:

  • type: "RESOLVER"
  • resolverErr: string

NetworkError

Discriminated union type:

ConnectError:

  • type: "connectError"
  • connectError: string

TLSError:

  • type: "tLSError"
  • tlsError: string

UnknownCAError:

  • type: "unknownCAError"

FailedError:

  • type: "failedError"

TimeoutError:

  • type: "timeoutError"

SubscribeError:

  • type: "subscribeError"
  • subscribeError: string

NewUser

Record type:

  • profile: Profile?
  • pastTimestamp: bool
  • userChatRelay: bool
  • clientService: bool
  • keepActiveUser: bool

NoteFolder

Record type:

  • noteFolderId: int64
  • userId: int64
  • createdAt: UTCTime
  • updatedAt: UTCTime
  • chatTs: UTCTime
  • favorite: bool
  • unread: bool

OwnerVerification

Discriminated union type:

Verified:

  • type: "verified"

Failed:

  • type: "failed"
  • reason: string

PaginationByTime

Discriminated union type:

Last:

  • type: "last"
  • count: int

Syntax:

count=<count>
'count=' + count // JavaScript
'count=' + str(count) # Python

PendingContactConnection

Record type:

  • pccConnId: int64
  • pccAgentConnId: string
  • pccConnStatus: ConnStatus
  • viaContactUri: bool
  • viaUserContactLink: int64?
  • groupLinkId: string?
  • customUserProfileId: int64?
  • connLinkInv: CreatedConnLink?
  • localAlias: string
  • createdAt: UTCTime
  • updatedAt: UTCTime

PlanResolveMode

Enum type:

  • "allGroups"
  • "unknown"
  • "never"

PrefEnabled

Record type:

  • forUser: bool
  • forContact: bool

Preferences

Record type:


PreparedContact

Record type:


PreparedGroup

Record type:

  • connLinkToConnect: CreatedConnLink
  • connLinkPreparedConnection: bool
  • connLinkStartedConnection: bool
  • welcomeSharedMsgId: string?
  • requestSharedMsgId: string?

Profile

Record type:


ProxyClientError

Discriminated union type:

ProtocolError:

  • type: "protocolError"
  • protocolErr: ErrorType

UnexpectedResponse:

  • type: "unexpectedResponse"
  • responseStr: string

ResponseError:

  • type: "responseError"
  • responseErr: ErrorType

ProxyError

Discriminated union type:

PROTOCOL:

BROKER:

BASIC_AUTH:

  • type: "BASIC_AUTH"

NO_SESSION:

  • type: "NO_SESSION"

PublicGroupAccess

Record type:

  • groupWebPage: string?
  • groupDomainClaim: SimplexDomainClaim?
  • domainWebPage: bool
  • allowEmbedding: bool

PublicGroupData

Record type:

  • publicMemberCount: int64

PublicGroupProfile

Record type:


RCErrorType

Discriminated union type:

Internal:

  • type: "internal"
  • internalErr: string

Identity:

  • type: "identity"

NoLocalAddress:

  • type: "noLocalAddress"

NewController:

  • type: "newController"

NotDiscovered:

  • type: "notDiscovered"

TLSStartFailed:

  • type: "tLSStartFailed"

Exception:

  • type: "exception"
  • exception: string

CtrlAuth:

  • type: "ctrlAuth"

CtrlNotFound:

  • type: "ctrlNotFound"

CtrlError:

  • type: "ctrlError"
  • ctrlErr: string

Invitation:

  • type: "invitation"

Version:

  • type: "version"

Encrypt:

  • type: "encrypt"

Decrypt:

  • type: "decrypt"

BlockSize:

  • type: "blockSize"

Syntax:

  • type: "syntax"
  • syntaxErr: string

RatchetSyncState

Enum type:

  • "ok"
  • "allowed"
  • "required"
  • "started"
  • "agreed"

RcvConnEvent

Discriminated union type:

SwitchQueue:

RatchetSync:

VerificationCodeReset:

  • type: "verificationCodeReset"

PqEnabled:

  • type: "pqEnabled"
  • enabled: bool

RcvDirectEvent

Discriminated union type:

ContactDeleted:

  • type: "contactDeleted"

ProfileUpdated:

GroupInvLinkReceived:


RcvFileDescr

Record type:

  • fileDescrId: int64
  • fileDescrText: string
  • fileDescrPartNo: int
  • fileDescrComplete: bool

RcvFileStatus

Discriminated union type:

New:

  • type: "new"

Accepted:

  • type: "accepted"
  • filePath: string

Connected:

  • type: "connected"
  • filePath: string

Complete:

  • type: "complete"
  • filePath: string

Cancelled:

  • type: "cancelled"
  • filePath_: string?

RcvFileTransfer

Record type:


RcvGroupEvent

Discriminated union type:

MemberAdded:

  • type: "memberAdded"
  • groupMemberId: int64
  • profile: Profile

MemberConnected:

  • type: "memberConnected"

MemberAccepted:

  • type: "memberAccepted"
  • groupMemberId: int64
  • profile: Profile

UserAccepted:

  • type: "userAccepted"

MemberLeft:

  • type: "memberLeft"

MemberRole:

MemberBlocked:

  • type: "memberBlocked"
  • groupMemberId: int64
  • profile: Profile
  • blocked: bool

UserRole:

MemberDeleted:

  • type: "memberDeleted"
  • groupMemberId: int64
  • profile: Profile

UserDeleted:

  • type: "userDeleted"

GroupDeleted:

  • type: "groupDeleted"

GroupUpdated:

InvitedViaGroupLink:

  • type: "invitedViaGroupLink"

MemberCreatedContact:

  • type: "memberCreatedContact"

MemberProfileUpdated:

  • type: "memberProfileUpdated"
  • fromProfile: Profile
  • toProfile: Profile

NewMemberPendingReview:

  • type: "newMemberPendingReview"

MsgBadSignature:

  • type: "msgBadSignature"

RcvMsgError

Discriminated union type:

Dropped:

  • type: "dropped"
  • attempts: int

ParseError:

  • type: "parseError"
  • parseError: string

RelayCapabilities

Record type:

  • webDomain: string?

RelayProfile

Record type:

  • displayName: string
  • fullName: string
  • shortDescr: string?
  • image: string?

RelayStatus

Enum type:

  • "new"
  • "invited"
  • "accepted"
  • "acknowledgedRoster"
  • "active"
  • "inactive"
  • "rejected"

ReportReason

Enum type:

  • "spam"
  • "content"
  • "community"
  • "profile"
  • "other"

RoleGroupPreference

Record type:


SMPAgentError

Discriminated union type:

A_MESSAGE:

  • type: "A_MESSAGE"

A_PROHIBITED:

  • type: "A_PROHIBITED"
  • prohibitedErr: string

A_VERSION:

  • type: "A_VERSION"

A_LINK:

  • type: "A_LINK"
  • linkErr: string

A_CRYPTO:

A_DUPLICATE:

A_QUEUE:

  • type: "A_QUEUE"
  • queueErr: string

A_SERVICE:


SecurityCode

Record type:

  • securityCode: string
  • verifiedAt: UTCTime

SimplePreference

Record type:


SimplexDomain

Record type:

  • nameTLD: SimplexTLD
  • domain: string
  • subDomain: [string]

SimplexDomainClaim

Record type:


SimplexDomainError

Discriminated union type:

NoValidLink:

  • type: "noValidLink"

UnknownDomain:

  • type: "unknownDomain"

SimplexDomainProof

Record type:

  • linkOwnerId: string?
  • presHeader: string
  • signature: string

SimplexLinkType

Enum type:

  • "contact"
  • "invitation"
  • "group"
  • "channel"
  • "relay"

SimplexNameInfo

Record type:


SimplexNameType

Enum type:

  • "publicGroup"
  • "contact"

SimplexTLD

Enum type:

  • "simplex"
  • "testing"
  • "web"

SndCIStatusProgress

Enum type:

  • "partial"
  • "complete"

SndConnEvent

Discriminated union type:

SwitchQueue:

RatchetSync:

PqEnabled:

  • type: "pqEnabled"
  • enabled: bool

SndError

Discriminated union type:

Auth:

  • type: "auth"

Quota:

  • type: "quota"

Expired:

  • type: "expired"

Relay:

Proxy:

  • type: "proxy"
  • proxyServer: string
  • srvError: SrvError

ProxyRelay:

  • type: "proxyRelay"
  • proxyServer: string
  • srvError: SrvError

Other:

  • type: "other"
  • sndError: string

SndFileTransfer

Record type:

  • fileId: int64
  • fileName: string
  • filePath: string
  • fileSize: int64
  • chunkSize: int64
  • recipientDisplayName: string
  • connId: int64
  • agentConnId: string
  • groupMemberId: int64?
  • fileStatus: FileStatus
  • fileDescrId: int64?
  • fileInline: InlineFileMode?

SndGroupEvent

Discriminated union type:

MemberRole:

MemberBlocked:

  • type: "memberBlocked"
  • groupMemberId: int64
  • profile: Profile
  • blocked: bool

UserRole:

MemberDeleted:

  • type: "memberDeleted"
  • groupMemberId: int64
  • profile: Profile

UserLeft:

  • type: "userLeft"

GroupUpdated:

MemberAccepted:

  • type: "memberAccepted"
  • groupMemberId: int64
  • profile: Profile

UserPendingReview:

  • type: "userPendingReview"

SrvError

Discriminated union type:

Host:

  • type: "host"

Version:

  • type: "version"

Other:

  • type: "other"
  • srvError: string

StoreError

Discriminated union type:

DuplicateName:

  • type: "duplicateName"

UserNotFound:

  • type: "userNotFound"
  • userId: int64

RelayUserNotFound:

  • type: "relayUserNotFound"

UserNotFoundByName:

  • type: "userNotFoundByName"
  • contactName: string

UserNotFoundByContactId:

  • type: "userNotFoundByContactId"
  • contactId: int64

UserNotFoundByGroupId:

  • type: "userNotFoundByGroupId"
  • groupId: int64

UserNotFoundByFileId:

  • type: "userNotFoundByFileId"
  • fileId: int64

UserNotFoundByContactRequestId:

  • type: "userNotFoundByContactRequestId"
  • contactRequestId: int64

ContactNotFound:

  • type: "contactNotFound"
  • contactId: int64

ContactNotFoundByName:

  • type: "contactNotFoundByName"
  • contactName: string

ContactNotFoundByMemberId:

  • type: "contactNotFoundByMemberId"
  • groupMemberId: int64

ContactNotReady:

  • type: "contactNotReady"
  • contactName: string

DuplicateContactLink:

  • type: "duplicateContactLink"

UserContactLinkNotFound:

  • type: "userContactLinkNotFound"

ContactRequestNotFound:

  • type: "contactRequestNotFound"
  • contactRequestId: int64

ContactRequestNotFoundByName:

  • type: "contactRequestNotFoundByName"
  • contactName: string

InvalidContactRequestEntity:

  • type: "invalidContactRequestEntity"
  • contactRequestId: int64

InvalidBusinessChatContactRequest:

  • type: "invalidBusinessChatContactRequest"

GroupNotFound:

  • type: "groupNotFound"
  • groupId: int64

GroupNotFoundByName:

  • type: "groupNotFoundByName"
  • groupName: string

GroupMemberNameNotFound:

  • type: "groupMemberNameNotFound"
  • groupId: int64
  • groupMemberName: string

GroupMemberNotFound:

  • type: "groupMemberNotFound"
  • groupMemberId: int64

GroupMemberNotFoundByIndex:

  • type: "groupMemberNotFoundByIndex"
  • groupMemberIndex: int64

MemberRelationsVectorNotFound:

  • type: "memberRelationsVectorNotFound"
  • groupMemberId: int64

GroupHostMemberNotFound:

  • type: "groupHostMemberNotFound"
  • groupId: int64

GroupMemberNotFoundByMemberId:

  • type: "groupMemberNotFoundByMemberId"
  • memberId: string

MemberContactGroupMemberNotFound:

  • type: "memberContactGroupMemberNotFound"
  • contactId: int64

InvalidMemberRelationUpdate:

  • type: "invalidMemberRelationUpdate"

GroupWithoutUser:

  • type: "groupWithoutUser"

DuplicateGroupMember:

  • type: "duplicateGroupMember"

DuplicateMemberId:

  • type: "duplicateMemberId"

GroupAlreadyJoined:

  • type: "groupAlreadyJoined"

GroupInvitationNotFound:

  • type: "groupInvitationNotFound"

NoteFolderAlreadyExists:

  • type: "noteFolderAlreadyExists"
  • noteFolderId: int64

NoteFolderNotFound:

  • type: "noteFolderNotFound"
  • noteFolderId: int64

UserNoteFolderNotFound:

  • type: "userNoteFolderNotFound"

SndFileNotFound:

  • type: "sndFileNotFound"
  • fileId: int64

SndFileInvalid:

  • type: "sndFileInvalid"
  • fileId: int64

RcvFileNotFound:

  • type: "rcvFileNotFound"
  • fileId: int64

RcvFileDescrNotFound:

  • type: "rcvFileDescrNotFound"
  • fileId: int64

FileNotFound:

  • type: "fileNotFound"
  • fileId: int64

RcvFileInvalid:

  • type: "rcvFileInvalid"
  • fileId: int64

RcvFileInvalidDescrPart:

  • type: "rcvFileInvalidDescrPart"

LocalFileNoTransfer:

  • type: "localFileNoTransfer"
  • fileId: int64

SharedMsgIdNotFoundByFileId:

  • type: "sharedMsgIdNotFoundByFileId"
  • fileId: int64

FileIdNotFoundBySharedMsgId:

  • type: "fileIdNotFoundBySharedMsgId"
  • sharedMsgId: string

SndFileNotFoundXFTP:

  • type: "sndFileNotFoundXFTP"
  • agentSndFileId: string

RcvFileNotFoundXFTP:

  • type: "rcvFileNotFoundXFTP"
  • agentRcvFileId: string

ConnectionNotFound:

  • type: "connectionNotFound"
  • agentConnId: string

ConnectionNotFoundById:

  • type: "connectionNotFoundById"
  • connId: int64

ConnectionNotFoundByMemberId:

  • type: "connectionNotFoundByMemberId"
  • groupMemberId: int64

PendingConnectionNotFound:

  • type: "pendingConnectionNotFound"
  • connId: int64

UniqueID:

  • type: "uniqueID"

LargeMsg:

  • type: "largeMsg"

InternalError:

  • type: "internalError"
  • message: string

DBException:

  • type: "dBException"
  • message: string

DBBusyError:

  • type: "dBBusyError"
  • message: string

BadChatItem:

  • type: "badChatItem"
  • itemId: int64
  • itemTs: UTCTime?

ChatItemNotFound:

  • type: "chatItemNotFound"
  • itemId: int64

ChatItemNotFoundByText:

  • type: "chatItemNotFoundByText"
  • text: string

ChatItemSharedMsgIdNotFound:

  • type: "chatItemSharedMsgIdNotFound"
  • sharedMsgId: string

ChatItemNotFoundByFileId:

  • type: "chatItemNotFoundByFileId"
  • fileId: int64

ChatItemNotFoundByContactId:

  • type: "chatItemNotFoundByContactId"
  • contactId: int64

ChatItemNotFoundByGroupId:

  • type: "chatItemNotFoundByGroupId"
  • groupId: int64

ProfileNotFound:

  • type: "profileNotFound"
  • profileId: int64

DuplicateGroupLink:

  • type: "duplicateGroupLink"
  • groupInfo: GroupInfo

GroupLinkNotFound:

  • type: "groupLinkNotFound"
  • groupInfo: GroupInfo

HostMemberIdNotFound:

  • type: "hostMemberIdNotFound"
  • groupId: int64

ContactNotFoundByFileId:

  • type: "contactNotFoundByFileId"
  • fileId: int64

NoGroupSndStatus:

  • type: "noGroupSndStatus"
  • itemId: int64
  • groupMemberId: int64

DuplicateGroupMessage:

  • type: "duplicateGroupMessage"
  • groupId: int64
  • sharedMsgId: string
  • authorGroupMemberId: int64?
  • forwardedByGroupMemberId: int64?

RemoteHostNotFound:

  • type: "remoteHostNotFound"
  • remoteHostId: int64

RemoteHostUnknown:

  • type: "remoteHostUnknown"

RemoteHostDuplicateCA:

  • type: "remoteHostDuplicateCA"

RemoteCtrlNotFound:

  • type: "remoteCtrlNotFound"
  • remoteCtrlId: int64

RemoteCtrlDuplicateCA:

  • type: "remoteCtrlDuplicateCA"

ProhibitedDeleteUser:

  • type: "prohibitedDeleteUser"
  • userId: int64
  • contactId: int64

OperatorNotFound:

  • type: "operatorNotFound"
  • serverOperatorId: int64

UsageConditionsNotFound:

  • type: "usageConditionsNotFound"

UserChatRelayNotFound:

  • type: "userChatRelayNotFound"
  • chatRelayId: int64

GroupRelayNotFound:

  • type: "groupRelayNotFound"
  • groupRelayId: int64

GroupRelayNotFoundByMemberId:

  • type: "groupRelayNotFoundByMemberId"
  • groupMemberId: int64

InvalidQuote:

  • type: "invalidQuote"

InvalidMention:

  • type: "invalidMention"

InvalidDeliveryTask:

  • type: "invalidDeliveryTask"
  • taskId: int64

DeliveryTaskNotFound:

  • type: "deliveryTaskNotFound"
  • taskId: int64

InvalidDeliveryJob:

  • type: "invalidDeliveryJob"
  • jobId: int64

DeliveryJobNotFound:

  • type: "deliveryJobNotFound"
  • jobId: int64

WorkItemError:

  • type: "workItemError"
  • errContext: string

SubscriptionStatus

Discriminated union type:

Active:

  • type: "active"

Pending:

  • type: "pending"

Removed:

  • type: "removed"
  • subError: string

NoSub:

  • type: "noSub"

SupportGroupPreference

Record type:


SwitchPhase

Enum type:

  • "started"
  • "confirmed"
  • "secured"
  • "completed"

TimedMessagesGroupPreference

Record type:


TimedMessagesPreference

Record type:


TransportError

Discriminated union type:

BadBlock:

  • type: "badBlock"

Version:

  • type: "version"

LargeMsg:

  • type: "largeMsg"

BadSession:

  • type: "badSession"

NoServerAuth:

  • type: "noServerAuth"

Handshake:


UIColorMode

Enum type:

  • "light"
  • "dark"

UIColors

Record type:

  • accent: string?
  • accentVariant: string?
  • secondary: string?
  • secondaryVariant: string?
  • background: string?
  • menus: string?
  • title: string?
  • accentVariant2: string?
  • sentMessage: string?
  • sentReply: string?
  • receivedMessage: string?
  • receivedReply: string?

UIThemeEntityOverride

Record type:


UIThemeEntityOverrides

Record type:


UpdatedMessage

Record type:

  • msgContent: MsgContent
  • mentions: {string : int64}

User

Record type:

  • userId: int64
  • agentUserId: int64
  • userContactId: int64
  • localDisplayName: string
  • profile: LocalProfile
  • fullPreferences: FullPreferences
  • activeUser: bool
  • activeOrder: int64
  • viewPwdHash: UserPwdHash?
  • showNtfs: bool
  • sendRcptsContacts: bool
  • sendRcptsSmallGroups: bool
  • autoAcceptMemberContacts: bool
  • userMemberProfileUpdatedAt: UTCTime?
  • userChatRelay: bool
  • clientService: bool
  • uiThemes: UIThemeEntityOverrides?

UserChatRelay

Record type:

  • chatRelayId: int64
  • address: string
  • relayProfile: RelayProfile
  • domains: [string]
  • preset: bool
  • tested: bool?
  • enabled: bool
  • deleted: bool

UserContact

Record type:

  • userContactLinkId: int64
  • connReqContact: string
  • groupId: int64?

Record type:


UserContactRequest

Record type:

  • contactRequestId: int64
  • agentInvitationId: string
  • contactId_: int64?
  • businessGroupId_: int64?
  • userContactLinkId_: int64?
  • cReqChatVRange: VersionRange
  • localDisplayName: string
  • profileId: int64
  • profile: LocalProfile
  • createdAt: UTCTime
  • updatedAt: UTCTime
  • xContactId: string?
  • pqSupport: bool
  • welcomeSharedMsgId: string?
  • requestSharedMsgId: string?
  • rejectionSupported: bool

UserContactRequestRef

Record type:

  • contactRequestId: int64
  • rejectionSupported: bool

UserInfo

Record type:

  • user: User
  • unreadCount: int

UserProfileUpdateSummary

Record type:

  • updateSuccesses: int
  • updateFailures: int
  • changedContacts: [Contact]

UserPwdHash

Record type:

  • hash: string
  • salt: string

VersionRange

Record type:

  • minVersion: int
  • maxVersion: int

XFTPErrorType

Discriminated union type:

BLOCK:

  • type: "BLOCK"

SESSION:

  • type: "SESSION"

HANDSHAKE:

  • type: "HANDSHAKE"

CMD:

AUTH:

  • type: "AUTH"

BLOCKED:

SIZE:

  • type: "SIZE"

QUOTA:

  • type: "QUOTA"

DIGEST:

  • type: "DIGEST"

CRYPTO:

  • type: "CRYPTO"

NO_FILE:

  • type: "NO_FILE"

HAS_FILE:

  • type: "HAS_FILE"

FILE_IO:

  • type: "FILE_IO"

TIMEOUT:

  • type: "TIMEOUT"

INTERNAL:

  • type: "INTERNAL"

DUPLICATE_:

  • type: "DUPLICATE_"

XFTPRcvFile

Record type:

  • rcvFileDescription: RcvFileDescr
  • agentRcvFileId: string?
  • agentRcvFileDeleted: bool
  • userApprovedRelays: bool

XFTPSndFile

Record type:

  • agentSndFileId: string
  • privateSndFileDescr: string?
  • agentSndFileDeleted: bool
  • cryptoArgs: CryptoFileArgs?