----------------------------- urn:zimbraAdmin ----------------------------- Attributes for all commands can have multiple values: {value} {value} {value} Note that name1 appears twice. When updating multiple attributes, you need to specify all the old values at the same time you specify new ones. ---------------------------- [...] [...] ... Only one of or can/must be specified. ... [...] {lifetime-in-milliseconds} {persistAuthTokenCookie} = controls whether the auth token cookie in the response should be persisted when the browser exits. 0: (default) the cookie will be deleted when the Web browser exits. 1: The "Expires" attribute of the cookie will be set per rfc6265. {csrfTokenSecured} = controls whether the client has the capability to handle CSRF token 0: (default) the client is not capable of handling CSRF token 1: The client is capable of handling CSRF token. Note: Only works with admin/domain-admin accounts Access: domain admin sufficient ---------------------------- ... ... ... Used to request a new auth token that is valid for the specified account. The id of the auth token will be the id of the target account, and the requesting admin's id will be stored in the auth token for auditing purposes. {duration} = lifetime in seconds of the newly-created authtoken. defaults to 1 hour. Can't be longer then zimbraAuthTokenLifetime. ---------------------------- ... ...* ...+ ...+ Notes: accounts without passwords can't be logged into name must include domain (uid@name), and domain specified in name must exist default value for zimbraAccountStatus is "active" Access: domain admin sufficient ----------------------------- ... ...+ {apply-cos} = 0|1 (1 is default) if {apply-cos} is 1, then COS rules apply and unset attrs on an account will get their value from the COS. if {apply-cos} is 0, then only attributes directly set on the account will be returned {req-attrs} = comma-seperated list of attrs to return Access: domain admin sufficient note: this request is by default proxied to the account's home server ----------------------------- ... Note: For historical reasons, there are some minor differences between the Admin and Account versions of GetAccountInfoResponse. {account-name} {value}+ {acct-soap-url}+ {admin-soap-url} {web-mail-url} {account-name} = email address (user@domain) {attrs} = account attrs. Currently only two attrs are returned: zimbraId - the unique UUID of the zimbra account zimbraMailHost - the server on which this user's mail resides {acct-soap-url} = URL to talk to for soap service for this account. i.e: http://server:7070/service/soap/ Multiple URLs can be returned if both http and https (SSL) are enabled. If only one of the two is enabled, the only one URL will be returned. {admin-soap-url} = URL for the Admin SOAP service Note: Admin app only runs over SSL. {web-mail-url} = URL for the Web Mail application Access: domain admin sufficient ----------------------------- ...
...+
+
{via-dl-name} = is present if the account is a member of the returned list because they are either a direct or indirect member of another list that is a member of the returned list. For example, if a user is a member of engineering@domain.com, and engineering@domain.com is a member of all@domain.com, then
would be returned. ----------------------------- ...+ ----------------------------- {value-of-zimbraId} ...+ ...+ Notes: an empty attribute value removes the specified attr Access: domain admin sufficient. limited set of attributes that can be updated by a domain admin. note: this request is by default proxied to the account's home server ----------------------------- {value-of-zimbraId} {new-account-name} ...+ Access: domain admin sufficient note: this request is by default proxied to the account's home server ----------------------------- {value-of-zimbraId} Deletes the account with the given id. If the request is sent to the server on which the mailbox resides, the mailbox is deleted as well. Access: domain admin sufficient note: this request is by default proxied to the account's home server ----------------------------- {value-of-zimbraId} ... [...] Access: domain admin sufficient : If the password had violated any policy, it is returned in the element, and the password is still set successfully. note: this request is by default proxied to the account's home server ----------------------------- {value-of-zimbraId} ... Access: domain admin sufficient note: this request is by default proxied to the account's home server ----------------------------- {value-of-zimbraId} ... Access: domain admin sufficient note: this request is by default proxied to the account's home server ----------------------------- {value-of-zimbraId} ... Access: domain admin sufficient note: this request is by default proxied to the account's home server ----------------------------- Removes all account loggers and reloads /opt/zimbra/conf/log4j.properties. ----------------------------- NOTE: SearchAccountsRequest is deprecated. See SearchDirectoryRequest. ... ...+ ...+
...+
Notes: SearchAccountsRequest - query string should be an LDAP-style filter string (RFC 2254) limit - the number of accounts to return (0 is default and means all) offset - the starting offset (0, 25, etc) domain - the domain name to limit the search to applyCos - whether or not (0/1) to apply the COS policy to account. specify 0 if only requesting attrs that aren't inherited from COS applyConfig - whether or not (0/1) to apply the global config attrs to domain. specify 0 if only requesting attrs that aren't inherited from global config attrs - comma-seperated list of attrs to return ("displayName", "zimbraId", "zimbraAccountStatus") sortBy - name of attribute to sort on. default is the account name. sortAscending - whether to sort in ascending order (0/1), 1 is default more-flag = true if more accounts left to return search-total = total number of accounts that matched search (not affected by limit/offset) types = comma-separated list of types to return. legal values are: accounts|resources (default is accounts) SearchAccountsResponse isExternal: whether the account's zimbraMailTranport points to the designated protocol(lmtp) and server(home server of the account). Access: domain admin sufficient (a domain admin can't specify "domains" as a type) ----------------------------- ... ...* {limit} = an integer specifying the maximum number of results to return {type} = type of addresses to auto-complete on "account" for regular user accounts, aliases and distribution lists "resource" for calendar resources "all" for combination of both types if omitted, defaults to "accounts" {more-flag} = 1 if the results were truncated. {tokenize-key-op} = and|or - Not present if the search key was not tokenized. - Some clients backtrack on GAL results assuming the results of a more specific key is the subset of a more generic key, and it checks cached results instead of issuing another SOAP request to the server. If search key was tokenized and expanded with AND or OR, this cannot be assumed. Notes: admin verison of mail equiv. Used for testing via zmprov. ----------------------------- ... ...* {more-flag} = 1 if the results were truncated. {tokenize-key-op} = and|or - Not present if the search key was not tokenized. - Some clients backtrack on GAL results assuming the results of a more specific key is the subset of a more generic key, and it checks cached results instead of issuing another SOAP request to the server. If search key was tokenized and expanded with AND or OR, this cannot be assumed. {type} = type of addresses to search "account" for regular user accounts, aliases and distribution lists "resource" for calendar resources "all" for combination of both types if omitted, defaults to "all" Notes: admin verison of mail equiv. Used for testing via zmprov. ----------------------------- ... ...+ * ...+ *
...+
* ...+ * ...+ *
Notes: SearchDirectoryRequest - query string should be an LDAP-style filter string (RFC 2254) maxResults = maximum results that the backend will attempt to fetch from the directory before returning a account.TOO_MANY_SEARCH_RESULTS error. limit - the number of accounts to return per page (0 is default and means all) offset - the starting offset (0, 25, etc) domain - the domain name to limit the search to (do not use if searching for domains) applyCos - whether or not (0/1) to apply the COS policy to account. specify 0 if only requesting attrs that aren't inherited from COS attrs - comma-seperated list of attrs to return ("displayName", "zimbraId", "zimbraAccountStatus") sortBy - name of attribute to sort on. default is the account name. sortAscending - whether to sort in ascending order (0/1), 1 is default more-flag = true if more accounts left to return search-total = total number of accounts that matched search (not affected by limit/offset) types = comma-separated list of types to return. legal values are: accounts|distributionlists|aliases|resources|domains|coses (default is accounts) SearchDirectoryResponse isExternal: whether the account's zimbraMailTranport points to the designated protocol(lmtp) and server(home server of the account). Access: domain admin sufficient (though a domain admin can't specify "domains" as a type) ----------------------------- + Notes: GetQuotaUsageRequest limit - the number of accounts to return (0 is default and means all) offset - the starting offset (0, 25, etc) domain - the domain name to limit the search to allServers - whether to fetch quota usage for all domain accounts from across all mailbox servers (0/1), 0 is default, applicable when domain attribute is specified sortBy - valid values: "percentUsed", "totalUsed", "quotaLimit" sortAscending - whether to sort in ascending order (0/1), 0 is default, so highest quotas are returned first refresh - whether to always recalculate the data even when cached values are available. 0 is default. more-flag = true if more accounts left to return search-total = total number of accounts that matched search (not affected by limit/offset) used = used quota in bytes, or 0 if no quota used limit = quota limit in bytes, or 0 if unlimited The target server should be specified in the soap header (see soap.txt, ). When sorting by "quotaLimit", 0 is treated as the highest value possible. ----------------------------- Computes the aggregate quota usage for all domains in the system. The request handler issues GetAggregateQuotaUsageOnServerRequest to all mailbox servers and computes the aggregate quota used by each domain. The request handler updates the zimbraAggregateQuotaLastUsage domain attribute and sends out warning messages for each domain having quota usage greater than a defined percentage threshold. * ----------------------------- Gets the aggregate quota usage for all domains on the server. * ----------------------------- + Notes: Returns all data from the mailbox table (in db.sql), except for the "comment" column. limit - the number of mailboxes to return (0 is default and means all) offset - the starting offset (0, 25, etc) ----------------------------- Notes: numMboxes: total number of mailboxes totalSize: total size of all mailboxes ----------------------------- [...] [...] ...+ Access: domain admin sufficient ----------------------------- ... ...+ ...+ Notes: extra attrs: description zimbraNotes ----------------------------- ... ...+ {apply-config} = 0|1 (1 is default) if {apply-config} is 1, then certain unset attrs on a domain will get their value from the global config. if {apply-config} is 0, then only attributes directly set on the domain will be returned {req-attrs} = comma-seperated list of attrs to return ----------------------------- ... ...+ This call does *not* require an auth token; however when called without an auth token only the following attributes required pre-login are returned. zimbraSkinLogoURL zimbraAdminConsoleLoginURL zimbraWebClientLoginURL zimbraWebClientLoginURLAllowedUA zimbraWebClientLoginURLAllowedIP When called without auth token the domain name/ID are not returned instead 'VALUE-BLOCKED' is emitted, regardless of whether the requested domain exists or not. If the domain does not exist values are returned from the global config object. {apply-config} = 0|1 (1 is default) if {apply-config} is 1, then certain unset attrs on a domain will get their value from the global config. if {apply-config} is 0, then only attributes directly set on the domain will be returned ----------------------------- ...+ + ----------------------------- {value-of-zimbraId} ...+ ...+ Notes: an empty attribute value removes the specified attr ----------------------------- {value-of-zimbraId} ----------------------------- ... ...+ ...+ Notes: extra attrs: description zimbraNotes ----------------------------- {dest-cos-name} {src-cos-id-or-name} ...+ ----------------------------- ... ...+ {req-attrs} = comma-seperated list of attrs to return {cos-attr} = 0 (default) means the attrs applies to any account's that belong to the cos 1 means the attr applies only to the cos object itself ----------------------------- ...+ + ----------------------------- {value-of-zimbraId} ...+ ...+ + Notes: an empty attribute value removes the specified attr ----------------------------- {value-of-zimbraId} {new-cos-name} ...+ ----------------------------- {value-of-zimbraId} Notes: an empty attribute value removes the specified attr ----------------------------- ... ...+ ...+ Notes: extra attrs: description zimbraNotes ----------------------------- ... ...+ {apply-config} = 0|1 (1 is default) by "serviceHostname" will return the server that has zimbraServiceHostname set to the specified value. if {apply-config} is 1, then certain unset attrs on a server will get their value from the global config. if {apply-config} is 0, then only attributes directly set on the server will be returned {req-attrs} = comma-seperated list of attrs to return ----------------------------- You can get all servers defined in the system or you can get all servers that have a particular service enabled (eg, mta, antispam, spell). ...+ + ----------------------------- {value-of-zimbraId} ...+ ...+ ] Note: an empty attribute value removes the specified attr note: this request is by default proxied to the referenced server ----------------------------- {value-of-zimbraId} Note: an empty attribute value removes the specified attr note: this request is by default proxied to the referenced server ----------------------------- ...+ ----------------------------- ...+ ----------------------------- ...+ Notes: an empty attribute value removes the specified attr ----------------------------- * {stat-value}+ Returns server monitoring stats. These are the same stats that are logged to mailboxd.csv. If no element is specified, all server stats are returned. If the stat name is invalid, returns a SOAP fault. ----------------------------- ? ?? 1? ? ? + + + + + Query to retrieve Logger statistics in ZCS 6.0. Use cases: 1 - no elements specified - result: a listing of reporting host names 2 - hostname specified - result: a listing of stat groups for the specified host 3 - hostname and stats specified, text content of stats non-empty - result: a listing of columns for the given host and group 4 - hostname and stats specified, text content empty, startTime/endTime optional - result: all of the statistics for the given host/group are returned, if start and end are specified, limit/expand the timerange to the given setting. if limit=true is specified, attempt to reduce result set to under 500 records ----------------------------- {value}* {timezone-id} timezone id, e.g "America/Los_Angeles" {timezone-display-name} timezone display anme, e.g. "Pacific Standard Time" {date-time} format is number of seconds in 1970, utc time. ----------------------------- [] purges aged messages out of trash, spam, and entire mailbox (if element is omitted, purges all mailboxes on server) ----------------------------- forces immediate recalculation of total mailbox quota usage and all folder unread and size counts Access: domain admin sufficient note: this request is by default proxied to the account's home server ----------------------------- [] -types -ids are optional, however at most ONE may be specified: {ids] = comma-separated list of IDs to re-index. {types} = comma-separated list. Legal values are: conversation|message|contact|appointment|task|note|wiki|document action start - start reindexing status started - success status running - reindexing is already running action status - show reindexing progress status running - returns progress information status idle - reindexing is not running action cancel - cancel reindexing status cancelled - success and returns progress information status idle - reindexing is not running Access: domain admin sufficient note: this request is by default proxied to the account's home server --------------------------- action start - start index compaction status started - success status running - index compaction is already running action status - show index compaction progress status running - index compaction is running status idle - index compaction is not running Access: domain admin sufficient note: this request is by default proxied to the account's home server --------------------------- Notes: maxDocs: Returns total number of docs in this index, including docs not yet flushed (still in the RAM buffer), not counting deletions. deletedDocs: number of deleted docs for the index ----------------------------- the request includes the account ID (uuid) of the target mailbox on success, the response includes the mailbox ID (numeric) of the deleted mailbox the element is left out of the response if no mailbox existed for that account [] Access: domain admin sufficient note: this request is by default proxied to the account's home server ----------------------------- Access: domain admin sufficient note: this request is by default proxied to the account's home server ----------------------------- Runs the server-side unit test suite. If 's are specified, then run the requested tests (instead of the standard test suite). Otherwise the standard test suite is run. [className[#testName[+testName]*]]* { Summary of test execution times and success/failure status } where className is for a class which extends junit.framework.TestCase ----------------------------- All the Check* SOAP calls potentially return the following two things: {code} {message} where: code is one of the following Strings: code description ------- ----------- check.OK everything went ok check.UNKNOWN_HOST unable to resolve a hostname check.CONNECTION_REFUSED connection to a port was refused check.SSL_HANDSHAKE_FAILURE SSL connect problem, most likely untrusted certificate check.COMMUNICATION_FAILURE generic communication failure check.AUTH_FAILED authentication failed. invalid credentials (bad dn/password) check.AUTH_NOT_SUPPORTED authentication flavor not supported. LDAP server probably configured to not allow passwords check.NAME_NOT_FOUND unable to resolve an LDAP name. most likely invalid search base check.INVALID_SEARCH_FILTER invalid ldap search filter check.FAILURE generic failure message is the detailed Java stack trace, used mainly for diagnosotics where the code isn't specific enough. Not user-friendly, but still useful for debugging problems. Any SOAP faults returned indicate a problem with the request itself, not the thing being checked. ---------------------------------------- ... ... ...* ------------------------------------------------------------ ldap ... ... ... ... ...* ...* ...* ...* ... ... ... ... ...* ...* ...* ...* ... ... ... ...* {GAL-action}* ... ...* ...* notes: - zimbraGalMode must be set to ldap, even if you eventually want to set it to "both". - is optional. GAL-action can be autocomplete|search|sync. Default is search. - is ignored if is "sync". - AuthMech can be none|simple|kerberos5. - Default is simple if both BindDn/BindPassword are provided. - Default is none if not both BindDn/BindPassword are provided. - BindDn/BindPassword are required if AuthMech is "simple". - Kerberos5Principal/Kerberos5Keytab are required only if AuthMech is "kerberos5". - zimbraGalSyncLdapXXX attributes are for GAL sync. They are ignored if is not sync. For GAL sync, if a zimbraGalSyncLdapXXX attribute is not set, server will fallback to the corresponding zimbraGalLdapXXX attribute. ------------------------------------------------------------ ldap ... ... ... ... ... ... ... ... ... ...* {dn-computed-from-supplied-binddn-and-name} notes: - zimbraAuthMech must be set to ldap/ad. There is no reason to check zimbra. - zimbraAuthLdapURL must be set - either zimbraAuthLdapBindDn or zimbraAuthLdapSearchFilter must be set The following are optional, and only looked at if zimbraAuthLdapSearchFilter is set: - zimbraAuthLdapSearchBase is optional and defaults to "" - zimbraAuthLdapSearchBind{Dn,Password} are both optional ----------------------------------- Notes: id: ID of volume type: type of volume; 1 = primary message volume 2 = secondary message volume 10 = index volume name: name or description of volume rootPath: absolute path to root of volume, e.g. /opt/zimbra/store compressBlobs: boolean value that specifies whether blobs in this volume are compressed compressionThreshold: long value that specifies the maximum uncompressed file size, in bytes, of blobs that will not be compressed (in other words blobs larger than this threshold are compressed) isCurrent: 1 if the volume is current, 0 if not ----------------------------- ----------------------------- + ----------------------------- ----------------------------- ----------------------------- [] ----------------------------- Notes: type: 1 (primary message), 2 (secondary message) or 10 (index) Each SetCurrentVolumeRequest can set only one current volume type. ----------------------------- * * * * * * * * Notes: Checks for items that have no blob, blobs that have no item, and items that have an incorrect blob size stored in their metadata. If no volumes are specified, all volumes are checked. If no mailboxes are specified, all mailboxes are checked. Blob sizes are checked by default. Set checkSize to 0 to avoid the CPU overhead of uncompressing compressed blobs in order to calculate size. external-flag - boolean indicating if the blob is stored locally in FileBlobStore or in an ExternalStoreManager Blob consistency checking for external blob stores is supported with limitations. The volume element is ignored for external stores. For external blobs the volumeId is always -1 and the path is the locator used by the external store. Unexpected blob detection is only possible if the external store implementation partitions blobs by mailbox. If reportUsedBlobs is set to 1 a complete list of all blobs used by the mailbox(es) is returned. ----------------------------- ... Exports the database data for the given items with SELECT INTO OUTFILE and deletes the items from the mailbox. Exported filenames follow the pattern .txt. The files are written sqlExportDir. When sqlExportDir is not specified, data is not exported. Export is only supported for MySQL. ----------------------------- ... ...+
...+
Notes: dynamic: create a dynamic distribution list extra attrs: description zimbraNotes Access: domain admin sufficient -----------------------------
...
[ + ] {member}+ ...+
Notes: limit - the number of accounts to return (0 is default and means all) offset - the starting offset (0, 25, etc) sort-ascending - whether to sort in ascending order (0/1), 1 is default more-flag = true if more accounts left to return total = total number of distribution lists (not affected by limit/offset) req-attrs = comma-seperated list of attrs to return dynamic = whether this is a dynamic distribution list Access: domain admin sufficient ----------------------------- [...]
...+
Access: domain admin sufficient ----------------------------- {value-of-zimbraId} {member}+ Access: domain admin sufficient Adding existing members is allowed, even if it may result in this request being a no-op because all addrs are already members. ----------------------------- {value-of-zimbraId} {member}+ [{name|id}+] Access: domain admin sufficient Unlike add, remove of a non-existent member causes an exception and no modification to the list. when "account" element is used all aliases as well as main email address of the account will be removed from the DL. Unlike when using "dlm" element, if none of the email addresses that belong to an account referenced in "account" element are members of the DL, no exception is thrown. ----------------------------- {value-of-zimbraId} ...+
...+
Notes: an empty attribute value removes the specified attr Access: domain admin sufficient ----------------------------- {value-of-zimbraId} Access: domain admin sufficient ----------------------------- {value-of-zimbraId} ... Access: domain admin sufficient ----------------------------- {value-of-zimbraId} ... Access: domain admin sufficient ----------------------------- {value-of-zimbraId} {new-DL-name}
...+
Access: domain admin sufficient -----------------------------
...
+ {via-dl-name} = is present if the dl is a member of the returned list because they are either a direct or indirect member of another list that is a member of the returned list. For example, if a dl is a member of engineering@domain.com, and engineering@domain.com is a member of all@domain.com, then
would be returned. ----------------------------- {cluster-name} * * ----------------------------- ----------------------------- ----------------------------- ----------------------------- ----------------------------- []+ ----------------------------- # priority is listed in the global list ... only. # that's because the priority value is relative to other Zimlets in the list. # the same Zimlet may show different priority number depending on what other # Zimlets priorities are. the same Zimlet will show priority 0 if all by itself, # or priority 3 if there are three other Zimlets with higher priority. ... ... ... {req-attrs} = comma-seperated list of attrs to return ----------------------------- # returns the admin extension addon Zimlets. ...+ ----------------------------- [] [] [] ----------------------------- ----------------------------- ...+ ----------------------------- ...+ + Notes: {exclude} can be "none|extension|mail" when exclude="extension" is specified the response returns only mail Zimlets when exclude="mail" is specified the response returns only admin extensions when exclude = "none" both mail and admin zimlets are returned default is "none" ----------------------------- ... ...+ ...+ ----------------------------- ----------------------------- [ if listSessions set: [ ] OR (depends on groupByAccount setting) [ Notes: GetSessionsRequest type = soap|imap|admin refresh = if 1, ignore any cached results and start fresh. limit - the number of sessions to return per page (0 is default and means all) offset - the starting offset (0, 25, etc) sortBy - nameAsc, nameDesc, createdAsc, createdDesc, accessedAsc, accessedDesc more-flag = true if more sessions left to return total = total number of accounts that matched search (not affected by limit/offset) Access: domain admin sufficient (though a domain admin can't specify "domains" as a type) ----------------------------- Note: Calendar resource is a special type of Account. The Create, Delete, Modify, Rename, Get, GetAll, and Search operations are very similar to those of Account. ... ...* ...+ ...+ Notes: name must include domain (uid@name), and domain specified in name must exist a calendar resource does not have a password (you can't login as a resource) Access: domain admin sufficient ----------------------------- {value-of-zimbraId} Access: domain admin sufficient note: this request is by default proxied to the resource's home server ----------------------------- {value-of-zimbraId} ...+ ...+ Notes: an empty attribute value removes the specified attr Access: domain admin sufficient. limited set of attributes that can be updated by a domain admin. note: this request is by default proxied to the resource's home server ----------------------------- {value-of-zimbraId} {new-resource-name} ...+ Access: domain admin sufficient note: this request is by default proxied to the resource's home server ----------------------------- ... ...+ {apply-cos} = 0|1 (1 is default) if {apply-cos} is 1, then COS rules apply and unset attrs on the calendar resource will get their value from the COS. if {apply-cos} is 0, then only attributes directly set on the calendar resource will be returned {req-attrs} = comma-seperated list of attrs to return Access: domain admin sufficient ----------------------------- [...] [...] ...+ Access: domain admin sufficient ----------------------------- ... ...+ Notes: SearchCalendarResourcesRequest limit - the number of calendar resources to return (0 is default and means all) offset - the starting offset (0, 25, etc) domain - the domain name to limit the search to applyCos - whether or not (0/1) to apply the COS policy to calendar resource. specify 0 if only requesting attrs that aren't inherited from COS attrs - comma-seperated list of attrs to return ("displayName", "zimbraId", "zimbraAccountStatus") sortBy - name of attribute to sort on. default is the calendar resource name. sortAscending - whether to sort in ascending order (0/1), 1 is default more-flag = true if more calendar resources left to return search-total = total number of calendar resources that matched search (not affected by limit/offset) searchFilter: See SearchCalendarResourcesRequest section in soap.txt. Access: domain admin sufficient ----------------------------- Get a count of all the mail queues by counting the number of files in the queue directories. Note that the admin server waits for queue counting to complete before responding - client should invoke requests for different servers in parallel. ----------------------------- Summarize and/or search a particular mail queue on a particular server. The admin SOAP server initiates a MTA queue scan (via ssh) and then caches the result of the queue scan. To force a queue scan, specify scan=1 in the request. The response has two parts. - elements summarize queue by various types of data (sender addresss, recipient domain, etc). Only the deferred queue has error summary type. - elements list the various queue items that match the requested query. The stale-flag in the response means that since the scan, some queue action was done and the data being presented is now stale. This allows us to let the user dictate when to do a queue scan. The scan-flag in the response indicates that the server has not completed scanning the MTA queue, and that this scan is in progress, and the client should ask again in a little while. The more-flag in the response indicates that more qi's are available past the limit specified in the request. # OR's all values # AND's all fields + + + Example of qs node is: Example of qi nodes: ----------------------------- Command to act on invidual queue files. This proxies through to postsuper. list-of-ids can be ALL. {list-of-ids|} || { # just like GetMailQueue } - response is same as GetMailQueueResponse above. ----------------------------- Command to invoke postqueue -f. All queues cached in the server are are stale after invoking this because this is a global operation to all the queues in a given server. ----------------------------- [Deprecated since 7.0] Initializes the Notebook account used for public folder and templates. {template-dir} is a directory on the server that contains the Wiki templates. {template-folder} is a folder in the Mailbox that the templates are being imported to. The default value of {template-folder} is "Template" folder. When the element template is present in the request, the server will populate the template directory of the account with the template files in the directory. If the optional element domain is present, it will create the domain level wiki account used for public wiki folder for the domain. If the optional element account is present, the value will be used to create the account, and then sets either zimbraNotebookDefaultAccount or zimbraNotebookDomainAccount LDAP attribute. [] [...] [...] [...] ----------------------------- {account-id} My POP3 Account TRUE pop.myisp.com 110 mylogin mypassword {folder-id} {value}+ Creates a data source that imports mail items into the specified folder. Currently the only type supported is pop3. every attribute value is returned except password. note: this request is by default proxied to the account's home server --------------------------- {account-id} {value}+ ... Returns all data sources defined for the given mailbox. For each data source, every attribute value is returned except password. note: this request is by default proxied to the account's home server --------------------------- {account-id} {value}+ Changes attributes of the given data source. Only the attributes specified in the request are modified. To change the name, specify "zimbraDataSourceName" as an attribute. note: this request is by default proxied to the account's home server --------------------------- {account-id} Deletes the given data source. note: this request is by default proxied to the account's home server --------------------------- + // list of email addresses, or "all" for all // accounts on this mailbox server // fixup rules Fix timezone definitions in appointments and tasks to reflect changes in daylight savings time rules in various timezones. --------------------------- The WaitSet APIs are now in the urn:zimbraMail namespace, and are documented in soap-waitset.txt ***See soap-waitset.txt for WaitSet API documentation*** --------------------------- # returns admin saved searches. * If no is present server will return all saved searches. {{search-query}}* --------------------------- # modifies admin saved searches. # returns the admin saved searches. {{search-query}}+ If {search-query} is empty => delete the search if it exists If {search-name} already exists => replace with new {search-query} If {search-name} does not exist => save as a new search ----------------------------- # Changes logging settings on a per-account basis. ... + Adds a custom logger for the given account and log category. The logger stays in effect only during the lifetime of the current server instance. If the request is sent to a server other than the one that the account resides on, it is proxied to the correct server. If the category is "all", adds a custom logger for every category for the given user. [...] [] Removes one or more custom loggers. If both the account and logger are specified, removes the given account logger if it exists. If only the account is specified or the category is "all", removes all custom loggers from that account. If only the logger is specified, removes that custom logger from all accounts. If neither element is specified, removes all custom loggers from all accounts on the server that receives the request. ... * Returns custom loggers created for the given account since the last server start. If the request is sent to a server other than the one that the account resides on, it is proxied to the correct server. + * Returns all account loggers that have been created on the given server since the last server start. ----------------------------- # Check existence of one or more directories and optionally create them. + path = full path to the directory create = default 0; if 1, create the directory if it doesn't exist + // path is writable, or not ----------------------------- # Flush memory cache for specified LDAP or directory scan type/entries [value+] allServers: 0 (default) = flush cache only on the local server 1 = flush cache on all servers (this can take on systems with lots of servers) Directory scan caches(source of data is on local disk of the server): skin|locale LDAP caches(source of data is LDAP): account|cos|domain|server|zimlet For LDAP caches, one or more optional can be specified. If (s) are specified, only the specified entries will be flushed. If no is given, all enties of the type will be flushed from cache. type can contain a combination of skin, locale and zimlet. E.g. type='skin,locale,zimlet' or type='zimletskin' ----------------------------- # count number of accounts by cos in a domain, ... {account-count}+ Note, it doesn't include any account with zimbraIsSystemResource=TRUE, nor does it include any calendar resources. e.g. 123 456 789 55 ----------------------------- # count number of objects. # Returns number of objects of requested type. [...] [...] {count-objects-type} = userAccount | account | alias | dl | calresource | domain | cos | server | accountOnUCService | cosOnUCService | domainOnUCService Note: For account/alias/dl, if a is specified, only entries on the specified domain are counted. If no domain is specified, entries on all domains are counted. For accountOnUCService/cosOnUCService/domainOnUCService, is required, and cannot be specified. --------------------------------------------------------------------------- # Get server's network interfaces. Returns IP addresses and net masks # This call will use zmrcd to call /opt/zimbra/libexec/zmserverips ... ip address network mask * --------------------------------------------------------------------------- # free/busy providers []+ --------------------------------------------------------------------------- # if the optional element is present in the request, the response # contains the requested provider only. if no provider is supplied in the # request, the response contains all the providers. [] [ []+ ]+ --------------------------------------------------------------------------- # the request must include either or # when is specified in the request, the server will push # the free/busy for all the accounts in the domain to the configured # free/busy providers. # when list is specified, the server will push the free/busy # for the listed accounts to the providers. [] []+ ---------------------------------------- # purges the queue for the given freebusy provider on the current host. [] ---------------------------------------- ... ...* ---------------------------------------- ... Returns all locales defined in the system. This is the same list returned by java.util.Locale.getAvailableLocales(), sorted by display name (name attribute). ---------------------------------------- Access: domain admin sufficient Purge the calendar cache for an account. note: this request is by default proxied to the account's home server ---------------------------------------- [] ... Iterate through all folders of the owner's mailbox and return shares that match grantees specified by the specifier. e.g. ] user1@test.com returns all shares owned by user1@test.com that are shared with dl@test.com. []]+ ---------------------------- ... ...+ ... Notes: - if the referenced account is not found it will be created. - the identifier used in name attr is used for SyncGal and SearchGal. - name attribute is for the name of the data source. - if folder attr is not present it'll default to Contacts folder. - passed in attrs in are used to initialize the gal data source. - server is a required parameter and specifies the mailhost on which this account resides. example for creating gal sync account for Zimbra LDAP server. gal@mydomain.com example for creating domain gal sync account. gal@mydomain.com ldap://ldap.mydomain.com TRUE cn=users simple uid=admin,cn=users password (&(mail=*)(objectClass=user)) whenChanged,modifyTimeStamp=modifyTimeStamp whenCreated,createTimeStamp=createTimeStamp zimbraMailDeliveryAddress,zimbraMailAlias,mail=email,email2,email3,email4,email5,email6,email7,email8,email9,email10,email11,email12,email13,email14,email15,email16 Access: domain admin sufficient ---------------------------- ... ...+ Notes: - Add additional data sources to the existing galsync account. - non-existing account causes an exception. - name attribute is for the name of the data source. Access: domain admin sufficient ---------------------------- + + Notes: If fullSync is set to false (or unset) the default behavior is trickle sync which will pull in any new contacts or modified contacts since last sync. If fullSync is set to true, then the server will go through all the contacts that appear in GAL, and resolve deleted contacts in addition to new or modified ones. If reset attribute is set, then all the contacts will be populated again, regardless of the status since last sync. Reset needs to be done when there is a significant change in the configuration, such as filter, attribute map, or search base. ---------------------------- ... Remove its zimbraGalAccountId from the domain, then deletes the account. ---------------------------- Reloads the memcached client configuration on this server. Memcached client layer is reinitialized accordingly. Call this command after updating memcached server list, for example. ---------------------------- Returns the memcached client configuration on a mailbox server. ---------------------------- ---------------------------- A request that does nothing and always returns nothing. Used to keep an admin session alive. ---------------------------- {attrs-to-return} = comma-seperated list of attrs to return {entry-type} = comma-seperated list of entry types. Attributes on the specified entry types will be returned. valid entry types: account,alias,distributionList,cos,globalConfig,domain,server,mimeEntry,zimletEntry, calendarResource,identity,dataSource,pop3DataSource,imapDataSource,rssDataSource, liveDataSource,galDataSource,signature,xmppComponent,aclTarget Only one of attrs or entryTypes can be specified. If both are specified, INVALID_REQUEST will be thrown. If neither is specified, all attributes will be returned. + ---------------------------- ... ... [...] ...+ ---------------------------- ... [...] [...] ...+ ...+ * Notes: - name to fill the auto provisioning search template configured on the domain - query string should be an LDAP-style filter string (RFC 2254) only one of or can be provided. If neither is provided, the configured search filter for auto provision will be used. maxResults = maximum results that the backend will attempt to fetch from the directory before returning a account.TOO_MANY_SEARCH_RESULTS error. limit - the number of accounts to return per page (0 is default and means all) offset - the starting offset (0, 25, etc) domain - the Zimbra domain name keyAttr - name of attribute for the key. Value of the key attribute will appear in the element in the response. It is recommended to pick a key attribute that is single-valued and can unique identify an entry in the external auto provision directory. If the key attribute contains multiple values then multiple elements will appear in the response. Entries are returned in ascending key order. attrs - comma-seperated list of attrs to return refresh - whether to always re-search in LDAP even when cached entries are available. 0 is default. more-flag = true if more entries left to return search-total = total number of accounts that matched search (not affected by limit/offset) ----------------------------- Under normal situations, the EAGER auto provisioning task(thread) should be started/stopped automatically by the server when appropriate. The task should be running when zimbraAutoProvPollingInterval is not 0 and zimbraAutoProvScheduledDomains is not empty. The task should be stopped otherwise. This API is to manually force start/stop or query status of the EAGER auto provisioning task. It is only for diagnosis purpose and should not be used under normal situations. action start - start EAGER auto provisioning task status started - success status running - EAGER auto provisioning task is already running action status - show EAGER auto provisioning task status status running - EAGER auto provisioning task is running status idle - EAGER auto provisioning task is not running action stop - stop EAGER auto provisioning task status stopped - success status idle - EAGER auto provisioning task is not running ----------------------------- The system retention policy SOAP APIs allow the administrator to edit named system retention policies that users can apply to folders and tags. See soap.txt for more details about the element structure. [...] * * [...] | [...] [...] If "cos" element is specified the opeartion create/modify/get/delete gets applied on Cos otherwise globalConfig. ----------------------------- + ----------------------------- ... ...+ ...+ ----------------------------- ... ...+ {req-attrs} = comma-seperated list of attrs to return ----------------------------- ...+ + ----------------------------- {value-of-zimbraId} ...+ ...+ ] ----------------------------- {value-of-zimbraId} ---------------------------- {value-of-zimbraId} {new-name} ...+ ----------------------------- Verify basic StoreManager functionality and performance. To be used by integrators during StoreManager development. numberOfBlobs - number of blobs to create. Defaults to 1000 if not specified. fileSize - size of each blob file in bytes. Defaults to 1024 if not specified. All times reported in response are the total elapsed time for all blobs. storeManagerClass - Java class name for the currently deployed StoreManager implementation incomingTime - time (ms) for the store incoming operation stageTime - time (ms) for the stage operation linkTime - time (ms) for the link operation fetchTime - time (ms) for the fetch operation deleteTime - time (ms) for the delete operation ----------------------------- + ----------------------------- * * * ----------------------------- ----------------------------- allServers: 0 (default) = reset ldap client only on the local server 1 = reset ldap client all servers (this can take on systems with lots of servers) ---------------------------- ... Access: - domain admin sufficient. - requires moveAccountMailbox grant on target account. - requires moveCalendarResourceMailbox grant on target calendar resource. - requires moveMailboxFromServer grant on target server note: this request is by default proxied to the account's home server --------------------------- { {account-id | name} | {server-id | name} | {server-id | name} | {server-id | name | serviceHostname} } { {account-id | name} | {server-id | name} | {server-id | name} | {server-id | name | serviceHostname} } * ... {test} [test] ... [ ... [...] [...] ] [ ... {action} [action] ... ] { {account-id | name} | {server-id | name} | {server-id | name} | {server-id | name | serviceHostname} } ... * Default value for "active" is 1. Type: type="{before | after}" before = admin sieve rule BEFORE after = admin sieve rule AFTER Tests: {method}+ Each test has the following optional attributes: * "negative": specifies a "not" condition for that test * "index": specifies a guaranteed order for the test and action elements Actions: ... {body-template} {body-template} ? {method} {this is reject message} {this is ereject message} {this is log message} Each action has an optional "index" attribute which specifies a guaranteed order for the action elements. stringComparison values: is, contains, matches numberComparison values: over, under dateComparison values: before, after size values are in bytes (no suffix), kilobytes (50K), megabytes (50M) or gigabytes (2G) : date values are are truncated to the day. Hours, minutes, and seconds are ignored. index is an integer, used to maintain the order of filter tests and actions. method values: anyrequest, anyreply, publish, request, reply, add, cancel, refresh, counter, declinecounter. anyrequest matches publish, request, add, cancel, declinecounter. anyreply matches reply, refresh, counter. If no methods are specified, the test returns true for all invites. : behaves just like , but matches headers on all MIME parts, instead of just the top-level headers. : day-of-week-indices - 0=Sunday, 6=Saturday body-template/subject-template: Can contain variables such as ${SUBJECT}, ${TO}, ${CC}, etc (basically ${any-header-name}; case not important), plus ${BODY} (text body of the message). origHeaders: Specifies list of headers to be copied from the original message to the notification message. Value "*" implies that all headers need to be copied. : this test is preferred instead of for headers that contain email addresses. The default value of the part attribute is "all" which implies comparison against the full email address. , , and all check the "X-Zimbra-Community-Notification-Type" header against predefined groups of values. The groups are: communityRequestsTest: bb196c30-fad3-4ad8-a644-2a0187fc5617 - Friendships Requests 3772ef23-6aa0-4a22-9e88-a4313c37ebe6 - Group Membership Request 1b0500d2-c789-421e-a25b-3ab823af53be - Forums Requiring Moderation communityContentTest: 6a3659db-dec2-477f-981c-ada53603ccbb - Likes 94dc0d37-3a65-43de-915d-d7d62774b576 - Ratings 4876d7ce-b48c-4a08-8cd9-872342c5bdf8 - Blog Post Comment 82e1d0b4-854e-43c9-85d7-dea7d4dec949 - Wiki Page Update 8e627c29-8602-4110-877d-0232e4ea2fd5 - Media Comment be997a7a-5026-435f-8ea5-4fe3d90a6ba9 - New Media in Owned Gallery eea4ccbb-6e07-4a6d-9bb6-8b02f060f79c - Forum Thread Awaiting Moderation Notification 352a702d-2a77-4307-9e9e-c564426e8cc8 - Forum Thread Subscription Notification 0e952633-fa46-448d-b1aa-bb6c60a388fb - Forum Reply Awaiting Moderation Notification e3df1b21-ac81-4eb3-8ab6-69dc049f5684 - Forum Replies f8c93cd5-d40e-461d-b13a-b02e92bfcbbf - Forum Thread Verified Answers communityConnectionsTest: 194d3363-f5a8-43b4-a1bd-92a95f6dd76b - Friendships 1cee0f92-3650-4110-9f0b-69b0e175914d - Mentions bb196c30-fad3-4ad8-a644-2a0187fc5617 - Group Membership 328e5139-d759-405c-98da-91cd25bcc80c - Group Mentions Nested Rules: In addition to the normal set of tests and actions, a filter rule may contain one or more layers of nested rules. If nested rules are specified the filter action(s) must be specified on the innermost level. All conditions are evaluated and if true the innermost action(s) are executed. Note that as of ZCS 8.5 nested filter rules are supported in the SOAP API but not in the end user filter preferences UI. Notify action: generates the Zimbra specific format of the notify filter rule. generates the RFC 5436 and 5436 compliant notify filter rule. is available only when the global config 'zimbraMailSieveNotifyActionRFCCompliant' key is set to TRUE (if this key is set to TRUE, the Zimbra-format notify action will fail to execute, and vise versa). {from} : The from address which is displayed at the From header of the notification message. {subject} : The subject of the notification message. {method} : "mailto:" url. Please refer to the RFC 5436 for more details. {importance} and {options} : Reserved. -------------------------- Corresponding API for outgoing/sent email filters (message structure same as above): ... ... ...