Documentation
¶
Index ¶
- type Capabilities
- type CapabilitiesAppProvider
- type CapabilitiesArchiver
- type CapabilitiesChecksums
- type CapabilitiesCore
- type CapabilitiesData
- type CapabilitiesDav
- type CapabilitiesFiles
- type CapabilitiesFilesSharing
- type CapabilitiesFilesSharingFederation
- type CapabilitiesFilesSharingPublic
- type CapabilitiesFilesSharingPublicExpireDate
- type CapabilitiesFilesSharingPublicPassword
- type CapabilitiesFilesSharingPublicPasswordEnforcedFor
- type CapabilitiesFilesSharingUser
- type CapabilitiesFilesSharingUserEnumeration
- type CapabilitiesFilesTusSupport
- type CapabilitiesGraph
- type CapabilitiesGraphUsers
- type CapabilitiesGroupware
- type CapabilitiesNotifications
- type CapabilitiesPasswordPolicy
- type CapabilitiesSearch
- type CapabilitiesSearchProperties
- type CapabilitiesSearchProperty
- type CapabilitiesSearchPropertyExtended
- type CapabilitiesTheme
- type CapabilitiesThemeLogo
- type CapabilitiesUserSettings
- type Spaces
- type Status
- type Version
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Capabilities ¶
type Capabilities struct {
Core *CapabilitiesCore `json:"core" xml:"core"`
Checksums *CapabilitiesChecksums `json:"checksums" xml:"checksums"`
Files *CapabilitiesFiles `json:"files" xml:"files" mapstructure:"files"`
Dav *CapabilitiesDav `json:"dav" xml:"dav"`
FilesSharing *CapabilitiesFilesSharing `json:"files_sharing" xml:"files_sharing" mapstructure:"files_sharing"`
Spaces *Spaces `json:"spaces,omitempty" xml:"spaces,omitempty" mapstructure:"spaces"`
Graph *CapabilitiesGraph `json:"graph,omitempty" xml:"graph,omitempty" mapstructure:"graph"`
PasswordPolicy *CapabilitiesPasswordPolicy `json:"password_policy,omitempty" xml:"password_policy,omitempty" mapstructure:"password_policy"`
Search *CapabilitiesSearch `json:"search,omitempty" xml:"search,omitempty" mapstructure:"search"`
Theme *CapabilitiesTheme `json:"theme,omitempty" xml:"theme,omitempty" mapstructure:"theme"`
Notifications *CapabilitiesNotifications `json:"notifications,omitempty" xml:"notifications,omitempty"`
Groupware *CapabilitiesGroupware `json:"groupware,omitempty" xml:"groupware,omitempty" mapstructure:"groupware"`
}
Capabilities groups several capability aspects
type CapabilitiesAppProvider ¶
type CapabilitiesAppProvider struct {
Enabled bool `json:"enabled" xml:"enabled" mapstructure:"enabled"`
Version string `json:"version" xml:"version" mapstructure:"version"`
AppsURL string `json:"apps_url" xml:"apps_url" mapstructure:"apps_url"`
OpenURL string `json:"open_url" xml:"open_url" mapstructure:"open_url"`
OpenWebURL string `json:"open_web_url" xml:"open_web_url" mapstructure:"open_web_url"`
NewURL string `json:"new_url" xml:"new_url" mapstructure:"new_url"`
}
CapabilitiesAppProvider holds available app provider information
type CapabilitiesArchiver ¶
type CapabilitiesArchiver struct {
Enabled bool `json:"enabled" xml:"enabled" mapstructure:"enabled"`
Version string `json:"version" xml:"version" mapstructure:"version"`
Formats []string `json:"formats" xml:"formats" mapstructure:"formats"`
ArchiverURL string `json:"archiver_url" xml:"archiver_url" mapstructure:"archiver_url"`
MaxNumFiles string `json:"max_num_files" xml:"max_num_files" mapstructure:"max_num_files"`
MaxSize string `json:"max_size" xml:"max_size" mapstructure:"max_size"`
}
CapabilitiesArchiver holds available archivers information
type CapabilitiesChecksums ¶
type CapabilitiesChecksums struct {
SupportedTypes []string `json:"supportedTypes" xml:"supportedTypes>element" mapstructure:"supported_types"`
PreferredUploadType string `json:"preferredUploadType" xml:"preferredUploadType" mapstructure:"preferred_upload_type"`
}
CapabilitiesChecksums holds available hashes
type CapabilitiesCore ¶
type CapabilitiesCore struct {
PollInterval int `json:"pollinterval" xml:"pollinterval" mapstructure:"poll_interval"`
WebdavRoot string `json:"webdav-root,omitempty" xml:"webdav-root,omitempty" mapstructure:"webdav_root"`
Status *Status `json:"status" xml:"status"`
CheckForUpdates ocsBool `json:"check-for-updates" xml:"check-for-updates" mapstructure:"check_for_updates"`
SupportURLSigning ocsBool `json:"support-url-signing" xml:"support-url-signing" mapstructure:"support_url_signing"`
SupportSSE ocsBool `json:"support-sse" xml:"support-sse" mapstructure:"support_sse"`
SupportRadicale ocsBool `json:"support-radicale" xml:"support-radicale" mapstructure:"support_radicale"`
}
CapabilitiesCore holds webdav config
type CapabilitiesData ¶
type CapabilitiesData struct {
Capabilities *Capabilities `json:"capabilities" xml:"capabilities"`
Version *Version `json:"version" xml:"version"`
}
CapabilitiesData holds the capabilities data
type CapabilitiesDav ¶
type CapabilitiesDav struct {
Chunking string `json:"chunking" xml:"chunking"`
Trashbin string `json:"trashbin" xml:"trashbin"`
Reports []string `json:"reports" xml:"reports>element" mapstructure:"reports"`
ChunkingParallelUploadDisabled bool `json:"chunkingParallelUploadDisabled" xml:"chunkingParallelUploadDisabled"`
}
CapabilitiesDav holds dav endpoint config
type CapabilitiesFiles ¶
type CapabilitiesFiles struct {
PrivateLinks ocsBool `json:"privateLinks" xml:"privateLinks" mapstructure:"private_links"`
BigFileChunking ocsBool `json:"bigfilechunking" xml:"bigfilechunking"`
Undelete ocsBool `json:"undelete" xml:"undelete"`
Versioning ocsBool `json:"versioning" xml:"versioning"`
Favorites ocsBool `json:"favorites" xml:"favorites"`
FullTextSearch ocsBool `json:"full_text_search" xml:"full_text_search" mapstructure:"full_text_search"`
Tags ocsBool `json:"tags" xml:"tags"`
BlacklistedFiles []string `json:"blacklisted_files" xml:"blacklisted_files>element" mapstructure:"blacklisted_files"`
TusSupport *CapabilitiesFilesTusSupport `json:"tus_support" xml:"tus_support" mapstructure:"tus_support"`
Archivers []*CapabilitiesArchiver `json:"archivers" xml:"archivers" mapstructure:"archivers"`
AppProviders []*CapabilitiesAppProvider `json:"app_providers" xml:"app_providers" mapstructure:"app_providers"`
}
CapabilitiesFiles TODO this is storage specific, not global. What effect do these options have on the clients?
type CapabilitiesFilesSharing ¶
type CapabilitiesFilesSharing struct {
APIEnabled ocsBool `json:"api_enabled" xml:"api_enabled" mapstructure:"api_enabled"`
GroupSharing ocsBool `json:"group_sharing" xml:"group_sharing" mapstructure:"group_sharing"`
SharingRoles ocsBool `json:"sharing_roles" xml:"sharing_roles" mapstructure:"sharing_roles"`
DenyAccess ocsBool `json:"deny_access" xml:"deny_access" mapstructure:"deny_access"`
SearchMinLength int `json:"search_min_length" xml:"search_min_length" mapstructure:"search_min_length"`
DefaultPermissions int `json:"default_permissions" xml:"default_permissions" mapstructure:"default_permissions"`
UserEnumeration *CapabilitiesFilesSharingUserEnumeration `json:"user_enumeration" xml:"user_enumeration" mapstructure:"user_enumeration"`
Federation *CapabilitiesFilesSharingFederation `json:"federation" xml:"federation"`
Public *CapabilitiesFilesSharingPublic `json:"public" xml:"public"`
User *CapabilitiesFilesSharingUser `json:"user" xml:"user"`
// TODO: Remove next line once web defaults to resharing=false
Resharing ocsBool `json:"resharing" xml:"resharing"`
}
CapabilitiesFilesSharing TODO document
type CapabilitiesFilesSharingFederation ¶
type CapabilitiesFilesSharingFederation struct {
Outgoing ocsBool `json:"outgoing" xml:"outgoing"`
Incoming ocsBool `json:"incoming" xml:"incoming"`
}
CapabilitiesFilesSharingFederation holds outgoing and incoming flags
type CapabilitiesFilesSharingPublic ¶
type CapabilitiesFilesSharingPublic struct {
Enabled ocsBool `json:"enabled" xml:"enabled"`
SendMail ocsBool `json:"send_mail" xml:"send_mail" mapstructure:"send_mail"`
Upload ocsBool `json:"upload" xml:"upload"`
Multiple ocsBool `json:"multiple" xml:"multiple"`
SupportsUploadOnly ocsBool `json:"supports_upload_only" xml:"supports_upload_only" mapstructure:"supports_upload_only"`
Password *CapabilitiesFilesSharingPublicPassword `json:"password" xml:"password"`
ExpireDate *CapabilitiesFilesSharingPublicExpireDate `json:"expire_date" xml:"expire_date" mapstructure:"expire_date"`
CanEdit ocsBool `json:"can_edit" xml:"can_edit" mapstructure:"can_edit"`
Alias ocsBool `json:"alias" xml:"alias"`
DefaultPermissions int `json:"default_permissions" xml:"default_permissions" mapstructure:"default_permissions"`
}
CapabilitiesFilesSharingPublic TODO document
type CapabilitiesFilesSharingPublicExpireDate ¶
type CapabilitiesFilesSharingPublicExpireDate struct {
Enabled ocsBool `json:"enabled" xml:"enabled"`
}
CapabilitiesFilesSharingPublicExpireDate TODO document
type CapabilitiesFilesSharingPublicPassword ¶
type CapabilitiesFilesSharingPublicPassword struct {
EnforcedFor *CapabilitiesFilesSharingPublicPasswordEnforcedFor `json:"enforced_for" xml:"enforced_for" mapstructure:"enforced_for"`
Enforced ocsBool `json:"enforced" xml:"enforced"`
}
CapabilitiesFilesSharingPublicPassword TODO document
type CapabilitiesFilesSharingPublicPasswordEnforcedFor ¶
type CapabilitiesFilesSharingPublicPasswordEnforcedFor struct {
ReadOnly ocsBool `json:"read_only" xml:"read_only,omitempty" mapstructure:"read_only"`
ReadWrite ocsBool `json:"read_write" xml:"read_write,omitempty" mapstructure:"read_write"`
ReadWriteDelete ocsBool `json:"read_write_delete" xml:"read_write_delete,omitempty" mapstructure:"read_write_delete"`
UploadOnly ocsBool `json:"upload_only" xml:"upload_only,omitempty" mapstructure:"upload_only"`
}
CapabilitiesFilesSharingPublicPasswordEnforcedFor TODO document
type CapabilitiesFilesSharingUser ¶
type CapabilitiesFilesSharingUser struct {
SendMail ocsBool `json:"send_mail" xml:"send_mail" mapstructure:"send_mail"`
ProfilePicture ocsBool `json:"profile_picture" xml:"profile_picture" mapstructure:"profile_picture"`
Settings []*CapabilitiesUserSettings `json:"settings" xml:"settings" mapstructure:"settings"`
ExpireDate *CapabilitiesFilesSharingPublicExpireDate `json:"expire_date" xml:"expire_date" mapstructure:"expire_date"`
}
CapabilitiesFilesSharingUser TODO document
type CapabilitiesFilesSharingUserEnumeration ¶
type CapabilitiesFilesSharingUserEnumeration struct {
Enabled ocsBool `json:"enabled" xml:"enabled"`
GroupMembersOnly ocsBool `json:"group_members_only" xml:"group_members_only" mapstructure:"group_members_only"`
}
CapabilitiesFilesSharingUserEnumeration TODO document
type CapabilitiesFilesTusSupport ¶
type CapabilitiesFilesTusSupport struct {
Version string `json:"version" xml:"version"`
Resumable string `json:"resumable" xml:"resumable"`
Extension string `json:"extension" xml:"extension"`
MaxChunkSize int `json:"max_chunk_size" xml:"max_chunk_size" mapstructure:"max_chunk_size"`
HTTPMethodOverride string `json:"http_method_override" xml:"http_method_override" mapstructure:"http_method_override"`
}
CapabilitiesFilesTusSupport TODO this must be a summary of storages
type CapabilitiesGraph ¶
type CapabilitiesGraph struct {
PersonalDataExport ocsBool `json:"personal-data-export" xml:"personal-data-export" mapstructure:"personal_data_export"`
Users CapabilitiesGraphUsers `json:"users" xml:"users" mapstructure:"users"`
}
CapabilitiesGraph holds the graph capabilities
type CapabilitiesGraphUsers ¶
type CapabilitiesGraphUsers struct {
ReadOnlyAttributes []string `json:"read_only_attributes" xml:"read_only_attributes" mapstructure:"read_only_attributes"`
CreateDisabled ocsBool `json:"create_disabled" xml:"create_disabled" mapstructure:"create_disabled"`
DeleteDisabled ocsBool `json:"delete_disabled" xml:"delete_disabled" mapstructure:"delete_disabled"`
ChangePasswordSelfDisabled ocsBool `json:"change_password_self_disabled" xml:"change_password_self_disabled" mapstructure:"change_password_self_disabled"`
EditLoginAllowedDisabled ocsBool `json:"edit_login_allowed_disabled" xml:"edit_login_allowed_disabled" mapstructure:"edit_login_allowed_disabled"`
}
CapabilitiesGraphUsers holds the graph user capabilities
type CapabilitiesGroupware ¶ added in v2.39.1
type CapabilitiesGroupware struct {
Enabled bool `json:"enabled,omitempty" xml:"enabled,omitempty" mapstructure:"enabled"`
}
CapabilitiesGroupware holds groupware capabilities
type CapabilitiesNotifications ¶
type CapabilitiesNotifications struct {
Endpoints []string `json:"ocs-endpoints,omitempty" xml:"ocs-endpoints>element,omitempty" mapstructure:"endpoints"`
Configurable bool `json:"configurable" xml:"configurable,omitempty" mapstructure:"configurable"`
}
CapabilitiesNotifications holds a list of notification endpoints
type CapabilitiesPasswordPolicy ¶
type CapabilitiesPasswordPolicy struct {
MinCharacters int `json:"min_characters" xml:"min_characters" mapstructure:"min_characters"`
MaxCharacters int `json:"max_characters" xml:"max_characters" mapstructure:"max_characters"`
MinLowerCaseCharacters int `json:"min_lowercase_characters" xml:"min_lowercase_characters" mapstructure:"min_lowercase_characters"`
MinUpperCaseCharacters int `json:"min_uppercase_characters" xml:"min_uppercase_characters" mapstructure:"min_uppercase_characters"`
MinDigits int `json:"min_digits" xml:"min_digits" mapstructure:"min_digits"`
MinSpecialCharacters int `json:"min_special_characters" xml:"min_special_characters" mapstructure:"min_special_characters"`
BannedPasswordsList map[string]struct{} `json:"-" xml:"-" mapstructure:"banned_passwords_list"`
}
CapabilitiesPasswordPolicy hold the password policy capabilities
type CapabilitiesSearch ¶
type CapabilitiesSearch struct {
Property *CapabilitiesSearchProperties `json:"property" xml:"property" mapstructure:"property"`
}
CapabilitiesSearch holds the search capabilities
type CapabilitiesSearchProperties ¶
type CapabilitiesSearchProperties struct {
Name *CapabilitiesSearchProperty `json:"name" xml:"name" mapstructure:"name"`
Mtime *CapabilitiesSearchPropertyExtended `json:"mtime" xml:"mtime" mapstructure:"mtime"`
Size *CapabilitiesSearchProperty `json:"size" xml:"size" mapstructure:"size"`
MediaType *CapabilitiesSearchPropertyExtended `json:"mediatype" xml:"mediatype" mapstructure:"mediatype"`
Type *CapabilitiesSearchProperty `json:"type" xml:"type" mapstructure:"type"`
Tag *CapabilitiesSearchProperty `json:"tag" xml:"tag" mapstructure:"tag"`
Tags *CapabilitiesSearchProperty `json:"tags" xml:"tags" mapstructure:"tags"`
Content *CapabilitiesSearchProperty `json:"content" xml:"content" mapstructure:"content"`
Scope *CapabilitiesSearchProperty `json:"scope" xml:"scope" mapstructure:"scope"`
}
CapabilitiesSearchProperties holds the search property capabilities
type CapabilitiesSearchProperty ¶
type CapabilitiesSearchProperty struct {
Enabled ocsBool `json:"enabled" xml:"enabled" mapstructure:"enabled"`
}
CapabilitiesSearchProperty represents the default search property
type CapabilitiesSearchPropertyExtended ¶
type CapabilitiesSearchPropertyExtended struct {
CapabilitiesSearchProperty `mapstructure:",squash"`
Keywords []string `json:"keywords,omitempty" xml:"keywords,omitempty" mapstructure:"keywords"`
}
CapabilitiesSearchPropertyExtended represents the extended search property
type CapabilitiesTheme ¶
type CapabilitiesTheme struct {
Logo *CapabilitiesThemeLogo `json:"logo" xml:"logo" mapstructure:"logo"`
}
CapabilitiesTheme holds theming capabilities
type CapabilitiesThemeLogo ¶
type CapabilitiesThemeLogo struct {
// xml marshal, unmarshal does not support map[string]string, needs a custom type with MarshalXML and UnmarshalXML implementations
PermittedFileTypes map[string]string `json:"permitted_file_types" xml:"-" mapstructure:"permitted_file_types"`
}
CapabilitiesThemeLogo holds theming logo capabilities
type CapabilitiesUserSettings ¶
type CapabilitiesUserSettings struct {
Enabled bool `json:"enabled" xml:"enabled" mapstructure:"enabled"`
Version string `json:"version" xml:"version" mapstructure:"version"`
}
CapabilitiesUserSettings holds available user settings service information
type Spaces ¶
type Spaces struct {
Version string `json:"version" xml:"version" mapstructure:"version"`
Enabled bool `json:"enabled" xml:"enabled" mapstructure:"enabled"`
Projects bool `json:"projects" xml:"projects" mapstructure:"projects"`
MaxQuota uint64 `json:"max_quota" xml:"max_quota" mapstructure:"max_quota"`
}
Spaces lets a service configure its advertised options related to Storage Spaces.
type Status ¶
type Status struct {
Installed ocsBool `json:"installed" xml:"installed"`
Maintenance ocsBool `json:"maintenance" xml:"maintenance"`
NeedsDBUpgrade ocsBool `json:"needsDbUpgrade" xml:"needsDbUpgrade"`
Version string `json:"version" xml:"version"`
VersionString string `json:"versionstring" xml:"versionstring"`
Edition string `json:"edition" xml:"edition"`
ProductName string `json:"productname" xml:"productname"`
Product string `json:"product" xml:"product"`
ProductVersion string `json:"productversion" xml:"productversion"`
Hostname string `json:"hostname,omitempty" xml:"hostname,omitempty"`
Channel string `json:"channel" xml:"channel"`
}
Status holds basic status information
type Version ¶
type Version struct {
Major int `json:"major" xml:"major"`
Minor int `json:"minor" xml:"minor"`
Micro int `json:"micro" xml:"micro"` // = patch level
String string `json:"string" xml:"string"`
Edition string `json:"edition" xml:"edition"`
Product string `json:"product" xml:"product"`
ProductVersion string `json:"productversion" xml:"productversion"`
Channel string `json:"channel" xml:"channel"`
}
Version holds version information