Documentation
¶
Index ¶
- type ABExtension
- type AccessPolicyConnectionRule
- type AccessPolicyConnectionRuleType
- type AccessPolicyGroup
- type AccessPolicyGroupList
- type AccessPolicyRule
- type AccessPolicyRuleList
- type ActionAfterDays
- type AddResult
- type AddResultList
- type AdditionalInfo
- type Administration
- type AdvancedOptionsSetting
- type Alias
- type AliasList
- type AliasTarget
- type AliasTargetList
- type AntibombingStats
- type AntivirusStats
- type ApiApplication
- type ArchiveOptions
- type AuthResult
- type AuthTypeList
- type BackupInfo
- type BackupOptions
- type BackupSchedule
- type BackupScheduleList
- type BackupStatus
- type BackupType
- type BuildType
- type ButtonColor
- type ByteUnits
- type ByteValueWithUnits
- type Certificate
- type CertificateList
- type CertificateType
- type Chart
- type ChartData
- type ChartList
- type ChartRowNamesList
- type ChartRowValuesList
- type ChartValueList
- type CleanOut
- type CompareOperator
- type Config
- type Connection
- func (c *Connection) AccessPolicyCreate(rules AccessPolicyRuleList) (ErrorList, CreateResultList, error)
- func (c *Connection) AccessPolicyCreateGroupList(groups AccessPolicyGroupList) (ErrorList, CreateResultList, error)
- func (c *Connection) AccessPolicyGet(query SearchQuery) (AccessPolicyRuleList, error)
- func (c *Connection) AccessPolicyGetGroupList() (AccessPolicyGroupList, error)
- func (c *Connection) AccessPolicyGetServiceList() (ServiceTypeInfoList, error)
- func (c *Connection) AccessPolicyRemove(ruleIds KIdList) (ErrorList, error)
- func (c *Connection) AccessPolicyRemoveGroupList(groupIds KIdList) (ErrorList, error)
- func (c *Connection) AccessPolicySet(rules AccessPolicyRuleList) (ErrorList, error)
- func (c *Connection) AccessPolicySetGroupList(groups AccessPolicyGroupList) (ErrorList, error)
- func (c *Connection) AliasesCheck(checkString string) ([]string, error)
- func (c *Connection) AliasesCreate(aliases AliasList) (CreateResultList, ErrorList, error)
- func (c *Connection) AliasesGet(domainID string, query SearchQuery) (AliasList, error)
- func (c *Connection) AliasesGetMailPublicFolderList(domainID string) (PublicFolderList, error)
- func (c *Connection) AliasesGetTargetList(domainID string, query SearchQuery) (AliasTargetList, error)
- func (c *Connection) AliasesRemove(aliasIDs []string) (ErrorList, error)
- func (c *Connection) AliasesSet(aliasIDs []string, pattern Alias) (ErrorList, error)
- func (c *Connection) ArchiveGet() (*ArchiveOptions, error)
- func (c *Connection) ArchiveGetImArchiveFile(fromDate Date, toDate Date) (*Download, error)
- func (c *Connection) ArchiveGetXmppArchiveFiles() (DownloadList, error)
- func (c *Connection) ArchiveSet(options ArchiveOptions) error
- func (c *Connection) CallRaw(method string, params interface{}) ([]byte, error)
- func (c *Connection) CancelSearch(searchId string) error
- func (c *Connection) Clear(logName LogType) error
- func (c *Connection) DomainsCheckPublicFoldersIntegrity() error
- func (c *Connection) DomainsGet(query SearchQuery) (DomainList, error)
- func (c *Connection) DomainsGetDomainFooterPlaceholders() (PlaceHolderList, error)
- func (c *Connection) DomainsGetSettings() (*DomainSetting, error)
- func (c *Connection) DomainsSaveFooterImage(fileID string) (string, error)
- func (c *Connection) DownloadsRemove(url string) error
- func (c *Connection) ExportLog(logName LogType, fromLine int, countLines int, format ExportFormat) (*Download, error)
- func (c *Connection) ExportLogRelative(logName LogType, fromLine int, countLines int, format ExportFormat) (*Download, error)
- func (c *Connection) Get(logName LogType, fromLine int, countLines int) (LogRowList, error)
- func (c *Connection) GetHighlightRules() (*HighlightRules, error)
- func (c *Connection) GetLogSet() (*LogSet, error)
- func (c *Connection) GetMessages() (TreeLeafList, error)
- func (c *Connection) GetSearchProgress(countLines int, searchId string) (LogRowList, int, *SearchStatus, int, error)
- func (c *Connection) GetSettings(logName LogType) (*LogSettings, error)
- func (c *Connection) Login(user, password string, app *ApiApplication) error
- func (c *Connection) Logout() error
- func (c *Connection) QueueGet(query SearchQuery)
- func (c *Connection) QueueGetProcessed(query SearchQuery) ([]string, error)
- func (c *Connection) QueueRemove(messageIDs []string) (int, error)
- func (c *Connection) QueueRemoveAll() (int, error)
- func (c *Connection) QueueRemoveMatching(senderPattern, recipientPattern string) (int, error)
- func (c *Connection) QueueRun() error
- func (c *Connection) QueueTryToSend(messageIDs []string) error
- func (c *Connection) Search(logName LogType, what string, fromLine int, toLine int, forward bool) (*string, error)
- func (c *Connection) ServerGetBrowserLanguages() ([]string, error)
- func (c *Connection) ServerGetClientStatistics() (bool, error)
- func (c *Connection) ServerGetColumnList(objectName, methodName string) ([]string, error)
- func (c *Connection) ServerGetConnections(query SearchQuery) (ConnectionList, error)
- func (c *Connection) ServerGetDirs(path string) ([]DirList, error)
- func (c *Connection) ServerGetDownloadProgress() (int, error)
- func (c *Connection) ServerGetLicenseExtensionsList() (ExtensionsList, error)
- func (c *Connection) ServerGetNamedConstantList() (NamedConstantList, error)
- func (c *Connection) ServerGetOpenedFoldersInfo(query SearchQuery) (FolderInfoList, error)
- func (c *Connection) ServerGetProductInfo() (*ProductInfo, error)
- func (c *Connection) ServerGetRemoteAdministration() (*Administration, error)
- func (c *Connection) ServerGetServerHash() (string, error)
- func (c *Connection) ServerGetServerIpAddresses() ([]string, error)
- func (c *Connection) ServerGetServerTime() (*ServerTimeInfo, error)
- func (c *Connection) ServerGetVersion() (*ServerVersion, error)
- func (c *Connection) ServerGetWebSessions(query SearchQuery) ([]WebSessionList, error)
- func (c *Connection) ServerKillWebSessions(ids []string) error
- func (c *Connection) ServerPathExists(username, password, path string) (string, error)
- func (c *Connection) ServerReboot() error
- func (c *Connection) ServerRestart() error
- func (c *Connection) ServerSendBugReport(name, email, language, subject, description string) error
- func (c *Connection) ServerSetClientStatistics(isEnabled bool) error
- func (c *Connection) ServerSetRemoteAdministration(setting *Administration) error
- func (c *Connection) ServerUpgrade() error
- func (c *Connection) ServerValidateRemoteAdministration(setting *Administration) error
- func (c *Connection) SessionGetDomain() (*Domain, error)
- func (c *Connection) SessionWhoAmI() (*UserDetails, error)
- func (c *Connection) SetHighlightRules(rules HighlightRules) error
- func (c *Connection) SetMessages(messages TreeLeafList) error
- func (c *Connection) SetSettings(logName LogType, newSettings LogSettings) error
- type ConnectionList
- type Connections
- type Constant
- type CreateResult
- type CreateResultList
- type Credentials
- type CustomImage
- type DataSource
- type Date
- type DateTimeStamp
- type DateTimeStampList
- type DayWeekMonthPeriod
- type DeployedType
- type DirList
- type Directories
- type Directory
- type DirectoryAccessResult
- type DirectoryList
- type DirectoryServiceDeleteMode
- type Distance
- type DistanceOrNull
- type DistanceType
- type DnsResolverStats
- type Domain
- type DomainInfo
- type DomainList
- type DomainSetting
- type Download
- type DownloadList
- type EffectiveUserRights
- type EffectiveUserRightsList
- type EmailAddress
- type EmailAddressList
- type EmailAddressType
- type EmailForwarding
- type Error
- type ErrorList
- type ErrorReport
- type ExportFormat
- type ExtensionsList
- type FacilityUnit
- type FailureAndBounce
- type FileFormatType
- type FolderInfo
- type FolderInfoList
- type ForwardingOptions
- type FulltextRebuildStatus
- type FulltextRebuildingCommand
- type FulltextScope
- type FulltextSetting
- type FulltextStatus
- type GreylistingStats
- type HighlightColor
- type HighlightItem
- type HighlightRules
- type HomeServer
- type HttpProxyOptions
- type IdEntity
- type ImapServerStats
- type ImportServer
- type Importee
- type ImporteeList
- type IntegerList
- type IpAddress
- type IpAddressList
- type ItemCountLimit
- type ItemName
- type KId
- type KIdList
- type KeepForRecovery
- type KoffOptions
- type KoffUpgradePolicy
- type LangDescription
- type LangDescriptionList
- type LastBackupStatus
- type LastLogin
- type LdapServerStats
- type LocalizableMessage
- type LocalizableMessageList
- type LocalizableMessageParameters
- type LogFileSettings
- type LogItem
- type LogRotationSettings
- type LogRow
- type LogRowList
- type LogSet
- type LogSettings
- type LogType
- type LogicalOperator
- type LoginStats
- type MailboxCount
- type ManipulationError
- type ManipulationErrorList
- type MasterAuthenticationOptions
- type MessageThroughput
- type MiscellaneousOptions
- type NamedConstant
- type NamedConstantList
- type NamedMultiValue
- type NamedMultiValueList
- type NamedValue
- type NamedValueList
- type NotificationType
- type Notifications
- type OccupiedStorage
- type OperatorOptions
- type OptionalEntity
- type OptionalLong
- type OptionalString
- type OtherStats
- type OutgoingMessageLimit
- type PersonalContact
- type PersonalContactList
- type PhoneNumber
- type PhoneNumberList
- type PhoneNumberType
- type PhotoAttachment
- type PlaceHolderList
- type Pop3ClientStats
- type Pop3ServerStats
- type PostalAddress
- type PostalAddressList
- type PostalAddressType
- type ProductInfo
- type PublicFolder
- type PublicFolderList
- type QuotaNotification
- type QuotaUsage
- type QuotaUsageList
- type RemovalRequest
- type RemovalRequestList
- type RenameInfo
- type RestrictionKind
- type ResultTriplet
- type ResultTripletList
- type RotationPeriod
- type Scale
- type ScaleList
- type SearchQuery
- type SearchStatus
- type ServerDirectoryType
- type ServerOs
- type ServerStatistics
- type ServerTimeInfo
- type ServerVersion
- type ServiceType
- type ServiceTypeInfo
- type ServiceTypeInfoList
- type SettingPath
- type SettingQuery
- type SeverityUnit
- type SizeLimit
- type SmtpClientStats
- type SmtpServerStats
- type SortDirection
- type SortOrder
- type SortOrderList
- type SpamStats
- type StoreDirectoryOptions
- type StoreStatus
- type StringList
- type SubCondition
- type SubConditionList
- type SyslogSettings
- type Time
- type TimeHMS
- type TimeLimit
- type TimeUnit
- type TreeLeaf
- type TreeLeafList
- type TypeExpStatistics
- type UpdateCheckerOptions
- type UpdateCheckerStatus
- type UpdateInfo
- type Url
- type UrlList
- type UrlType
- type User
- type UserAuthType
- type UserDeleteFolderMode
- type UserDetails
- type UserEmailAddressList
- type UserForwardMode
- type UserGroup
- type UserGroupList
- type UserList
- type UserQuota
- type UserRight
- type UserRoleType
- type UserStatList
- type UserStats
- type ValidPeriod
- type ValidType
- type WebComponent
- type WebMailOptions
- type WebServerStats
- type WebSessionList
- type WebmailCustomLoginPage
- type XmppServerStats
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ABExtension ¶ added in v0.1.2
ABExtension - Extension of Apple Address Book
type AccessPolicyConnectionRule ¶ added in v0.1.2
type AccessPolicyConnectionRule struct {
Type AccessPolicyConnectionRuleType `json:"type"` // type of rule
GroupId KId `json:"groupId"` // if type of rule is 'ServiceIpAllowed/Denied' there is ID of IP Group
}
type AccessPolicyConnectionRuleType ¶ added in v0.1.2
type AccessPolicyConnectionRuleType string
const ( ServiceAllowed AccessPolicyConnectionRuleType = "ServiceAllowed" // service is allowed ServiceDenied AccessPolicyConnectionRuleType = "ServiceDenied" // service is forbidden ServiceIpAllowed AccessPolicyConnectionRuleType = "ServiceIpAllowed" // service is allowed for specific IP group ServiceIpDenied AccessPolicyConnectionRuleType = "ServiceIpDenied" // service is forbidden for specific IP group )
type AccessPolicyGroup ¶ added in v0.1.2
type AccessPolicyGroup struct {
Id KId `json:"id"` // [READ-ONLY] [REQUIRED FOR SET] global identification
Name string `json:"name"` // name of policy
IsDefault bool `json:"isDefault"` // [READ-ONLY]
}
AccessPolicyGroup - Access policy group details.
type AccessPolicyGroupList ¶ added in v0.1.2
type AccessPolicyGroupList []AccessPolicyGroup
AccessPolicyGroupList - List of AccessPolicy.
type AccessPolicyRule ¶ added in v0.1.2
type AccessPolicyRule struct {
Id KId `json:"id"` // [READ-ONLY] [REQUIRED FOR SET] global identification
GroupId KId `json:"groupId"` // [REQUIRED FOR CREATE] global identification of AccessPolicyGroup
Service ServiceType `json:"service"` // type of service
Rule AccessPolicyConnectionRule `json:"rule"` // rule for connections
}
AccessPolicyRule - Access policy rule details.
type AccessPolicyRuleList ¶ added in v0.1.2
type AccessPolicyRuleList []AccessPolicyRule
AccessPolicyRuleList - List of AccessPolicyRule.
type ActionAfterDays ¶ added in v0.1.0
type ActionAfterDays struct {
IsEnabled bool `json:"isEnabled"` // is action on/off?
Days int `json:"days"` // after how many days is an action performed?
}
Message clean out setting Note: all fields must be assigned if used in set methods
type AddResult ¶ added in v0.1.2
type AddResult struct {
Id KId `json:"id"` // purposely not id - loginName is shown
Success bool `json:"success"` // was operation successful? if yes so id is new id for this item else errorMessage tells why it failed
ErrorMessage LocalizableMessage `json:"errorMessage"` // contains number of recovered user messages or error message
}
AddResult - Result of the add operation
type AddResultList ¶ added in v0.1.2
type AddResultList []AddResult
AddResultList - list of add operation results
type AdditionalInfo ¶ added in v0.1.2
type Administration ¶
type Administration struct {
IsEnabled bool `json:"isEnabled"`
IsLimited bool `json:"isLimited"`
GroupID string `json:"groupId"`
GroupName string `json:"groupName"`
BuiltInAdminEnabled bool `json:"builtInAdminEnabled"`
BuiltInAdminUsername string `json:"builtInAdminUsername"`
BuiltInAdminPassword string `json:"builtInAdminPassword"`
BuiltInAdminPasswordIsEmpty bool `json:"builtInAdminPasswordIsEmpty"`
BuiltInAdminUsernameCollide bool `json:"builtInAdminUsernameCollide"`
}
type AdvancedOptionsSetting ¶ added in v0.1.2
type AdvancedOptionsSetting struct {
Miscellaneous MiscellaneousOptions `json:"miscellaneous"`
StoreDirectory StoreDirectoryOptions `json:"storeDirectory"`
MasterAuthentication MasterAuthenticationOptions `json:"masterAuthentication"`
HttpProxy HttpProxyOptions `json:"httpProxy"`
UpdateChecker UpdateCheckerOptions `json:"updateChecker"`
WebMail WebMailOptions `json:"webMail"`
UserQuota UserQuota `json:"userQuota"`
Fulltext FulltextSetting `json:"fulltext"`
KoffOptions KoffOptions `json:"koffOptions"`
OperatorOptions OperatorOptions `json:"operatorOptions"`
}
type AliasTarget ¶ added in v0.0.3
type AliasTarget struct {
ID string `json:"id"` // unique identifier
Type string `json:"type"` // item type discriminator
Name string `json:"name"` // loginName for the User, name in square brackets for the Group
FullName string `json:"fullName"` // fullname for the User, empty string for the Group
Description string `json:"description"` // description of User/Group
IsEnabled string `json:"isEnabled"` // is the User/Group enabled?
ItemSource string `json:"itemSource"` // is the User/Group stored internally or by LDAP?
EmailAddress string `json:"emailAddress"` // first email address
HomeServer HomeServer `json:"homeServer"` // id of users homeserver if server is in Cluster; groups haven't homeserver
}
type AliasTargetList ¶ added in v0.0.3
type AliasTargetList []AliasTarget
type AntibombingStats ¶ added in v0.1.2
type AntivirusStats ¶ added in v0.1.2
type ApiApplication ¶ added in v0.1.2
type ApiApplication struct {
Name string `json:"name"` // E.g. "Simple server monitor"
Vendor string `json:"vendor"` // E.g. "MyScript Ltd."
Version string `json:"version"` // E.g. "1.0.0 beta 1"
}
ApiApplication - Describes client (third-party) application or script which uses the Administration API.
func NewApplication ¶
func NewApplication(name, vendor, version string) *ApiApplication
NewApplication returns a pointer to structure with application data
type ArchiveOptions ¶ added in v0.1.2
type ArchiveOptions struct {
Paths Directories `json:"paths"` // Paths to store/archive/backup
IsEnabled bool `json:"isEnabled"` // Enable mail archiving
RemoteArchive OptionalString `json:"remoteArchive"` // Archive to remote email address
ArchiveToLocalFolder bool `json:"archiveToLocalFolder"` // Archive to local folder
ArchiveFoldersInterval DayWeekMonthPeriod `json:"archiveFoldersInterval"` // Interval used for creating of new archive folders (in days/weeks/months)
CompressOldArchiveFolders bool `json:"compressOldArchiveFolders"` // Compress old archive folders
CompressionStartTime Time `json:"compressionStartTime"` // Time in the day when an archive compression shall start
ArchiveLocalMessages bool `json:"archiveLocalMessages"` // Local messages (local sender, local recipient)
ArchiveIncomingMessages bool `json:"archiveIncomingMessages"` // Incoming messages (remote sender, local recipient)
ArchiveOutgoingMessages bool `json:"archiveOutgoingMessages"` // Outgoing messages (local sender, remote recipient)
ArchiveRelayedMessages bool `json:"archiveRelayedMessages"` // Relayed messages (remote sender, remote recipient)
ArchiveBeforeFilter bool `json:"archiveBeforeFilter"` // Archive messages before content filter check (viruses and spams will be stored intact in the archive folders)
IsXmppEnabled bool `json:"isXmppEnabled"` // Enable archiving for instant messaging
IsEnabledPerDomain bool `json:"isEnabledPerDomain"` // Enable custom per domain settings
}
type AuthResult ¶ added in v0.1.2
type AuthResult string
AuthResult - Resut of autentication.
const ( AuthOK AuthResult = "AuthOK" // User was autenticated AuthFail AuthResult = "AuthFail" // Wrong login name or password. AuthUserDisabled AuthResult = "AuthUserDisabled" // User cannot to log in, because his account is disabled. AuthLicense AuthResult = "AuthLicense" // User cannot log in, because license limit was reached. AuthDenied AuthResult = "AuthDenied" // User is denied to log in. AuthTryLater AuthResult = "AuthTryLater" // User cannot to log in at this moment, try later. )
type AuthTypeList ¶ added in v0.1.2
type AuthTypeList []UserAuthType
Type for returning authorization type supported by server
type BackupInfo ¶ added in v0.1.2
type BackupInfo struct {
IsCreated bool `json:"isCreated"` // True, if backup was successfully created
// Created UtcDateTime `json:"created"` // Time when backup started (always in GTM) TODO
Size ByteValueWithUnits `json:"size"` // Compressed size of a backup
}
BackupInfo - [READ-ONLY]
type BackupOptions ¶ added in v0.1.2
type BackupOptions struct {
Paths Directories `json:"paths"` // Paths to store/archive/backup, this field is used in both, archive and backup, options
IsEnabled bool `json:"isEnabled"` // Enable message store and configuration recovery backup
Status BackupStatus `json:"status"` // Current backup status
SplitSizeLimit int `json:"splitSizeLimit"` // Split backup files if size reaches 'splitSizeLimit' (MB)
RotationLimit int `json:"rotationLimit"` // Keep at most 'rotationLimit' complete backups
NetworkDiskUserName string `json:"networkDiskUserName"` // If the backup directory is on the network disk, you may need to specify user name
NetworkDiskPassword string `json:"networkDiskPassword"` // ... and password
NotificationEmailAddress string `json:"notificationEmailAddress"` // An email address of person that will be notified when backup is completed or if any problems arise
}
type BackupSchedule ¶ added in v0.1.2
type BackupSchedule struct {
Id KId `json:"id"` // [READ-ONLY]
IsEnabled bool `json:"isEnabled"` // True if backup schedule is enabled
Type BackupType `json:"type"` // Backup type
// Day Day `json:"day"` // Backup schedule day of week TODO
Time TimeHMS `json:"time"` // Backup schedule start time - days are ignored!
Description string `json:"description"` // description of the backup schedule
}
type BackupScheduleList ¶ added in v0.1.2
type BackupScheduleList []BackupSchedule
type BackupStatus ¶ added in v0.1.2
type BackupStatus struct {
BackupInProgress bool `json:"backupInProgress"` // True, if backup is in progress; otherwise, false
Percents int `json:"percents"` // Backup progress in percents (form 0 to 100)
LastBackupStatus LastBackupStatus `json:"lastBackupStatus"` // Status of the last backup run
ElapsedTime Distance `json:"elapsedTime"` // Time from last started backup
RemainingTime Distance `json:"remainingTime"` // Approximated time to end of current backup
LastFull BackupInfo `json:"lastFull"` // Information about last full backup
LastDifferential BackupInfo `json:"lastDifferential"` // Information about last differential backup
LastMirror BackupInfo `json:"lastMirror"` // Information about last mirror backup
}
BackupStatus - [READ-ONLY]
type BackupType ¶ added in v0.1.2
type BackupType string
type ButtonColor ¶ added in v0.1.2
type ByteUnits ¶ added in v0.1.2
type ByteUnits string
ByteUnits - Units used for handling large values of bytes. See also userinfo.idl: enum UserValueUnits.
type ByteValueWithUnits ¶ added in v0.1.2
ByteValueWithUnits - Stores size of very large values of bytes e.g. for user quota Note: all fields must be assigned if used in set methods
type Certificate ¶ added in v0.1.2
type Certificate struct {
Id KId `json:"id"`
Status StoreStatus `json:"status"`
Name string `json:"name"`
Issuer NamedValueList `json:"issuer"`
Subject NamedValueList `json:"subject"`
SubjectAlternativeNameList NamedMultiValueList `json:"subjectAlternativeNameList"`
Fingerprint string `json:"fingerprint"` // 128-bit MD5, i.e. 16 hexa values separated by colons
FingerprintSha1 string `json:"fingerprintSha1"` // 160-bit SHA1, i.e. 20 hexa values separated by colons
FingerprintSha256 string `json:"fingerprintSha256"` // 512-bit SHA256, i.e. 64 hexa values separated by colons
ValidPeriod ValidPeriod `json:"validPeriod"`
Valid bool `json:"valid"` // exists and valid content
Type CertificateType `json:"type"`
IsUntrusted bool `json:"isUntrusted"`
VerificationMessage string `json:"verificationMessage"`
ChainInfo StringList `json:"chainInfo"`
IsSelfSigned bool `json:"isSelfSigned"`
}
Certificate properties issuer & subject valid names:
hostname; // max 127 bytes organizationName; // max 127 bytes organizationalUnitName; // max 127 bytes city; // max 127 bytes state; // max 127 bytes country; // ISO 3166 code
Certificate - emailAddress; // max 255 bytes
type CertificateList ¶ added in v0.1.2
type CertificateList []Certificate
type CertificateType ¶ added in v0.1.2
type CertificateType string
const ( ActiveCertificate CertificateType = "ActiveCertificate" InactiveCertificate CertificateType = "InactiveCertificate" CertificateRequest CertificateType = "CertificateRequest" Authority CertificateType = "Authority" LocalAuthority CertificateType = "LocalAuthority" BuiltInAuthority CertificateType = "BuiltInAuthority" ServerCertificate CertificateType = "ServerCertificate" )
type Chart ¶ added in v0.1.2
type Chart struct {
Classname string `json:"classname"` // A class name of chart
Name string `json:"name"` // A chart name
Xtype string `json:"xtype"` // An x scale type
Ytype string `json:"ytype"` // An y scale type
ScaleCount int `json:"scaleCount"` // A count of scales
Scale ScaleList `json:"scale"` // List of scales
}
Chart - Descriptions of charts graph
type ChartData ¶ added in v0.1.2
type ChartData struct {
XName string `json:"xName"` // Name of X axis
XValues ChartValueList `json:"xValues"` // Values of X axis
CountValues int `json:"countValues"` // A count of values in X axis
CountRows int `json:"countRows"` // A count of rows
RowNames ChartRowNamesList `json:"rowNames"` // Array of names of rows
RowValues ChartRowValuesList `json:"rowValues"` // Array of values of rows
}
ChartData - Values of charts graph
type ChartRowNamesList ¶ added in v0.1.2
type ChartRowNamesList []string
type ChartRowValuesList ¶ added in v0.1.2
type ChartRowValuesList []ChartValueList
type ChartValueList ¶ added in v0.1.2
type ChartValueList []int
type CleanOut ¶ added in v0.1.2
type CleanOut struct {
IsUsedDomain bool `json:"isUsedDomain"` // use domain settings
DeletedItems ActionAfterDays `json:"deletedItems"` // clean Deleted Items folder (maximum: 24855)
JunkEmail ActionAfterDays `json:"junkEmail"` // clean Junk Email folder (maximum: 24855)
SentItems ActionAfterDays `json:"sentItems"` // clean Sent Items folder (maximum: 24855)
AutoDelete ActionAfterDays `json:"autoDelete"` // clean all folders (maximum: 24855)
}
CleanOut - Per-user message retention policy.
type CompareOperator ¶ added in v0.1.0
type CompareOperator string
CompareOperator - Simple Query Operator
const ( Eq CompareOperator = "Eq" // '=' - equal NotEq CompareOperator = "NotEq" // '!=' - not equal LessThan CompareOperator = "LessThan" // '<' - lower that GreaterThan CompareOperator = "GreaterThan" // '>' - greater that LessEq CompareOperator = "LessEq" // '<=' - lower or equal GreaterEq CompareOperator = "GreaterEq" // '>=' - greater or equal Like CompareOperator = "NotEq" // contains substring, % is wild character )
type Config ¶
type Config struct {
// contains filtered or unexported fields
}
func NewConfig ¶
NewConfig returns a pointer to structure with the configuration for connecting to the API server Parameters:
dest - control destination (Admin - for server control, Client - for mail client control) server - address without schema and port
func (*Config) NewConnection ¶
func (c *Config) NewConnection() (*Connection, error)
type Connection ¶
func (*Connection) AccessPolicyCreate ¶ added in v0.1.2
func (c *Connection) AccessPolicyCreate(rules AccessPolicyRuleList) (ErrorList, CreateResultList, error)
AccessPolicyCreate - Add new policies. Parameters
rules - new policies rules
Return
errors - error message list result - list of IDs of created rules
func (*Connection) AccessPolicyCreateGroupList ¶ added in v0.1.2
func (c *Connection) AccessPolicyCreateGroupList(groups AccessPolicyGroupList) (ErrorList, CreateResultList, error)
AccessPolicyCreateGroupList - Create the list of groups. Parameters
groups - list of groups to create
Return
errors - error message list result - list of IDs of created groups
func (*Connection) AccessPolicyGet ¶ added in v0.1.2
func (c *Connection) AccessPolicyGet(query SearchQuery) (AccessPolicyRuleList, error)
AccessPolicyGet - Obtain a list of policies. Parameters
query - query attributes and limits
Return
list - policies
func (*Connection) AccessPolicyGetGroupList ¶ added in v0.1.2
func (c *Connection) AccessPolicyGetGroupList() (AccessPolicyGroupList, error)
AccessPolicyGetGroupList - Get the list of groups, sorted in ascending order. Return
groups - list of Access policy groups
func (*Connection) AccessPolicyGetServiceList ¶ added in v0.1.2
func (c *Connection) AccessPolicyGetServiceList() (ServiceTypeInfoList, error)
AccessPolicyGetServiceList - Get the list of services. Return
services - list of service info
func (*Connection) AccessPolicyRemove ¶ added in v0.1.2
func (c *Connection) AccessPolicyRemove(ruleIds KIdList) (ErrorList, error)
AccessPolicyRemove - Remove policies. Parameters
ruleIds - list of IDs of policy to be removed
Return
errors - error message list
func (*Connection) AccessPolicyRemoveGroupList ¶ added in v0.1.2
func (c *Connection) AccessPolicyRemoveGroupList(groupIds KIdList) (ErrorList, error)
AccessPolicyRemoveGroupList - Remove the list of groups. Parameters
groupIds - list of IDs of group policy to be removed
Return
errors - error message list
func (*Connection) AccessPolicySet ¶ added in v0.1.2
func (c *Connection) AccessPolicySet(rules AccessPolicyRuleList) (ErrorList, error)
AccessPolicySet - Set policy details. Parameters
rules - rules to save
Return
errors - error message list
func (*Connection) AccessPolicySetGroupList ¶ added in v0.1.2
func (c *Connection) AccessPolicySetGroupList(groups AccessPolicyGroupList) (ErrorList, error)
AccessPolicySetGroupList - Set the list of groups. Parameters
groups - list of group to set
Return
errors - error message list
func (*Connection) AliasesCheck ¶ added in v0.0.3
func (c *Connection) AliasesCheck(checkString string) ([]string, error)
AliasesCheck obtains a list of mail addresses and/or public folders on which given string will be expanded. Parameters
checkString - string to be checked
Return
list of expansions
func (*Connection) AliasesCreate ¶ added in v0.0.3
func (c *Connection) AliasesCreate(aliases AliasList) (CreateResultList, ErrorList, error)
AliasesCreate - create new aliases. Parameters
aliases - new alias entities
Return
list of IDs of created aliases list of error messages for appropriate new aliases
func (*Connection) AliasesGet ¶ added in v0.0.3
func (c *Connection) AliasesGet(domainID string, query SearchQuery) (AliasList, error)
AliasesGet obtains a list of aliases. Parameters
query - query conditions and limits domainKId - domain identification
Return
aliases
func (*Connection) AliasesGetMailPublicFolderList ¶ added in v0.0.3
func (c *Connection) AliasesGetMailPublicFolderList(domainID string) (PublicFolderList, error)
AliasesGetMailPublicFolderList obtains a list of mail public folders in the given domain. Parameters
domainId - global identification of the domain
Return
list of public folders
func (*Connection) AliasesGetTargetList ¶ added in v0.0.3
func (c *Connection) AliasesGetTargetList(domainID string, query SearchQuery) (AliasTargetList, error)
AliasesGetTargetList obtains a list of alias targets. Parameters
query - query conditions and limits domainId - global identification of the domain
Return
alias targets
func (*Connection) AliasesRemove ¶ added in v0.0.3
func (c *Connection) AliasesRemove(aliasIDs []string) (ErrorList, error)
AliasesRemove - Delete aliases. Parameters
aliasList - list of global identifiers of aliases to be deleted
Return
error message list
func (*Connection) AliasesSet ¶ added in v0.0.3
func (c *Connection) AliasesSet(aliasIDs []string, pattern Alias) (ErrorList, error)
AliasesSet - Set an existing alias. Parameters
aliasList - list of alias global identifier(s) pattern - pattern to use for new values
Return
error message list
func (*Connection) ArchiveGet ¶ added in v0.1.2
func (c *Connection) ArchiveGet() (*ArchiveOptions, error)
ArchiveGet - Obtain archive options. Return
options - current archive options
func (*Connection) ArchiveGetImArchiveFile ¶ added in v0.1.2
func (c *Connection) ArchiveGetImArchiveFile(fromDate Date, toDate Date) (*Download, error)
ArchiveGetImArchiveFile - Returns link to IM archive file in given period
func (*Connection) ArchiveGetXmppArchiveFiles ¶ added in v0.1.2
func (c *Connection) ArchiveGetXmppArchiveFiles() (DownloadList, error)
ArchiveGetXmppArchiveFiles - Returns links to available Instant Messaging archive files
func (*Connection) ArchiveSet ¶ added in v0.1.2
func (c *Connection) ArchiveSet(options ArchiveOptions) error
ArchiveSet - Set archive options. Parameters
options - archive options
func (*Connection) CallRaw ¶
func (c *Connection) CallRaw(method string, params interface{}) ([]byte, error)
func (*Connection) CancelSearch ¶ added in v0.1.2
func (c *Connection) CancelSearch(searchId string) error
CancelSearch - Cancel search on server (useful for large logs). Parameters
searchId - identifier from search()
func (*Connection) Clear ¶ added in v0.1.2
func (c *Connection) Clear(logName LogType) error
Clear - Delete all log lines. Parameters
logName - unique name of the log
func (*Connection) DomainsCheckPublicFoldersIntegrity ¶
func (c *Connection) DomainsCheckPublicFoldersIntegrity() error
DomainsCheckPublicFoldersIntegrity checks integrity of all public folders. If corrupted folder is found, try to fix it.
func (*Connection) DomainsGet ¶
func (c *Connection) DomainsGet(query SearchQuery) (DomainList, error)
DomainsGet obtains a list of domains.
func (*Connection) DomainsGetDomainFooterPlaceholders ¶
func (c *Connection) DomainsGetDomainFooterPlaceholders() (PlaceHolderList, error)
DomainsGetDomainFooterPlaceholders returns all supported placeholders for domain footer.
func (*Connection) DomainsGetSettings ¶
func (c *Connection) DomainsGetSettings() (*DomainSetting, error)
DomainsGetSettings obtains settings common in all domains.
func (*Connection) DomainsSaveFooterImage ¶
func (c *Connection) DomainsSaveFooterImage(fileID string) (string, error)
DomainsSaveFooterImage - save a new footer's image.
func (*Connection) DownloadsRemove ¶ added in v0.1.2
func (c *Connection) DownloadsRemove(url string) error
DownloadsRemove - Remove file prepared to download. Parameters
url - url of file prepared to download
func (*Connection) ExportLog ¶ added in v0.1.2
func (c *Connection) ExportLog(logName LogType, fromLine int, countLines int, format ExportFormat) (*Download, error)
ExportLog - Exporting a given log. Parameters
logName - unique name of the log fromLine - number of the line to start the search from; countLines - number of lines to transfer; Unlimited - symbolic name for end of log type - export file type
Return
fileDownload - file download structure
func (*Connection) ExportLogRelative ¶ added in v0.1.2
func (c *Connection) ExportLogRelative(logName LogType, fromLine int, countLines int, format ExportFormat) (*Download, error)
ExportLogRelative - Exporting a given log with relative download path. Parameters
logName - unique name of the log fromLine - number of the line to start the search from; countLines - number of lines to transfer; Unlimited - symbolic name for end of log type - export file type
Return
fileDownload - file download structure
func (*Connection) Get ¶ added in v0.1.2
func (c *Connection) Get(logName LogType, fromLine int, countLines int) (LogRowList, error)
Get - Obtain log data without linebreaks. Parameters
logName - unique name of the log fromLine - number of the line to start from; if (fromLine == Unlimited) then fromline is end of log minus countLines countLines - number of lines to transfer
Return
viewport - list of log lines; count of lines = min(count, NUMBER_OF_CURRENT LINES - from)
func (*Connection) GetHighlightRules ¶ added in v0.1.2
func (c *Connection) GetHighlightRules() (*HighlightRules, error)
GetHighlightRules - Obtain a list of sorted highlighting rules. Return
rules - highlight rules
func (*Connection) GetLogSet ¶ added in v0.1.2
func (c *Connection) GetLogSet() (*LogSet, error)
GetLogSet - Retrieve set of valid logs. Return
logSet - list of valid logs
func (*Connection) GetMessages ¶ added in v0.1.2
func (c *Connection) GetMessages() (TreeLeafList, error)
GetMessages - Obtain log message settings; make sense only if LogItem.hasMessages == true. Return
messages - tree of log messages
func (*Connection) GetSearchProgress ¶ added in v0.1.2
func (c *Connection) GetSearchProgress(countLines int, searchId string) (LogRowList, int, *SearchStatus, int, error)
GetSearchProgress - Clears timeout for search() and obtains status of the search. Parameters
countLines - number of lines to transfer searchId - identifier from search()
Return
viewport - list of log lines firstLine - first matching line status - current status of the search percentage - already finished search <0;100>
func (*Connection) GetSettings ¶ added in v0.1.2
func (c *Connection) GetSettings(logName LogType) (*LogSettings, error)
GetSettings - Obtain log settings. Parameters
logName - unique name of the log
Return
currentSettings - current valid settings (or undefined data on failure)
func (*Connection) Login ¶
func (c *Connection) Login(user, password string, app *ApiApplication) error
Login - log in a given user. Please note that with a session to one module you cannot use another one (eg. with admin session you cannot use webmail). Parameters:
user - login name + domain name (can be omitted if primary) of the user to be logged in,
e.g. "jdoe" or "jdoe@company.com"
password - password of the user to be logged in
app - client application description
func (*Connection) QueueGet ¶ added in v0.0.3
func (c *Connection) QueueGet(query SearchQuery)
TODO QueueGet QueueGet obtains a list of queued messages. Parameters
list - awaiting messages totalItems - number of listed messages volume - space occupied by messages in the queue query - search conditions
func (*Connection) QueueGetProcessed ¶ added in v0.0.3
func (c *Connection) QueueGetProcessed(query SearchQuery) ([]string, error)
QueueGetProcessed - list messages that are being processed by the server.
Parameters
query - search conditions
func (*Connection) QueueRemove ¶ added in v0.0.3
func (c *Connection) QueueRemove(messageIDs []string) (int, error)
QueueRemove - remove selected messages from the message queue.
Parameters
messageIDs - identifiers of messages to be deleted
Return number of items deleted from the message queue
func (*Connection) QueueRemoveAll ¶ added in v0.0.3
func (c *Connection) QueueRemoveAll() (int, error)
QueueRemoveAll - remove all message from the queue. Return number of items deleted from the message queue
func (*Connection) QueueRemoveMatching ¶ added in v0.0.3
func (c *Connection) QueueRemoveMatching(senderPattern, recipientPattern string) (int, error)
QueueRemoveMatching - remove all messages matching a pattern from the message queue.
Parameters
senderPattern - sender pattern with wildcards
recipientPattern - recipient pattern with wildcards
Return number of items deleted from the message queue
func (*Connection) QueueRun ¶ added in v0.0.3
func (c *Connection) QueueRun() error
QueueRun - try to process message queue immediately.
func (*Connection) QueueTryToSend ¶ added in v0.0.3
func (c *Connection) QueueTryToSend(messageIDs []string) error
QueueTryToSend - try to send selected messages.
Parameters
messageIDs - identifiers of messages to be sent immediately.
func (*Connection) Search ¶ added in v0.1.2
func (c *Connection) Search(logName LogType, what string, fromLine int, toLine int, forward bool) (*string, error)
Search - Start searching for a string in a given log; The search exists 1 minute unless prolonged by getSearchProgress. Parameters
logName - unique name of the log what - searched string fromLine - line to start searching from; fromLine>toLine means search up; Unlimited - symbolic name for end of log toLine - line to start searching from; fromLine<toLine means search down forward - direction of the search; true = forward, false = backward
Return
searchId - identifier that can be used for cancelSearch and getSearchProgress
func (*Connection) ServerGetBrowserLanguages ¶
func (c *Connection) ServerGetBrowserLanguages() ([]string, error)
ServerGetBrowserLanguages returns a list of user-preferred languages set in browser.
func (*Connection) ServerGetClientStatistics ¶
func (c *Connection) ServerGetClientStatistics() (bool, error)
ServerGetClientStatistics obtains client statistics settings.
func (*Connection) ServerGetColumnList ¶
func (c *Connection) ServerGetColumnList(objectName, methodName string) ([]string, error)
ServerGetColumnList obtains a list of columns dependent on callee role.
func (*Connection) ServerGetConnections ¶
func (c *Connection) ServerGetConnections(query SearchQuery) (ConnectionList, error)
ServerGetConnections obtains a information about active connections.
func (*Connection) ServerGetDirs ¶
func (c *Connection) ServerGetDirs(path string) ([]DirList, error)
ServerGetDirs obtains a list of directories in a particular path.
func (*Connection) ServerGetDownloadProgress ¶
func (c *Connection) ServerGetDownloadProgress() (int, error)
ServerGetDownloadProgress obtains a progress of installation package downloading.
func (*Connection) ServerGetLicenseExtensionsList ¶
func (c *Connection) ServerGetLicenseExtensionsList() (ExtensionsList, error)
ServerGetLicenseExtensionsList obtains a list of license extensionsList, caller must be authenticated.
func (*Connection) ServerGetNamedConstantList ¶
func (c *Connection) ServerGetNamedConstantList() (NamedConstantList, error)
ServerGetNamedConstantList obtains server side list of constants.
func (*Connection) ServerGetOpenedFoldersInfo ¶
func (c *Connection) ServerGetOpenedFoldersInfo(query SearchQuery) (FolderInfoList, error)
ServerGetOpenedFoldersInfo obtains a information about folders opened on server.
func (*Connection) ServerGetProductInfo ¶
func (c *Connection) ServerGetProductInfo() (*ProductInfo, error)
ServerGetProductInfo gets basic information about product and its version.
func (*Connection) ServerGetRemoteAdministration ¶
func (c *Connection) ServerGetRemoteAdministration() (*Administration, error)
ServerGetRemoteAdministration obtains a information about remote administration settings.
func (*Connection) ServerGetServerHash ¶
func (c *Connection) ServerGetServerHash() (string, error)
ServerGetServerHash obtains a hash string created from product name, version, and installation time.
func (*Connection) ServerGetServerIpAddresses ¶
func (c *Connection) ServerGetServerIpAddresses() ([]string, error)
ServerGetServerIpAddresses obtains a list all server IP addresses.
func (*Connection) ServerGetServerTime ¶
func (c *Connection) ServerGetServerTime() (*ServerTimeInfo, error)
ServerGetServerTime obtains server time information.
func (*Connection) ServerGetVersion ¶
func (c *Connection) ServerGetVersion() (*ServerVersion, error)
ServerGetVersion obtains a information about server version.
func (*Connection) ServerGetWebSessions ¶
func (c *Connection) ServerGetWebSessions(query SearchQuery) ([]WebSessionList, error)
ServerGetWebSessions obtains a information about web component sessions.
func (*Connection) ServerKillWebSessions ¶ added in v0.0.2
func (c *Connection) ServerKillWebSessions(ids []string) error
ServerKillWebSessions Terminate actual web sessions.
func (*Connection) ServerPathExists ¶
func (c *Connection) ServerPathExists(username, password, path string) (string, error)
ServerPathExists checks if the selected path exists and is accessible from the server. Parameters:
path - directory name credentials - (optional) user name and password required to access network disk result - result of check
func (*Connection) ServerReboot ¶
func (c *Connection) ServerReboot() error
ServerReboot - reboot the host system
func (*Connection) ServerRestart ¶
func (c *Connection) ServerRestart() error
ServerRestart - restart server. The server must run as service.
func (*Connection) ServerSendBugReport ¶ added in v0.0.2
func (c *Connection) ServerSendBugReport(name, email, language, subject, description string) error
ServerSendBugReport send a bug report to Kerio. Parameters:
name - name of sender email - email of sender language - language of report subject - summary of report description - description of problem
func (*Connection) ServerSetClientStatistics ¶ added in v0.0.2
func (c *Connection) ServerSetClientStatistics(isEnabled bool) error
ServerSetClientStatistics set client statistics settings.
func (*Connection) ServerSetRemoteAdministration ¶ added in v0.0.2
func (c *Connection) ServerSetRemoteAdministration(setting *Administration) error
ServerSetRemoteAdministration obtains a information about remote administration settings.
func (*Connection) ServerUpgrade ¶
func (c *Connection) ServerUpgrade() error
ServerUpgrade - upgrade server to the latest version. The server must run as service.
func (*Connection) ServerValidateRemoteAdministration ¶ added in v0.0.2
func (c *Connection) ServerValidateRemoteAdministration(setting *Administration) error
ServerValidateRemoteAdministration obtains a information about remote administration settings.
func (*Connection) SessionGetDomain ¶
func (c *Connection) SessionGetDomain() (*Domain, error)
SessionGetDomain gets domain information of the currently logged user. Only name, displayName, ID, description and password policy related fields are filled.
func (*Connection) SessionWhoAmI ¶
func (c *Connection) SessionWhoAmI() (*UserDetails, error)
SessionWhoAmI determines the currently logged user (caller, e.g. administrator). Fields id and domainId can be empty if built-in administrator is logged-in.
func (*Connection) SetHighlightRules ¶ added in v0.1.2
func (c *Connection) SetHighlightRules(rules HighlightRules) error
SetHighlightRules - Set highlighting rules, rules have to be sorted purposely, the only way to change a rule is to change the whole ruleset. Parameters
rules - highlight rules (ordered by priority)
func (*Connection) SetMessages ¶ added in v0.1.2
func (c *Connection) SetMessages(messages TreeLeafList) error
SetMessages - Change log message settings; makes sense only if LogItem.hasMessages == true. Parameters
messages - tree of log messages
func (*Connection) SetSettings ¶ added in v0.1.2
func (c *Connection) SetSettings(logName LogType, newSettings LogSettings) error
SetSettings - Change log settings. Parameters
logName - unique name of the log newSettings
type ConnectionList ¶
type ConnectionList []Connections
type Connections ¶
type CreateResult ¶ added in v0.0.3
type CreateResult struct {
InputIndex int `json:"inputIndex"` // 0-based index to input array, e.g. 3 means that the relates to the 4th element of the input parameter array
Id KId `json:"id"` // ID of created item.
}
CreateResult - Details about a particular item created.
type CreateResultList ¶ added in v0.0.3
type CreateResultList []CreateResult
type Credentials ¶
type Credentials struct {
UserName string `json:"userName"` // UserName
Password string `json:"password"` // Password
}
Credentials - Credentials contains userName and password
type CustomImage ¶ added in v0.1.2
type DataSource ¶ added in v0.1.2
type DataSource string
source of user data
const ( DSInternalSource DataSource = "DSInternalSource" // internal source of user data DSLDAPSource DataSource = "DSLDAPSource" // LDAP source of user data )
type Date ¶ added in v0.1.2
type Date struct {
Year int `json:"year"`
Month int `json:"month"` // 0-11
Day int `json:"day"` // 1-31 max day is limited by month
}
Date - Note: all fields must be assigned if used in set methods
type DateTimeStamp ¶ added in v0.1.2
type DateTimeStamp int
DateTimeStamp - Type for date/time representation
type DateTimeStampList ¶ added in v0.1.2
type DateTimeStampList []DateTimeStamp
DateTimeStampList - Type for lists of date/times
type DayWeekMonthPeriod ¶ added in v0.1.2
type DayWeekMonthPeriod string
type DeployedType ¶ added in v0.1.2
type DeployedType string
const ( DeployedStandalone DeployedType = "DeployedStandalone" // Normal instalation DeployedCloud DeployedType = "DeployedCloud" // Kerio Connect is running in a cloud DeployedKerioVA DeployedType = "DeployedKerioVA" // Kerio Connect VMWare Virtual Appliance )
type Directories ¶ added in v0.1.0
type DirectoryAccessResult ¶ added in v0.1.2
type DirectoryAccessResult string
Except getAboutInfo() all methods are available for non-authenticated users
type DirectoryServiceDeleteMode ¶ added in v0.1.2
type DirectoryServiceDeleteMode string
Type of deleting a user
const ( DSModeDeactivate DirectoryServiceDeleteMode = "DSModeDeactivate" // User is deactivated but not deleted DSModeDelete DirectoryServiceDeleteMode = "DSModeDelete" // User is deleted )
type Distance ¶ added in v0.1.0
type Distance struct {
Days int `json:"days"`
Hours int `json:"hours"`
Minutes int `json:"minutes"`
}
Note: all fields must be assigned if used in set methods
type DistanceOrNull ¶ added in v0.1.0
type DistanceOrNull struct {
Type DistanceType `json:"type"`
TimeSpan Distance `json:"timeSpan"`
}
type DistanceType ¶ added in v0.1.2
type DistanceType string
type DnsResolverStats ¶ added in v0.1.2
type Domain ¶
type Domain struct {
ID string `json:"id"`
Name string `json:"name"`
Description string `json:"description"`
IsPrimary bool `json:"isPrimary"`
UserMaxCount int `json:"userMaxCount"`
PasswordExpirationEnabled bool `json:"passwordExpirationEnabled"`
PasswordExpirationDays int `json:"passwordExpirationDays"`
PasswordHistoryCount int `json:"passwordHistoryCount"`
PasswordComplexityEnabled bool `json:"passwordComplexityEnabled"`
PasswordMinimumLength int `json:"passwordMinimumLength"`
OutgoingMessageLimit `json:"outgoingMessageLimit"`
DeletedItems ActionAfterDays `json:"deletedItems"`
JunkEmail ActionAfterDays `json:"junkEmail"`
SentItems ActionAfterDays `json:"sentItems"`
AutoDelete ActionAfterDays `json:"autoDelete"`
KeepForRecovery `json:"keepForRecovery"`
AliasList []interface{} `json:"aliasList"`
ForwardingOptions `json:"forwardingOptions"`
Service struct {
IsEnabled bool `json:"isEnabled"`
ServiceType string `json:"serviceType"`
CustomMapFile string `json:"customMapFile"`
Authentication struct {
Username string `json:"username"`
Password string `json:"password"`
IsSecure bool `json:"isSecure"`
} `json:"authentication"`
Hostname string `json:"hostname"`
BackupHostname string `json:"backupHostname"`
DirectoryName string `json:"directoryName"`
LdapSuffix string `json:"ldapSuffix"`
} `json:"service"`
IsUsed bool `json:"isUsed"`
Text string `json:"text"`
IsHTML bool `json:"isHtml"`
IsUsedInDomain bool `json:"isUsedInDomain"`
} `json:"domainFooter"`
KerberosRealm string `json:"kerberosRealm"`
WinNtName string `json:"winNtName"`
PamRealm string `json:"pamRealm"`
IPAddressBind struct {
Enabled bool `json:"enabled"`
Value string `json:"value"`
} `json:"ipAddressBind"`
Logo struct {
IsUsed bool `json:"isUsed"`
URL string `json:"url"`
} `json:"logo"`
CustomClientLogo struct {
IsEnabled bool `json:"isEnabled"`
URL string `json:"url"`
ID string `json:"id"`
} `json:"customClientLogo"`
CheckSpoofedSender bool `json:"checkSpoofedSender"`
RenameInfo `json:"renameInfo"`
DomainQuota struct {
DiskSizeLimit struct {
IsActive bool `json:"isActive"`
Limit struct {
Value int `json:"value"`
Units string `json:"units"`
} `json:"limit"`
} `json:"diskSizeLimit"`
ConsumedSize struct {
Value int `json:"value"`
Units string `json:"units"`
} `json:"consumedSize"`
Notification struct {
Type string `json:"type"`
Period struct {
Value int `json:"value"`
Units string `json:"units"`
} `json:"period"`
} `json:"notification"`
WarningLimit int `json:"warningLimit"`
Email string `json:"email"`
Blocks bool `json:"blocks"`
} `json:"domainQuota"`
IsDistributed bool `json:"isDistributed"`
IsDkimEnabled bool `json:"isDkimEnabled"`
IsLdapManagementAllowed bool `json:"isLdapManagementAllowed"`
IsInstantMessagingEnabled bool `json:"isInstantMessagingEnabled"`
UseRemoteArchiveAddress bool `json:"useRemoteArchiveAddress"`
RemoteArchiveAddress string `json:"remoteArchiveAddress"`
ArchiveLocalMessages bool `json:"archiveLocalMessages"`
ArchiveIncomingMessages bool `json:"archiveIncomingMessages"`
ArchiveOutgoingMessages bool `json:"archiveOutgoingMessages"`
ArchiveBeforeFilter bool `json:"archiveBeforeFilter"`
}
type DomainInfo ¶
type DomainInfo struct {
ID string `json:"id"`
Name string `json:"name"`
Description string `json:"description"`
IsPrimary bool `json:"isPrimary"`
UserMaxCount int `json:"userMaxCount"`
OutgoingMessageLimit `json:"outgoingMessageLimit"`
KeepForRecovery `json:"keepForRecovery"`
AliasList []interface{} `json:"aliasList"`
ForwardingOptions `json:"forwardingOptions"`
KerberosRealm string `json:"kerberosRealm"`
WinNtName string `json:"winNtName"`
PamRealm string `json:"pamRealm"`
IPAddressBind struct {
Enabled bool `json:"enabled"`
Value string `json:"value"`
} `json:"ipAddressBind"`
RenameInfo `json:"renameInfo"`
IsDistributed bool `json:"isDistributed"`
}
type DomainList ¶
type DomainList []DomainInfo
type DomainSetting ¶
type Download ¶ added in v0.1.2
type Download struct {
Url string `json:"url"` // download url
Name string `json:"name"` // filename
Length int `json:"length"` // file size in bytes
}
Download - important information about download
type DownloadList ¶ added in v0.1.2
type DownloadList []Download
type EffectiveUserRights ¶ added in v0.1.2
type EffectiveUserRights struct {
UserId KId `json:"userId"` // [READ-ONLY] global identification
HasDomainRestriction bool `json:"hasDomainRestriction"` // user can send/receive from/to his/her domain only
}
EffectiveUserRights - User effective rights (inherited from groups)
type EffectiveUserRightsList ¶ added in v0.1.2
type EffectiveUserRightsList []EffectiveUserRights
EffectiveUserRightsList - List of users effective rights
type EmailAddress ¶ added in v0.1.2
type EmailAddress struct {
Address string `json:"address"`
Name string `json:"name"`
Preferred bool `json:"preferred"`
IsValidCertificate bool `json:"isValidCertificate"`
Type EmailAddressType `json:"type"`
RefId KId `json:"refId"` // Global identification of reference. Valid for types 'RefContact' and 'RefDistributionList'.
Extension ABExtension `json:"extension"`
}
EmailAddress - Structure describing an email address in contact.
type EmailAddressList ¶ added in v0.1.2
type EmailAddressList []EmailAddress
EmailAddressList - Sequence of email addresses.
type EmailAddressType ¶ added in v0.1.2
type EmailAddressType string
EmailAddressType - Email address type.
const ( EmailWork EmailAddressType = "EmailWork" EmailHome EmailAddressType = "EmailHome" EmailOther EmailAddressType = "EmailOther" EmailCustom EmailAddressType = "EmailCustom" // no type defined // valid for distribution lists only RefContact EmailAddressType = "RefContact" // Reference to existing conatact RefDistributionList EmailAddressType = "RefDistributionList" // Reference to existing distribution list )
type EmailForwarding ¶ added in v0.1.2
type EmailForwarding struct {
Mode UserForwardMode `json:"mode"`
EmailAddresses UserEmailAddressList `json:"emailAddresses"` // list of email addresses, make sense only for UForwardDeliver
}
EmailForwarding - Settings of email forwarding. Note: all fields must be assigned if used in set methods.
type Error ¶ added in v0.0.3
type Error struct {
InputIndex int `json:"inputIndex"` // 0-based index to input array, e.g. 3 means that the relates to the 4th element of the input parameter array
Code int `json:"code"` // -32767..-1 (JSON-RPC) or 1..32767 (application)
Message string `json:"message"` // text with placeholders %1, %2, etc., e.g. "User %1 cannot be deleted."
MessageParameters LocalizableMessageParameters `json:"messageParameters"` // strings to replace placeholders in message, and message plurality.
}
Error - Error details regarding a particular item, e.g. one of users that could not be updated or removed.
type ErrorReport ¶
type ExportFormat ¶ added in v0.1.2
type ExportFormat string
ExportFormat - File type for log export
const ( PlainText ExportFormat = "PlainText" // export in plain text Html ExportFormat = "Html" // export in html )
type ExtensionsList ¶
type ExtensionsList []string
type FacilityUnit ¶ added in v0.1.2
type FacilityUnit string
FacilityUnit - Available types of syslog facility according RFC 3164
const ( FacilityKernel FacilityUnit = "FacilityKernel" // 0 = kernel messages FacilityUserLevel FacilityUnit = "FacilityUserLevel" // 1 = user-level messages FacilityMailSystem FacilityUnit = "FacilityMailSystem" // 2 = mail system FacilitySystemDaemons FacilityUnit = "FacilitySystemDaemons" // 3 = system daemons FacilitySecurity1 FacilityUnit = "FacilitySecurity1" // 4 = security/authorization messages FacilityInternal FacilityUnit = "FacilityInternal" // 5 = messages generated internally by syslogd FacilityLinePrinter FacilityUnit = "FacilityLinePrinter" // 6 = line printer subsystem FacilityNetworkNews FacilityUnit = "FacilityNetworkNews" // 7 = network news subsystem FacilityUucpSubsystem FacilityUnit = "FacilityUucpSubsystem" // 8 = UUCP subsystem FacilityClockDaemon1 FacilityUnit = "FacilityClockDaemon1" // 9 = clock daemon FacilitySecurity2 FacilityUnit = "FacilitySecurity2" // 10 = security/authorization messages FacilityFtpDaemon FacilityUnit = "FacilityFtpDaemon" // 11 = FTP daemon FacilityNtpSubsystem FacilityUnit = "FacilityNtpSubsystem" // 12 = NTP subsystem FacilityLogAudit FacilityUnit = "FacilityLogAudit" // 13 = log audit FacilityLogAlert FacilityUnit = "FacilityLogAlert" // 14 = log alert FacilityClockDaemon2 FacilityUnit = "FacilityClockDaemon2" // 15 = clock daemon FacilityLocal0 FacilityUnit = "FacilityLocal0" // 16 = local use 0 FacilityLocal1 FacilityUnit = "FacilityLocal1" // 17 = local use 1 FacilityLocal2 FacilityUnit = "FacilityLocal2" // 18 = local use 2 FacilityLocal3 FacilityUnit = "FacilityLocal3" // 19 = local use 3 FacilityLocal4 FacilityUnit = "FacilityLocal4" // 20 = local use 4 FacilityLocal5 FacilityUnit = "FacilityLocal5" // 21 = local use 5 FacilityLocal6 FacilityUnit = "FacilityLocal6" // 22 = local use 6 FacilityLocal7 FacilityUnit = "FacilityLocal7" // 23 = local use 7 )
type FailureAndBounce ¶ added in v0.1.2
type FileFormatType ¶ added in v0.1.2
type FileFormatType string
FileFormatType - Export format type.
const ( TypeXml FileFormatType = "TypeXml" // Extensible Markup Language TypeCsv FileFormatType = "TypeCsv" // Comma Separated Values )
type FolderInfo ¶
type FolderInfoList ¶
type FolderInfoList []FolderInfo
type ForwardingOptions ¶
type FulltextRebuildStatus ¶ added in v0.1.2
type FulltextRebuildStatus struct {
Status FulltextStatus `json:"status"` // [READ ONLY] state of rebuild process
UsersLeft int `json:"usersLeft"` // [status IndexRebuilding] - the current number of user re-indexed mailboxes
MessagesLeft int `json:"messagesLeft"` // [status IndexMessages] - number of new delivered messages to index
Size int `json:"size"` // index size or estimate size in status IndexMessages or IndexRebuilding
FreeSpace int `json:"freeSpace"` // free space in path for index files
}
FulltextRebuildStatus - [READ ONLY] progres of index
type FulltextRebuildingCommand ¶ added in v0.1.2
type FulltextRebuildingCommand struct {
Scope FulltextScope `json:"scope"`
Id KId `json:"id"` // domain id for scope 'IndexDomain' or user id for scope 'IndexUser'
}
type FulltextScope ¶ added in v0.1.2
type FulltextScope string
FulltextScope - Scope of reindex
const ( IndexAll FulltextScope = "IndexAll" // all users to reindex IndexDomain FulltextScope = "IndexDomain" // only users from domain to reindex IndexUser FulltextScope = "IndexUser" // only user to reindex )
type FulltextSetting ¶ added in v0.1.2
type FulltextStatus ¶ added in v0.1.2
type FulltextStatus string
FulltextStatus - State of index
const ( IndexRebuilding FulltextStatus = "IndexRebuilding" // reindexing is in progress IndexMessages FulltextStatus = "IndexMessages" // indexing new delivered messages IndexFinished FulltextStatus = "IndexFinished" // reindexing is finnished, it also mean "Up To Date" IndexDisabled FulltextStatus = "IndexDisabled" // indexing is disabled IndexError FulltextStatus = "IndexError" // some error occured IndexErrorLowSpace FulltextStatus = "IndexErrorLowSpace" // available disk space is below Soft Limit )
type GreylistingStats ¶ added in v0.1.2
type HighlightColor ¶ added in v0.1.2
type HighlightColor string
HighlightColor - Highlight color definition in format RRGGBB
type HighlightItem ¶ added in v0.1.2
type HighlightItem struct {
Id KId `json:"id"` // global identification
Enabled bool `json:"enabled"` // Rule is [dis|en]abled
Description string `json:"description"` // Text description
Condition string `json:"condition"` // Match condition
IsRegex bool `json:"isRegex"` // Is condition held as regular expression? (server does NOT check if regex is valid)
Color HighlightColor `json:"color"` // Highlight matching log lines by this color
IsOrderChanged bool `json:"isOrderChanged"` // True if item order was changed by user
}
HighlightItem - Log highlighting item
type HighlightRules ¶ added in v0.1.2
type HighlightRules []HighlightItem
HighlightRules - List of highlight items to be applied on all logs (global settings)
type HomeServer ¶ added in v0.0.3
type HomeServer struct {
ID KId `json:"id"` // server's id
Name string `json:"name"` // server's Internet hostname
}
HomeServer User's home server in a distributed domain.
type HttpProxyOptions ¶ added in v0.1.2
type HttpProxyOptions struct {
IsEnabled bool `json:"isEnabled"` // Use HTTP proxy for antivirus updates, Kerio update checker and other web services
Address string `json:"address"`
Port int `json:"port"`
RequiresAuthentication bool `json:"requiresAuthentication"` // Proxy requires authentication
UserName string `json:"userName"`
Password string `json:"password"`
}
type ImapServerStats ¶ added in v0.1.2
type ImportServer ¶ added in v0.1.2
type ImportServer struct {
DirectoryType ServerDirectoryType `json:"directoryType"`
RemoteDomainName string `json:"remoteDomainName"`
Address string `json:"address"` // server IP or FQDN
LoginName string `json:"loginName"`
Password string `json:"password"`
LdapFilter string `json:"ldapFilter"`
IsSecureConnection bool `json:"isSecureConnection"`
}
ImportServer - Properties of the server from which users are imported.
type Importee ¶ added in v0.1.2
type Importee struct {
UserItem User `json:"userItem"` // user data
IsImportable bool `json:"isImportable"` // [READ-ONLY] user can be imported
Message string `json:"message"` // [READ-ONLY] error message if user is not importable
}
Importee - A user being imported from directory server.
type ImporteeList ¶ added in v0.1.2
type ImporteeList []Importee
type IpAddressList ¶ added in v0.1.2
type IpAddressList []IpAddress
type ItemCountLimit ¶ added in v0.1.2
ItemCountLimit - Settings of items limit. Note: all fields must be assigned if used in set methods.
type ItemName ¶ added in v0.1.2
type ItemName string
ItemName - Item of the Entity; used in restrictions
const ( Name ItemName = "Name" // Entity Name Description ItemName = "Description" // Entity Description Email ItemName = "Email" // Entity Email Address FullName ItemName = "FullName" // Entity Full Name TimeItem ItemName = "TimeItem" // Entity Time - it cannot be simply Time because of C++ conflict - see bug 34684 comment #3 DateItem ItemName = "DateItem" // Entity Date - I expect same problem with Date as with Time DomainName ItemName = "DomainName" // differs from name (eg. cannot contains underscore) )
type KeepForRecovery ¶
type KoffOptions ¶ added in v0.1.2
type KoffOptions struct {
UpgradePolicy KoffUpgradePolicy `json:"upgradePolicy"`
}
type KoffUpgradePolicy ¶ added in v0.1.2
type KoffUpgradePolicy string
const ( KoffUPolicyAskVoluntary KoffUpgradePolicy = "KoffUPolicyAskVoluntary" // Ask user for each version change and do not allow the update. KoffUPolicyAskRequired KoffUpgradePolicy = "KoffUPolicyAskRequired" // Ask user for each version change and require the update. KoffUPolicyAlwaysSilent KoffUpgradePolicy = "KoffUPolicyAlwaysSilent" // Do update for each version change. Update silently when Outlook starts. Ask users when Outlook is running and require update. KoffUPolicyOnStartSilent KoffUpgradePolicy = "KoffUPolicyOnStartSilent" // default, available in WebAdmin. Do update for each version change. Update silently when Outlook starts. When Outlook is running do nothing and wait for next Outlook start. KoffUPolicyOnlyIfNecessaryAsk KoffUpgradePolicy = "KoffUPolicyOnlyIfNecessaryAsk" // Update only if necessary. Ask users and require the update. KoffUPolicyOnlyIfNecessarySilent KoffUpgradePolicy = "KoffUPolicyOnlyIfNecessarySilent" // available in WebAdmin, Update only if necessary. Update silently when Outlook starts. Ask users when Outlook is running and require update. )
type LangDescription ¶ added in v0.1.2
type LangDescriptionList ¶ added in v0.1.2
type LangDescriptionList []LangDescription
type LastBackupStatus ¶ added in v0.1.2
type LastBackupStatus string
type LastLogin ¶ added in v0.1.2
type LastLogin struct {
DateTime DateTimeStamp `json:"dateTime"` // date and time of last login
Protocol string `json:"protocol"` // protocol name of last login, example POP3
}
LastLogin - Last login information.
type LdapServerStats ¶ added in v0.1.2
type LocalizableMessage ¶ added in v0.1.2
type LocalizableMessage struct {
Message string `json:"message"` // text with placeholders %1, %2, etc., e.g. "User %1 cannot be deleted."
PositionalParameters StringList `json:"positionalParameters"` // additional strings to replace the placeholders in message (first string replaces %1 etc.)
Plurality int `json:"plurality"` // count of items, used to distinguish among singular/paucal/plural; 1 for messages with no counted items
}
LocalizableMessage - Message can contain replacement marks: { "User %1 cannot be deleted.", ["jsmith"], 1 }
type LocalizableMessageList ¶ added in v0.1.2
type LocalizableMessageList []LocalizableMessage
type LocalizableMessageParameters ¶ added in v0.0.3
type LocalizableMessageParameters struct {
PositionalParameters StringList `json:"positionalParameters"` // additional strings to replace the placeholders in message (first string replaces %1 etc.)
Plurality int `json:"plurality"` // count of items, used to distinguish among singular/paucal/plural; 1 for messages with no counted items
}
LocalizableMessageParameters - Message can contain replacement marks: { "User %1 cannot be deleted.", ["jsmith"], 1 }. This is the parameters structure.
type LogFileSettings ¶ added in v0.1.2
type LogFileSettings struct {
Enabled bool `json:"enabled"` // Is logging to file enabled
FileName string `json:"fileName"` // log file name
}
LogFileSettings - general log settings
type LogItem ¶ added in v0.1.2
type LogItem struct {
LogName LogType `json:"logName"` // name of the log
HasMessages bool `json:"hasMessages"` // has the log messages?
}
LogItem - 1 log
type LogRotationSettings ¶ added in v0.1.2
type LogRotationSettings struct {
Period RotationPeriod `json:"period"` // How often does log rotate?
MaxLogSize int `json:"maxLogSize"` // Maximum log file size [MegaBytes]; Unlimited CAN be used
RotateCount int `json:"rotateCount"` // How many rotated files can be kept at most?; Unlimited CANNOT be used
}
LogRotationSettings - log rotation settings
type LogRow ¶ added in v0.1.2
type LogRow struct {
Content string `json:"content"` // 1 data row
Highlight HighlightColor `json:"highlight"` // appropriate highlight color
}
LogRow - row of the log
type LogRowList ¶ added in v0.1.2
type LogRowList []LogRow
type LogSettings ¶ added in v0.1.2
type LogSettings struct {
General LogFileSettings `json:"general"` // general log settings
Rotation LogRotationSettings `json:"rotation"` // log rotation settings
Syslog SyslogSettings `json:"syslog"` // syslog settings
}
LogSettings - Log file and output settings for 1 log
type LogType ¶ added in v0.1.2
type LogType string
LogType - valid Control names: alert, config, connection, debug, dial, error, filter, http, security, sslvpn, warning, web
type LogicalOperator ¶ added in v0.1.2
type LogicalOperator string
LogicalOperator - Compound Operator
const ( Or LogicalOperator = "Or" And LogicalOperator = "And" )
type LoginStats ¶ added in v0.1.2
LoginStats - Login statistics - count and timestamp of the last login.
type MailboxCount ¶ added in v0.1.2
type ManipulationError ¶ added in v0.1.2
type ManipulationError struct {
Id KId `json:"id"` // entity KId, can be user, group, alias, ML...
ErrorMessage LocalizableMessage `json:"errorMessage"`
}
ManipulationError - error structure to be used when manipulating with globally addressable list items
type ManipulationErrorList ¶ added in v0.1.2
type ManipulationErrorList []ManipulationError
type MasterAuthenticationOptions ¶ added in v0.1.2
type MessageThroughput ¶ added in v0.1.2
type MessageThroughput struct {
Count string `json:"count"` // how many messages
Volume ByteValueWithUnits `json:"volume"` // how much space is occupied by messages
Recipients string `json:"recipients"` // how many recipients in messages
}
type MiscellaneousOptions ¶ added in v0.1.2
type MiscellaneousOptions struct {
LogHostNames bool `json:"logHostNames"` // Log hostnames for incoming connections
ShowProgramNameAndVersion bool `json:"showProgramNameAndVersion"` // Show program name and version in network communication for non-authenticated users
InsertXEnvelopeTo bool `json:"insertXEnvelopeTo"` // Insert X-Envelope-To header to locally delivered messages
EnableTNEFDecoding bool `json:"enableTNEFDecoding"` // Enable decoding of TNEF messages (winmail.dat attachments)
EnableUUEncodedConversion bool `json:"enableUUEncodedConversion"` // Enable conversion of uuencoded messages to MIME
}
type NamedConstant ¶ added in v0.1.2
type NamedConstant struct {
Name string `json:"name"` // constant name
Value string `json:"value"` // a value of constant
}
A way how to say client that the server has a constant
type NamedConstantList ¶
type NamedConstantList []NamedConstant
type NamedMultiValue ¶ added in v0.1.0
type NamedMultiValue struct {
Name string `json:"name"` // Name-value pair
Value StringList `json:"value"`
}
NamedMultiValue - Note: all fields must be assigned if used in set methods
type NamedMultiValueList ¶ added in v0.1.2
type NamedMultiValueList []NamedMultiValue
NamedMultiValueList - List of name-multivalue pairs
type NamedValue ¶ added in v0.1.0
NamedValue - Note: all fields must be assigned if used in set methods
type NamedValueList ¶ added in v0.1.2
type NamedValueList []NamedValue
NamedValueList - List of name-value pairs
type NotificationType ¶ added in v0.1.2
type NotificationType string
type Notifications ¶ added in v0.1.2
type OccupiedStorage ¶ added in v0.1.2
type OccupiedStorage struct {
Total ByteValueWithUnits `json:"total"` // total space on disc
Occupied ByteValueWithUnits `json:"occupied"` // occupied space on disc
Percentage string `json:"percentage"` // how many per cent is occupied
}
type OperatorOptions ¶ added in v0.1.2
type OptionalEntity ¶ added in v0.1.2
type OptionalEntity struct {
Enabled bool `json:"enabled"`
Id KId `json:"id"` // global identifier
Name string `json:"name"`
}
OptionalEntity - IP Address Group / Time Range / ... that can be switched on/off Note: all fields must be assigned if used in set methods
type OptionalLong ¶ added in v0.1.2
OptionalLong - Note: all fields must be assigned if used in set methods
type OptionalString ¶ added in v0.1.2
OptionalString - A string that can be switched on/off. String is meaningful only if switched on. Note: all fields must be assigned if used in set methods
type OtherStats ¶ added in v0.1.2
type OtherStats struct {
Largest ByteValueWithUnits `json:"largest"` // the largest messages received by server
Loops string `json:"loops"` // how many detected message loops
}
type OutgoingMessageLimit ¶
type PersonalContact ¶ added in v0.1.2
type PersonalContact struct {
CommonName string `json:"commonName"`
FirstName string `json:"firstName"`
MiddleName string `json:"middleName"`
SurName string `json:"surName"`
TitleBefore string `json:"titleBefore"`
TitleAfter string `json:"titleAfter"`
NickName string `json:"nickName"`
PhoneNumberWorkVoice string `json:"phoneNumberWorkVoice"`
PhoneNumberMobile string `json:"phoneNumberMobile"`
PostalAddressWork PostalAddress `json:"postalAddressWork"`
UrlWork string `json:"urlWork"`
// BirthDay UtcDateTime `json:"birthDay"` TODO
// Anniversary UtcDateTime `json:"anniversary"`
CompanyName string `json:"companyName"`
DepartmentName string `json:"departmentName"`
Profession string `json:"profession"`
ManagerName string `json:"managerName"`
AssistantName string `json:"assistantName"`
Comment string `json:"comment"`
IMAddress string `json:"IMAddress"`
Photo PhotoAttachment `json:"photo"`
IsReadOnly bool `json:"isReadOnly"`
EmailAddresses EmailAddressList `json:"emailAddresses"`
}
PersonalContact - Personal Contact detail.
type PersonalContactList ¶ added in v0.1.2
type PersonalContactList []PersonalContact
type PhoneNumber ¶ added in v0.1.2
type PhoneNumber struct {
Type PhoneNumberType `json:"type"`
Number string `json:"number"` // A number - based on the X.500 Telephone Number attribute
Extension ABExtension `json:"extension"`
}
PhoneNumber - Structure desribing a contact phone number
type PhoneNumberList ¶ added in v0.1.2
type PhoneNumberList []PhoneNumber
type PhoneNumberType ¶ added in v0.1.2
type PhoneNumberType string
PhoneNumberType - Type of a contact phone number
const ( TypeAssistant PhoneNumberType = "TypeAssistant" TypeWorkVoice PhoneNumberType = "TypeWorkVoice" TypeWorkFax PhoneNumberType = "TypeWorkFax" TypeCallback PhoneNumberType = "TypeCallback" TypeCar PhoneNumberType = "TypeCar" TypeCompany PhoneNumberType = "TypeCompany" TypeHomeVoice PhoneNumberType = "TypeHomeVoice" TypeHomeFax PhoneNumberType = "TypeHomeFax" TypeIsdn PhoneNumberType = "TypeIsdn" TypeMobile PhoneNumberType = "TypeMobile" TypeOtherVoice PhoneNumberType = "TypeOtherVoice" TypeOtherFax PhoneNumberType = "TypeOtherFax" TypePager PhoneNumberType = "TypePager" TypePrimary PhoneNumberType = "TypePrimary" TypeRadio PhoneNumberType = "TypeRadio" TypeTelex PhoneNumberType = "TypeTelex" TypeTtyTdd PhoneNumberType = "TypeTtyTdd" TypeCustom PhoneNumberType = "TypeCustom" // no type defined )
type PhotoAttachment ¶ added in v0.1.2
type PhotoAttachment struct {
Id string `json:"id"` // origin ID of attachment or ID from upload response
Url string `json:"url"` // [READ-ONLY] Relative URL from root of web. Eg.: /webmail/api/download/attachment/ba5767a9-7a70-4c90-a6bf-dc8dd62e259c/14/0-1-0-1/picture.jpg
}
PhotoAttachment - A contact photo. Only JPEG format is supported. Maximum size is 256 kB.
type PlaceHolderList ¶
type PlaceHolderList []Constant
type Pop3ClientStats ¶ added in v0.1.2
type Pop3ServerStats ¶ added in v0.1.2
type PostalAddress ¶ added in v0.1.2
type PostalAddress struct {
Preferred bool `json:"preferred"`
Pobox string `json:"pobox"` // the post office box
ExtendedAddress string `json:"extendedAddress"` // e.g., apartment or suite number
Street string `json:"street"` // the street address
Locality string `json:"locality"` // the locality (e.g., city)
State string `json:"state"` // the region (e.g., state or province);
Zip string `json:"zip"` // the postal code
Country string `json:"country"` // the country name (full name)
Label string `json:"label"`
Type PostalAddressType `json:"type"`
Extension ABExtension `json:"extension"`
}
PostalAddress - Structure describing a postal address in contact.
type PostalAddressList ¶ added in v0.1.2
type PostalAddressList []PostalAddress
PostalAddressList - A sequence of postal addresses.
type PostalAddressType ¶ added in v0.1.2
type PostalAddressType string
PostalAddressType - Type of a postal address
const ( AddressHome PostalAddressType = "AddressHome" AddressWork PostalAddressType = "AddressWork" AddressOther PostalAddressType = "AddressOther" AddressCustom PostalAddressType = "AddressCustom" // no type defined )
type ProductInfo ¶
type ProductInfo struct {
ProductName string `json:"productName"`
Version string `json:"version"`
BuildNumber string `json:"buildNumber"`
OsName string `json:"osName"`
Os ServerOs `json:"os"`
ReleaseType BuildType `json:"releaseType"`
DeployedType DeployedType `json:"deployedType"`
UpdateInfo UpdateInfo `json:"updateInfo"`
}
type PublicFolder ¶ added in v0.0.3
type PublicFolderList ¶ added in v0.0.3
type PublicFolderList []PublicFolder
type QuotaNotification ¶ added in v0.1.2
type QuotaNotification struct {
Type NotificationType `json:"type"`
Period TimeLimit `json:"period"`
}
type QuotaUsage ¶ added in v0.1.2
type QuotaUsage struct {
Items int `json:"items"`
Storage ByteValueWithUnits `json:"storage"`
}
QuotaUsage - Amount of storage used and items currently stored in user's store.
type QuotaUsageList ¶ added in v0.1.2
type QuotaUsageList []QuotaUsage
QuotaUsageList - List of QuotaUsage.
type RemovalRequest ¶ added in v0.1.2
type RemovalRequest struct {
UserId KId `json:"userId"` // ID of user to be removed
Method UserDeleteFolderMode `json:"method"` // removal method
RemoveReferences bool `json:"removeReferences"` // if true all reference to this user is going to be removed as well
TargetUserId KId `json:"targetUserId"` // applicable only when moving user's store to another user, use empty string if not moving user's messages to target mailbox
Mode DirectoryServiceDeleteMode `json:"mode"` // delete mode
}
RemovalRequest - User to be removed, what to do with his/her mailbox.
type RemovalRequestList ¶ added in v0.1.2
type RemovalRequestList []RemovalRequest
type RenameInfo ¶
type RestrictionKind ¶ added in v0.1.2
type RestrictionKind string
RestrictionKind - A kind of restriction
const ( Regex RestrictionKind = "Regex" // regular expression ByteLength RestrictionKind = "ByteLength" // maximal length in Bytes ForbiddenNameList RestrictionKind = "ForbiddenNameList" // list of denied exact names due to filesystem or KMS store ForbiddenPrefixList RestrictionKind = "ForbiddenPrefixList" // list of denied preffixes due to filesystem or KMS store ForbiddenSuffixList RestrictionKind = "ForbiddenSuffixList" // list of denied suffixes due to filesystem or KMS store ForbiddenCharacterList RestrictionKind = "ForbiddenCharacterList" // list of denied characters )
type ResultTriplet ¶ added in v0.1.2
ResultTriplet - Result of a mass operation.
type ResultTripletList ¶ added in v0.1.2
type ResultTripletList []ResultTriplet
ResultTripletList - List of mass operation results.
type RotationPeriod ¶ added in v0.1.2
type RotationPeriod string
RotationPeriod - Period of rotation
const ( RotateNever RotationPeriod = "RotateNever" // don't rotate RotateHourly RotationPeriod = "RotateHourly" // rotate hourly RotateDaily RotationPeriod = "RotateDaily" // rotate daily RotateWeekly RotationPeriod = "RotateWeekly" // rotate weekly RotateMonthly RotationPeriod = "RotateMonthly" // rotate monthly )
type SearchQuery ¶
type SearchQuery struct {
Fields StringList `json:"fields"` // empty = give me all fields, applicable constants: ADD_USERS, LIST_USERS
Conditions SubConditionList `json:"conditions"` // empty = without condition
Combining LogicalOperator `json:"combining"` // the list of conditions can be either combined by 'ORs' or 'ANDs'
Start int `json:"start"` // how many items to skip before filling a result list (0 means skip none)
Limit int `json:"limit"` // how many items to put to a result list (if there are enough items); applicable constant: Unlimited
OrderBy SortOrderList `json:"orderBy"`
}
SearchQuery - General Query for Searching Query substitution (quicksearch): SearchQuery doesn't support complex queries, only queries with all AND operators (or all OR operators) are supported. Combination of AND and OR is not allowed. This limitation is for special cases solved by using substitution of complicated query-part by simple condition. Only the quicksearch is currently implemented and only in "Users::get()" method. Behavior of quicksearch in Users::get(): QUICKSEACH = "x" is equal to: (loginName = "x") OR (fullName = "x") QUICKSEACH LIKE "x*" is equal to: (loginName LIKE "x*") OR (fullName LIKE "x*") SearchQuery - QUICKSEACH <> "x" is equal to: (loginName <> "x") AND (fullName <> "x")
func NewSearchQuery ¶
func NewSearchQuery(fields []string, conditions SubConditionList, combining LogicalOperator, start, limit int, orderBy SortOrderList) SearchQuery
type SearchStatus ¶ added in v0.1.2
type SearchStatus string
SearchStatus - Status of the Search
const ( ResultFound SearchStatus = "ResultFound" // the seach is finished and the match has been found Searching SearchStatus = "Searching" // the search still continues, the result is not available so far Cancelled SearchStatus = "Cancelled" // the search was cancelled by client ResultNotFound SearchStatus = "ResultNotFound" // the seach is finished but nothing was found )
type ServerDirectoryType ¶ added in v0.1.2
type ServerDirectoryType string
ServerDirectoryType - Type of user directory
const ( WinNT ServerDirectoryType = "WinNT" // Windows NT Domain directory (Win NT 4.0) ActiveDirectory ServerDirectoryType = "ActiveDirectory" // Active Directory (Windows 2000 and newer) NovellEDirectory ServerDirectoryType = "NovellEDirectory" // Novell eDirectory )
type ServerStatistics ¶ added in v0.1.2
type ServerStatistics struct {
Start DateTimeStamp `json:"start"`
Uptime Distance `json:"uptime"` // server uptime
Storage OccupiedStorage `json:"storage"`
Received MessageThroughput `json:"received"` // messages received by server
StoredInQueue MessageThroughput `json:"storedInQueue"` // messages stored in queue
Transmitted MessageThroughput `json:"transmitted"` // messages transmitted by server
DeliveredToLocals MessageThroughput `json:"deliveredToLocals"` // messages delivered to local domains
Mx MessageThroughput `json:"mx"` // messages sent to remote MX servers
Relay MessageThroughput `json:"relay"` // messages sent to relay server
Failures FailureAndBounce `json:"failures"`
DeliveryStatus Notifications `json:"deliveryStatus"`
Antivirus AntivirusStats `json:"antivirus"`
Spam SpamStats `json:"spam"`
Other OtherStats `json:"other"`
SmtpServer SmtpServerStats `json:"smtpServer"`
SmtpClient SmtpClientStats `json:"smtpClient"`
Pop3Server Pop3ServerStats `json:"pop3Server"`
Pop3Client Pop3ClientStats `json:"pop3Client"`
ImapServer ImapServerStats `json:"imapServer"`
LdapServer LdapServerStats `json:"ldapServer"`
WebServer WebServerStats `json:"webServer"`
XmppServer XmppServerStats `json:"xmppServer"`
DnsResolver DnsResolverStats `json:"dnsResolver"`
Antibombing AntibombingStats `json:"antibombing"`
Greylisting GreylistingStats `json:"greylisting"`
}
type ServerTimeInfo ¶
type ServerVersion ¶
type ServiceType ¶ added in v0.1.2
type ServiceType string
const ( ServiceActiveSync ServiceType = "ServiceActiveSync" // ActiveSync ServiceEWS ServiceType = "ServiceEWS" // EWS ServiceIMAP ServiceType = "ServiceIMAP" // IMAP, Kerio Outlook Connector ServiceKoff ServiceType = "ServiceKoff" // Kerio Outlook Connector (Offline Edition) ServicePOP3 ServiceType = "ServicePOP3" // POP3 ServiceWebDAV ServiceType = "ServiceWebDAV" // WebDAV, CalDAV, CardDAV ServiceWebMail ServiceType = "ServiceWebMail" // WebMail ServiceXMPP ServiceType = "ServiceXMPP" // XMPP )
type ServiceTypeInfo ¶ added in v0.1.2
type ServiceTypeInfo struct {
Service ServiceType `json:"service"` // type of service
Description string `json:"description"` // description of service enum
}
type ServiceTypeInfoList ¶ added in v0.1.2
type ServiceTypeInfoList []ServiceTypeInfo
type SettingPath ¶ added in v0.1.2
type SettingPath []string
type SettingQuery ¶ added in v0.1.2
type SettingQuery []SettingPath
type SeverityUnit ¶ added in v0.1.2
type SeverityUnit string
SeverityUnit - Available types of severity
const ( SeverityEmergency SeverityUnit = "SeverityEmergency" SeverityAlert SeverityUnit = "SeverityAlert" SeverityCritical SeverityUnit = "SeverityCritical" SeverityError SeverityUnit = "SeverityError" SeverityWarning SeverityUnit = "SeverityWarning" SeverityNotice SeverityUnit = "SeverityNotice" SeverityInformational SeverityUnit = "SeverityInformational" SeverityDebug SeverityUnit = "SeverityDebug" )
type SizeLimit ¶ added in v0.1.2
type SizeLimit struct {
IsActive bool `json:"isActive"`
Limit ByteValueWithUnits `json:"limit"`
}
SizeLimit - Settings of size limit Note: all fields must be assigned if used in set methods
type SmtpClientStats ¶ added in v0.1.2
type SmtpServerStats ¶ added in v0.1.2
type SmtpServerStats struct {
TotalIncomingConnections string `json:"totalIncomingConnections"`
LostConnections string `json:"lostConnections"`
RejectedByBlacklist string `json:"rejectedByBlacklist"`
AuthenticationAttempts string `json:"authenticationAttempts"`
AuthenticationFailures string `json:"authenticationFailures"`
RejectedRelays string `json:"rejectedRelays"`
AcceptedMessages string `json:"acceptedMessages"`
}
type SortDirection ¶ added in v0.1.2
type SortDirection string
SortDirection - Sorting Direction
const ( Asc SortDirection = "Asc" // ascending order Desc SortDirection = "Desc" // descending order )
type SortOrder ¶ added in v0.1.0
type SortOrder struct {
ColumnName string `json:"columnName"`
Direction SortDirection `json:"direction"`
CaseSensitive bool `json:"caseSensitive"`
}
SortOrder - Sorting Order
type SortOrderList ¶ added in v0.1.2
type SortOrderList []SortOrder
SortOrderList - List of Sorting Orders
type SpamStats ¶ added in v0.1.2
type SpamStats struct {
Checked string `json:"checked"` // how many checked messages
Tagged string `json:"tagged"` // how many tagged messages
Rejected string `json:"rejected"` // how many rejected messages
MarkedAsSpam string `json:"markedAsSpam"` // how many messages were marked as spam by users
MarkedAsNotSpam string `json:"markedAsNotSpam"` // how many messages were marked as NOT spam by users
}
type StoreDirectoryOptions ¶ added in v0.1.2
type StoreDirectoryOptions struct {
StorePath string `json:"storePath"` // Path to the store directory
ArchivePath string `json:"archivePath"` // Path to the archive
BackupPath string `json:"backupPath"` // Path to the backup
WatchdogSoftLimit ByteValueWithUnits `json:"watchdogSoftLimit"` // If the available disk space falls below this value, a warning message is displayed
WatchdogHardLimit ByteValueWithUnits `json:"watchdogHardLimit"` // If the available disk space falls below this value, Kerio MailServer is stopped and an error message is displayed. Administrator's action is required.
}
type StoreStatus ¶ added in v0.1.2
type StoreStatus string
StoreStatus - Status of entry in persistent manager
const ( StoreStatusClean StoreStatus = "StoreStatusClean" // already present in configuration store StoreStatusModified StoreStatus = "StoreStatusModified" // update waiting for apply() StoreStatusNew StoreStatus = "StoreStatusNew" // added to manager but not synced to configuration store )
type SubCondition ¶ added in v0.1.0
type SubCondition struct {
FieldName string `json:"fieldName"` // left side of condition
Comparator CompareOperator `json:"comparator"` // middle of condition
Value string `json:"value"` // right side of condition
}
SubCondition - A Part of a Condition
type SubConditionList ¶ added in v0.1.2
type SubConditionList []SubCondition
SubConditionList - A Complete Condition
type SyslogSettings ¶ added in v0.1.2
type SyslogSettings struct {
Enabled bool `json:"enabled"` // Syslog is [dis|en]abled
ServerUrl string `json:"serverUrl"` // Path to syslog server
Facility FacilityUnit `json:"facility"` // which facility is message sent from
Severity SeverityUnit `json:"severity"` // read-only; severity level of message
Application string `json:"application"` // user defined application name; it is 1*48PRINTUSASCII where PRINTUSASCII = %d33-126.
}
SyslogSettings - syslog settings
type Time ¶ added in v0.1.2
Time - When using start and limit to only get a part of all results (e.g. only 20 users, skipping the first 40 users), use this special limit value for unlimited count (of course the service still respects the value of start). Note that each service is allowed to use its safety limit (such as 50,000) to prevent useless overload. The limits are documented per-service or per-method. Implementation note: Some source code transformations may lead to signed long, i.e. 4294967295. But the correct value is -1. Date and Time - should be used instead of time_t, where time zones can affect time interpretation Time - Note: all fields must be assigned if used in set methods
type TimeHMS ¶ added in v0.1.0
type TimeHMS struct {
Hours int `json:"hours"`
Minutes int `json:"minutes"`
Seconds int `json:"seconds"`
}
Note: all fields must be assigned if used in set methods
type TimeLimit ¶ added in v0.1.2
type TimeLimit struct {
Value int `json:"value"` // how many
Units TimeUnit `json:"units"` // in which units
}
Note: all fields must be assigned if used in set methods
type TreeLeaf ¶ added in v0.1.2
type TreeLeaf struct {
Id int `json:"id"` // leaf identification
ParentName string `json:"parentName"` // name of the group
Description string `json:"description"` // text after checkbox
Enabled bool `json:"enabled"` // leaf is [not] enabled
}
TreeLeaf - Leaf item of the tree
type TypeExpStatistics ¶ added in v0.1.2
type TypeExpStatistics string
type UpdateCheckerOptions ¶ added in v0.1.2
type UpdateCheckerOptions struct {
AutoCheck bool `json:"autoCheck"` // Automatically check for new versions
CheckBetaVersion bool `json:"checkBetaVersion"` // Check also for beta versions
TimeFromLastCheck DistanceOrNull `json:"timeFromLastCheck"` // [ReadOnly]
DownloadedFile string `json:"downloadedFile"` // [ReadOnly]
UpdateInfo UpdateInfo `json:"updateInfo"` // [ReadOnly]
KocVersion string `json:"kocVersion"` // [ReadOnly]
KoffVersion string `json:"koffVersion"` // [ReadOnly]
KspVersion string `json:"kspVersion"` // [ReadOnly]
KscVersion string `json:"kscVersion"` // [ReadOnly]
}
type UpdateCheckerStatus ¶ added in v0.1.2
type UpdateCheckerStatus string
type UpdateInfo ¶ added in v0.1.2
type UpdateInfo struct {
Result UpdateCheckerStatus `json:"result"`
Description string `json:"description"`
DownloadUrl string `json:"downloadUrl"`
InfoUrl string `json:"infoUrl"`
}
type Url ¶ added in v0.1.2
type Url struct {
Type UrlType `json:"type"`
Url string `json:"url"`
Extension ABExtension `json:"extension"`
}
Url - Structure desribing URL
type User ¶ added in v0.1.2
type User struct {
Id KId `json:"id"` // [READ-ONLY] global identification
DomainId KId `json:"domainId"` // [REQUIRED FOR CREATE] ID of domain where user belongs to
CompanyContactId KId `json:"companyContactId"` // ID of company contact associated with this user
LoginName string `json:"loginName"` // [REQUIRED FOR CREATE] [USED BY QUICKSEARCH] loginName name
FullName string `json:"fullName"` // [USED BY QUICKSEARCH]
Description string `json:"description"` // [USED BY QUICKSEARCH]
IsEnabled bool `json:"isEnabled"` // user account is enabled/disabled
ItemSource DataSource `json:"itemSource"` // is user stored internally or by LDAP? This field cannot be used with Or queries.
AuthType UserAuthType `json:"authType"` // supported values must be retrieved from engine by ServerInfo::getSupportedAuthTypes()
Password string `json:"password"` // [WRITE-ONLY]
IsPasswordReversible bool `json:"isPasswordReversible"` // typically triple DES
AllowPasswordChange bool `json:"allowPasswordChange"` // if it is set to false the password can be changed only by the administrator
HasDefaultSpamRule bool `json:"hasDefaultSpamRule"` // now: available only on user creation
Role UserRight `json:"role"` // user role
GroupRole UserRight `json:"groupRole"` // the mightiest user role obtained via group membership
EffectiveRole UserRight `json:"effectiveRole"` // the mightiest user role from role and groupRole
IsWritableByMe bool `json:"isWritableByMe"` // Does caller have right to change the user? E.g. if Account Admin gets User structure for Full Admin, isWritableByMe will be false. This field is read-only and cannot be used in kerio::web::SearchQuery conditions.
EmailAddresses UserEmailAddressList `json:"emailAddresses"` // List of user email addresses. His default one (loginName@domain) is not listed here
EmailForwarding EmailForwarding `json:"emailForwarding"` // email forwarding setting
UserGroups UserGroupList `json:"userGroups"` // groups membership
ItemLimit ItemCountLimit `json:"itemLimit"` // max. number of items
DiskSizeLimit SizeLimit `json:"diskSizeLimit"` // max. disk usage
ConsumedItems int `json:"consumedItems"` // current items used
ConsumedSize ByteValueWithUnits `json:"consumedSize"` // current disk usage
HasDomainRestriction bool `json:"hasDomainRestriction"` // user can send/receive from/to his/her domain only
OutMessageLimit SizeLimit `json:"outMessageLimit"` // limit of outgoing message
LastLoginInfo LastLogin `json:"lastLoginInfo"` // information about last login datetime and protocol
PublishInGal bool `json:"publishInGal"` // publish user in global address list? Default is true - the user will be published in Global Address Book.
CleanOutItems CleanOut `json:"cleanOutItems"` // Items clean-out settings
AccessPolicy IdEntity `json:"accessPolicy"` // ID and name of Access Policy applied for user. Only ID is writable.
HomeServer HomeServer `json:"homeServer"` // [WRITE-ONCE] Id of user's homeserver if server is in a distributed domain.
Migration OptionalEntity `json:"migration"` // [READ-ONLY] migration.enabled is true if user's store is just being migrated and migration.id contains migration task id
}
User - User details.
type UserAuthType ¶ added in v0.1.2
type UserAuthType string
Type of authorization
const ( UInternalAuth UserAuthType = "UInternalAuth" // Internal authorization UWindowsNTAuth UserAuthType = "UWindowsNTAuth" // Windows NT domain authorization UPamAuth UserAuthType = "UPamAuth" // Authorization for linux UKerberosAuth UserAuthType = "UKerberosAuth" // Kerberos authorization UAppleAuth UserAuthType = "UAppleAuth" // Apple authorization ULDAPAuth UserAuthType = "ULDAPAuth" // LDAP authorization )
type UserDeleteFolderMode ¶ added in v0.1.2
type UserDeleteFolderMode string
UserDeleteFolderMode - Type of deleting folder of the user
const ( UDeleteUser UserDeleteFolderMode = "UDeleteUser" // Delete user without deleting his folder. UDeleteFolder UserDeleteFolderMode = "UDeleteFolder" // Delete user and delete his folder. UMoveFolder UserDeleteFolderMode = "UMoveFolder" // Delete user and his folder will move into another user's folder. )
type UserDetails ¶
type UserDetails struct {
ID string `json:"id"`
DomainID string `json:"domainId"`
LoginName string `json:"loginName"`
FullName string `json:"fullName"`
EffectiveRole struct {
UserRole string `json:"userRole"`
PublicFolderRight bool `json:"publicFolderRight"`
ArchiveFolderRight bool `json:"archiveFolderRight"`
} `json:"effectiveRole"`
}
type UserEmailAddressList ¶ added in v0.1.2
type UserEmailAddressList []string
UserEmailAddressList - List of email addresses
type UserForwardMode ¶ added in v0.1.2
type UserForwardMode string
UserForwardMode - Forwarding setup for user.
const ( UForwardNone UserForwardMode = "UForwardNone" // Forwarding is disabled UForwardYes UserForwardMode = "UForwardYes" // Forward all messages for this user to some addresses, don't deliver the message to the mailbox. UForwardDeliver UserForwardMode = "UForwardDeliver" // Forward all messages for this user to some addresses, and also deliver the message to user's mailbox. )
type UserGroup ¶ added in v0.1.2
type UserGroup struct {
Id KId `json:"id"` // global identification
Name string `json:"name"`
Description string `json:"description"`
ItemSource DataSource `json:"itemSource"`
}
UserGroup - Properties of user's groups.
type UserGroupList ¶ added in v0.1.2
type UserGroupList []UserGroup
UserGroupList - List of user's groups.
type UserQuota ¶ added in v0.1.2
type UserQuota struct {
Notification QuotaNotification `json:"notification"` // option for notification
WarningLimit int `json:"warningLimit"` // limit in per cent
Email string `json:"email"` // if quota is exceeded the notification will be sent to this address
}
type UserRight ¶ added in v0.1.2
type UserRight struct {
UserRole UserRoleType `json:"userRole"`
PublicFolderRight bool `json:"publicFolderRight"`
ArchiveFolderRight bool `json:"archiveFolderRight"`
}
UserRight - Note: all fields must be assigned if used in set methods.
type UserRoleType ¶ added in v0.1.2
type UserRoleType string
UserRoleType - Type of user role.
const ( UserRole UserRoleType = "UserRole" // regular user without any administration rights Auditor UserRoleType = "Auditor" // read only access to administration AccountAdmin UserRoleType = "AccountAdmin" // can administer Users,Groups,Aliases,MLs FullAdmin UserRoleType = "FullAdmin" // unlimited administration BuiltInAdmin UserRoleType = "BuiltInAdmin" // BuiltIn admin role can be returned only in Session::WhoAmI method for built-in administrator. This role must NOT be assigned. BuiltInDomainAdmin UserRoleType = "BuiltInDomainAdmin" // BuiltIn domain admin role can be returned only in Session::WhoAmI method for built-in domain administrator. This role must NOT be assigned. )
type UserStatList ¶ added in v0.1.2
type UserStatList []UserStats
UserStatList - List of users' statistics.
type UserStats ¶ added in v0.1.2
type UserStats struct {
Name string `json:"name"` // user's loginName
OccupiedSpace QuotaUsage `json:"occupiedSpace"`
Pop3 LoginStats `json:"pop3"`
SecurePop3 LoginStats `json:"securePop3"`
Imap LoginStats `json:"imap"`
SecureImap LoginStats `json:"secureImap"`
Http LoginStats `json:"http"`
SecureHttp LoginStats `json:"secureHttp"`
Ldap LoginStats `json:"ldap"`
SecureLdap LoginStats `json:"secureLdap"`
Nntp LoginStats `json:"nntp"`
SecureNntp LoginStats `json:"secureNntp"`
ActiveSync LoginStats `json:"activeSync"`
SecureActiveSync LoginStats `json:"secureActiveSync"`
Xmpp LoginStats `json:"xmpp"`
SecureXmpp LoginStats `json:"secureXmpp"`
}
UserStats - Statistics about user's usage of quota, logins to different services.
type ValidPeriod ¶ added in v0.1.2
type ValidPeriod struct {
ValidFromDate Date `json:"validFromDate"` // @see SharedStructures.idl shared in lib
ValidFromTime Time `json:"validFromTime"` // @see SharedStructures.idl shared in lib
ValidToDate Date `json:"validToDate"` // @see SharedStructures.idl shared in lib
ValidToTime Time `json:"validToTime"` // @see SharedStructures.idl shared in lib
ValidType ValidType `json:"validType"`
}
ValidPeriod - Certificate Time properties
type WebComponent ¶ added in v0.1.2
type WebComponent string
Enum type for determine which web component is in use in session
const ( WebComponentWEBMAIL WebComponent = "WebComponentWEBMAIL" // WebMail WebComponentADMIN WebComponent = "WebComponentADMIN" // Web Administration WebComponentMINI WebComponent = "WebComponentMINI" // WebMail mini )
type WebMailOptions ¶ added in v0.1.2
type WebMailOptions struct {
MessageSizeLimit int `json:"messageSizeLimit"` // Maximum size of message that can be sent from the WebMail interface (HTTP POST size)
SessionExpireTimeout TimeLimit `json:"sessionExpireTimeout"` // Session expire timeout
MaximumSessionDuration TimeLimit `json:"maximumSessionDuration"` // Maximum session duration
ForceLogout bool `json:"forceLogout"` // Force WebMail logout if user's IP address changes (prevents session hijacking and session fixation attacks)
CustomLoginPage WebmailCustomLoginPage `json:"customLoginPage"` // Use custom logo in WebMail login page
CustomClientLogo CustomImage `json:"customClientLogo"` // Use custom logo in Kerio Connect Client
}
type WebServerStats ¶ added in v0.1.2
type WebServerStats struct {
TotalIncomingConnections string `json:"totalIncomingConnections"`
}
type WebSessionList ¶
type WebmailCustomLoginPage ¶ added in v0.1.2
type WebmailCustomLoginPage struct {
Logo CustomImage `json:"logo"`
ButtonColor ButtonColor `json:"buttonColor"`
AdditionalInfo AdditionalInfo `json:"additionalInfo"`
}