zimbra_wsdl 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +18 -0
- data/Gemfile +4 -0
- data/LICENSE +22 -0
- data/README.md +70 -0
- data/Rakefile +10 -0
- data/doc/ZPL.txt +492 -0
- data/doc/soap-admin.txt +2507 -0
- data/doc/soap-calendar.txt +1357 -0
- data/doc/soap-context-extension.txt +58 -0
- data/doc/soap-im.txt +570 -0
- data/doc/soap-mobile.txt +136 -0
- data/doc/soap-right.txt +806 -0
- data/doc/soap-waitset.txt +347 -0
- data/doc/soap-wiki.txt +290 -0
- data/doc/soap.txt +3554 -0
- data/examples/savon.rb +27 -0
- data/examples/zimbra_authentication_example.rb +3 -0
- data/lib/zimbra.wsdl +1144 -0
- data/lib/zimbra_wsdl/version.rb +3 -0
- data/lib/zimbra_wsdl.rb +19 -0
- data/spec/minitest_helper.rb +8 -0
- data/spec/zimbra_wsdl_spec.rb +11 -0
- data/zimbra_wsdl.gemspec +19 -0
- metadata +87 -0
data/doc/soap-admin.txt
ADDED
@@ -0,0 +1,2507 @@
|
|
1
|
+
-----------------------------
|
2
|
+
urn:zimbraAdmin
|
3
|
+
-----------------------------
|
4
|
+
|
5
|
+
Attributes for all commands can have multiple values:
|
6
|
+
|
7
|
+
<a n="name1">{value}</a>
|
8
|
+
<a n="name2">{value}</a>
|
9
|
+
<a n="name1">{value}</a>
|
10
|
+
|
11
|
+
Note that name1 appears twice.
|
12
|
+
|
13
|
+
When updating multiple attributes, you need to specify all the old values at the same time you specify new ones.
|
14
|
+
|
15
|
+
----------------------------
|
16
|
+
<AuthRequest xmlns="urn:zimbraAdmin">
|
17
|
+
[<name>...</name>]
|
18
|
+
[<account by="name|id|foreignPrincipal">...</account>]
|
19
|
+
<password>...</password>
|
20
|
+
</AuthRequest>
|
21
|
+
|
22
|
+
Only one of <name> or <account> can/must be specified.
|
23
|
+
|
24
|
+
<AuthResponse>
|
25
|
+
<authToken>...</authToken>
|
26
|
+
<lifetime>...</lifetime>
|
27
|
+
</AuthResponse>
|
28
|
+
|
29
|
+
Note: Only works with admin/domain-admin accounts
|
30
|
+
|
31
|
+
Access: domain admin sufficient
|
32
|
+
|
33
|
+
----------------------------
|
34
|
+
<DelegateAuthRequest xmlns="urn:zimbraAdmin" [duration="{duration}"]>
|
35
|
+
<account by="id|name">...</account>
|
36
|
+
</DelegateAuthRequest>
|
37
|
+
|
38
|
+
<DelegateAuthResponse>
|
39
|
+
<authToken>...</authToken>
|
40
|
+
<lifetime>...</lifetime>
|
41
|
+
</DelegateAuthResponse>
|
42
|
+
|
43
|
+
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,
|
44
|
+
and the requesting admin's id will be stored in the auth token for auditing purposes.
|
45
|
+
|
46
|
+
{duration} = lifetime in seconds of the newly-created authtoken. defaults to 1 hour. Can't be longer then zimbraAuthTokenLifetime.
|
47
|
+
|
48
|
+
----------------------------
|
49
|
+
|
50
|
+
<CreateAccountRequest>
|
51
|
+
<name>...</name>
|
52
|
+
<password>...</password>*
|
53
|
+
<a n="attr-name">...</a>+
|
54
|
+
</CreateAccountRequest>
|
55
|
+
|
56
|
+
<CreateAccountResponse>
|
57
|
+
<account name="{name}" id="{id}">
|
58
|
+
<a n="...">...</a>+
|
59
|
+
</account>
|
60
|
+
</CreateAccountResponse>
|
61
|
+
|
62
|
+
Notes:
|
63
|
+
|
64
|
+
accounts without passwords can't be logged into
|
65
|
+
|
66
|
+
name must include domain (uid@name), and domain specified in name must exist
|
67
|
+
|
68
|
+
default value for zimbraAccountStatus is "active"
|
69
|
+
|
70
|
+
Access: domain admin sufficient
|
71
|
+
|
72
|
+
-----------------------------
|
73
|
+
|
74
|
+
<GetAccountRequest [applyCos="{apply-cos}"] [attrs="{req-attrs}"]>
|
75
|
+
<account by="id|name|foreignPrincipal">...</account>
|
76
|
+
</GetAccountRequest>
|
77
|
+
|
78
|
+
<GetAccountResponse>
|
79
|
+
<account name="{name}" id="{id}">
|
80
|
+
<a n="...">...</a>+
|
81
|
+
</account>
|
82
|
+
</GetAccountResponse>
|
83
|
+
|
84
|
+
{apply-cos} = 0|1 (1 is default)
|
85
|
+
|
86
|
+
if {apply-cos} is 1, then COS rules apply and unset attrs on an account will get their value from the COS.
|
87
|
+
|
88
|
+
if {apply-cos} is 0, then only attributes directly set on the account will be returned
|
89
|
+
|
90
|
+
{req-attrs} = comma-seperated list of attrs to return
|
91
|
+
|
92
|
+
Access: domain admin sufficient
|
93
|
+
|
94
|
+
note: this request is by default proxied to the account's home server
|
95
|
+
|
96
|
+
-----------------------------
|
97
|
+
|
98
|
+
<GetAccountInfoRequest>
|
99
|
+
<account by="id|name">...</account>
|
100
|
+
</GetAccountInfoRequest>
|
101
|
+
|
102
|
+
<GetAccountInfoResponse>
|
103
|
+
<name>{account-name}</name>
|
104
|
+
<a n="{name}">{value}</a>+
|
105
|
+
<soapURL>{mail-url}</soapURL>+
|
106
|
+
<adminSoapURL>{mail-url}</adminSoapURL>
|
107
|
+
</GetInfoResponse>
|
108
|
+
|
109
|
+
{account-name} = email address (user@domain)
|
110
|
+
|
111
|
+
{attrs} = account attrs. Currently only two attrs are returned:
|
112
|
+
|
113
|
+
zimbraId - the unique UUID of the zimbra account
|
114
|
+
zimbraMailHost - the server on which this user's mail resides
|
115
|
+
|
116
|
+
{mail-url} = URL to talk to for soap service for this account. i.e:
|
117
|
+
|
118
|
+
http://server:7070/service/soap/
|
119
|
+
|
120
|
+
Multiple URLs can be returned if both http and https (SSL) are enabled. If only one of the two is enabled,
|
121
|
+
the only one URL will be returned.
|
122
|
+
|
123
|
+
Access: domain admin sufficient
|
124
|
+
|
125
|
+
-----------------------------
|
126
|
+
|
127
|
+
<GetAccountMembershipRequest>
|
128
|
+
<account by="id|name|foreignPrincipal">...</account>
|
129
|
+
</GetAccountMembershipRequest>
|
130
|
+
|
131
|
+
<GetAccountMembershipResponse>
|
132
|
+
<dl name="{name}" id="{id}" via="{via-dl-name}">
|
133
|
+
<a n="zimbraIsAdminGroup">...</a>+
|
134
|
+
</dl>+
|
135
|
+
</GetAccountMembershipResponse>
|
136
|
+
|
137
|
+
{via-dl-name} = is present if the account is a member of the returned list because they are either a direct
|
138
|
+
or indirect member of another list that is a member of the returned list. For example,
|
139
|
+
if a user is a member of engineering@domain.com, and engineering@domain.com is a member of all@domain.com,
|
140
|
+
then <dl name="all@domain.com" ... via="engineering@domain.com"/> would be returned.
|
141
|
+
|
142
|
+
|
143
|
+
-----------------------------
|
144
|
+
|
145
|
+
<GetAllAdminAccountsRequest [applyCos="{apply-cos}"]/>
|
146
|
+
|
147
|
+
<GetAllAdminAccountsResponse>
|
148
|
+
<account name="{name}" id="{id}">
|
149
|
+
<a n="...">...</a>+
|
150
|
+
</account>
|
151
|
+
</GetAllAdminAccountsResponse>
|
152
|
+
|
153
|
+
-----------------------------
|
154
|
+
|
155
|
+
<ModifyAccountRequest>
|
156
|
+
<id>{value-of-zimbraId}</id>
|
157
|
+
<a n="...">...</a>+
|
158
|
+
</ModifyAccountRequest>
|
159
|
+
|
160
|
+
<ModifyAccountResponse>
|
161
|
+
<account name="{name}" id="{id}">
|
162
|
+
<a n="...">...</a>+
|
163
|
+
</account>
|
164
|
+
</ModifyAccountResponse>
|
165
|
+
|
166
|
+
Notes:
|
167
|
+
|
168
|
+
an empty attribute value removes the specified attr
|
169
|
+
|
170
|
+
Access: domain admin sufficient. limited set of attributes that can be updated by a domain admin.
|
171
|
+
|
172
|
+
note: this request is by default proxied to the account's home server
|
173
|
+
|
174
|
+
-----------------------------
|
175
|
+
|
176
|
+
<RenameAccountRequest>
|
177
|
+
<id>{value-of-zimbraId}</id>
|
178
|
+
<newName>{new-account-name}</newName>
|
179
|
+
</RenameAccountRequest>
|
180
|
+
|
181
|
+
<RenameAccountResponse>
|
182
|
+
<account name="{name}" id="{id}">
|
183
|
+
<a n="...">...</a>+
|
184
|
+
</account>
|
185
|
+
</RenameAccountResponse>
|
186
|
+
|
187
|
+
Access: domain admin sufficient
|
188
|
+
|
189
|
+
note: this request is by default proxied to the account's home server
|
190
|
+
|
191
|
+
-----------------------------
|
192
|
+
|
193
|
+
<DeleteAccountRequest>
|
194
|
+
<id>{value-of-zimbraId}</id>
|
195
|
+
</DeleteAccountRequest>
|
196
|
+
|
197
|
+
<DeleteAccountResponse/>
|
198
|
+
|
199
|
+
Deletes the account with the given id. If the request is sent
|
200
|
+
to the server on which the mailbox resides, the mailbox is
|
201
|
+
deleted as well.
|
202
|
+
|
203
|
+
Access: domain admin sufficient
|
204
|
+
|
205
|
+
note: this request is by default proxied to the account's home server
|
206
|
+
|
207
|
+
-----------------------------
|
208
|
+
|
209
|
+
<SetPasswordRequest>
|
210
|
+
<id>{value-of-zimbraId}</id>
|
211
|
+
<newPassword>...</newPassword>
|
212
|
+
</SetPasswordRequest>
|
213
|
+
|
214
|
+
<SetPasswordResponse>
|
215
|
+
[<message>...</message>]
|
216
|
+
</SetPasswordResponse>
|
217
|
+
|
218
|
+
Access: domain admin sufficient
|
219
|
+
|
220
|
+
<message> : If the password had violated any policy, it is returned in the
|
221
|
+
<message> element, and the password is still set successfully.
|
222
|
+
|
223
|
+
note: this request is by default proxied to the account's home server
|
224
|
+
|
225
|
+
-----------------------------
|
226
|
+
|
227
|
+
<CheckPasswordStrengthRequest>
|
228
|
+
<id>{value-of-zimbraId}</id>
|
229
|
+
<password>...</password>
|
230
|
+
</CheckPasswordStrengthRequest>
|
231
|
+
|
232
|
+
<CheckPasswordStrengthResponse/>
|
233
|
+
|
234
|
+
Access: domain admin sufficient
|
235
|
+
|
236
|
+
note: this request is by default proxied to the account's home server
|
237
|
+
|
238
|
+
-----------------------------
|
239
|
+
|
240
|
+
<AddAccountAliasRequest>
|
241
|
+
<id>{value-of-zimbraId}</id>
|
242
|
+
<alias>...</alias>
|
243
|
+
</AddAccountAliasRequest>
|
244
|
+
|
245
|
+
<AddAccountAliasResponse/>
|
246
|
+
|
247
|
+
Access: domain admin sufficient
|
248
|
+
|
249
|
+
note: this request is by default proxied to the account's home server
|
250
|
+
|
251
|
+
-----------------------------
|
252
|
+
|
253
|
+
<RemoveAccountAliasRequest>
|
254
|
+
<id>{value-of-zimbraId}</id>
|
255
|
+
<alias>...</alias>
|
256
|
+
</RemoveAccountAliasRequest>
|
257
|
+
|
258
|
+
<RemoveAccountAliasResponse/>
|
259
|
+
|
260
|
+
Access: domain admin sufficient
|
261
|
+
|
262
|
+
note: this request is by default proxied to the account's home server
|
263
|
+
|
264
|
+
-----------------------------
|
265
|
+
NOTE: SearchAccountsRequest is deprecated. See SearchDirectoryRequest.
|
266
|
+
|
267
|
+
<SearchAccountsRequest [limit="..."] [offset="..."] [domain="{domain-name}"] [applyCos="{apply-cos}"]
|
268
|
+
[attrs="a1,a2,a3"] [sortBy="{sort-by}"] [sortAscending="{sort-ascending}"] [types="{type}"]>
|
269
|
+
<query>...</query>
|
270
|
+
</SearchAccountsRequest>
|
271
|
+
|
272
|
+
<SearchAccountsResponse more="{more-flag}" [searchTotal="{search-total}"]>
|
273
|
+
<account name="{name}" id="{id} isExternal="1|0"">
|
274
|
+
<a n="...">...</a>+
|
275
|
+
</account>
|
276
|
+
<alias name="{name}" id="{id}">
|
277
|
+
<a n="...">...</a>+
|
278
|
+
</alias>
|
279
|
+
<dl name="{name}" id="{id}">
|
280
|
+
<a n="...">...</a>+
|
281
|
+
</dl>
|
282
|
+
</SearchAccountsResponse>
|
283
|
+
|
284
|
+
Notes:
|
285
|
+
SearchAccountsRequest
|
286
|
+
<query> - query string should be an LDAP-style filter string (RFC 2254)
|
287
|
+
limit - the number of accounts to return (0 is default and means all)
|
288
|
+
offset - the starting offset (0, 25, etc)
|
289
|
+
domain - the domain name to limit the search to
|
290
|
+
applyCos - whether or not (0/1) to apply the COS policy to account. specify 0 if only
|
291
|
+
requesting attrs that aren't inherited from COS
|
292
|
+
applyConfig - whether or not (0/1) to apply the global config attrs to domain. specify 0 if only
|
293
|
+
requesting attrs that aren't inherited from global config
|
294
|
+
attrs - comma-seperated list of attrs to return ("displayName", "zimbraId", "zimbraAccountStatus")
|
295
|
+
sortBy - name of attribute to sort on. default is the account name.
|
296
|
+
sortAscending - whether to sort in ascending order (0/1), 1 is default
|
297
|
+
more-flag = true if more accounts left to return
|
298
|
+
search-total = total number of accounts that matched search (not affected by limit/offset)
|
299
|
+
types = comma-separated list of types to return. legal values are:
|
300
|
+
accounts|distributionlists|aliases|resources|domains
|
301
|
+
(default is accounts)
|
302
|
+
|
303
|
+
SearchAccountsResponse
|
304
|
+
isExternal: whether the account's zimbraMailTranport points to the designated protocol(lmtp) and server(home server of the account).
|
305
|
+
|
306
|
+
Access: domain admin sufficient (a domain admin can't specify "domains" as a type)
|
307
|
+
|
308
|
+
-----------------------------
|
309
|
+
|
310
|
+
<AutoCompleteGalRequest domain="{domain}" [type="{type}"] limit="limit-returned">
|
311
|
+
<name>...</name>
|
312
|
+
</AutoCompleteGalRequest>
|
313
|
+
|
314
|
+
<AutoCompleteGalResponse more="{more}" [tokenizeKey="{tokenize-key-op}"]>
|
315
|
+
<cn>...</cn>*
|
316
|
+
</AutoCompleteGalResponse>
|
317
|
+
|
318
|
+
{limit} = an integer specifying the maximum number of results to return
|
319
|
+
|
320
|
+
{type} = type of addresses to auto-complete on
|
321
|
+
"account" for regular user accounts, aliases and distribution lists
|
322
|
+
"resource" for calendar resources
|
323
|
+
"all" for combination of both types
|
324
|
+
if omitted, defaults to "accounts"
|
325
|
+
|
326
|
+
{more-flag} = 1 if the results were truncated.
|
327
|
+
|
328
|
+
{tokenize-key-op} = and|or
|
329
|
+
- Not present if the search key was not tokenized.
|
330
|
+
- Some clients backtrack on GAL results assuming the results of a more
|
331
|
+
specific key is the subset of a more generic key, and it checks cached
|
332
|
+
results instead of issuing another SOAP request to the server.
|
333
|
+
If search key was tokenized and expanded with AND or OR, this cannot
|
334
|
+
be assumed.
|
335
|
+
|
336
|
+
Notes: admin verison of mail equiv. Used for testing via zmprov.
|
337
|
+
|
338
|
+
-----------------------------
|
339
|
+
<SearchGalRequest [type="{type}"] [limit="..."]>
|
340
|
+
<name>...</name>
|
341
|
+
</SearchGalRequest>
|
342
|
+
|
343
|
+
<SearchGalResponse more="{more}" [tokenizeKey="{tokenize-key-op}"]>
|
344
|
+
<cn>...</cn>*
|
345
|
+
</SearchGalResponse>
|
346
|
+
|
347
|
+
{more-flag} = 1 if the results were truncated.
|
348
|
+
|
349
|
+
{tokenize-key-op} = and|or
|
350
|
+
- Not present if the search key was not tokenized.
|
351
|
+
- Some clients backtrack on GAL results assuming the results of a more
|
352
|
+
specific key is the subset of a more generic key, and it checks cached
|
353
|
+
results instead of issuing another SOAP request to the server.
|
354
|
+
If search key was tokenized and expanded with AND or OR, this cannot
|
355
|
+
be assumed.
|
356
|
+
|
357
|
+
{type} = type of addresses to search
|
358
|
+
"account" for regular user accounts, aliases and distribution lists
|
359
|
+
"resource" for calendar resources
|
360
|
+
"all" for combination of both types
|
361
|
+
if omitted, defaults to "all"
|
362
|
+
|
363
|
+
Notes: admin verison of mail equiv. Used for testing via zmprov.
|
364
|
+
|
365
|
+
-----------------------------
|
366
|
+
|
367
|
+
<SearchDirectoryRequest [limit="..."] [offset="..."] [domain="{domain-name}"] [applyCos="{apply-cos}"] [maxResults="..."]
|
368
|
+
[attrs="a1,a2,a3"] [sortBy="{sort-by}"] [sortAscending="{sort-ascending}"] [types="{type}"]>
|
369
|
+
<query>...</query>
|
370
|
+
</SearchDirectoryRequest>
|
371
|
+
|
372
|
+
<SearchDirectoryResponse more="{more-flag}" [searchTotal="{search-total}"]>
|
373
|
+
<account name="{name}" id="{id}" isExternal="1|0">
|
374
|
+
<a n="...">...</a>+
|
375
|
+
</account>*
|
376
|
+
<alias name="{name}" id="{id} type="account|distributionlist|resource" targetName={target-name}">
|
377
|
+
<a n="...">...</a>+
|
378
|
+
</alias>*
|
379
|
+
<dl name="{name}" id="{id}>
|
380
|
+
<a n="...">...</a>+
|
381
|
+
</dl>*
|
382
|
+
<domain name="{name}" id="{id}">
|
383
|
+
<a n="...">...</a>+
|
384
|
+
</domain>*
|
385
|
+
<cos name="{name}" id="{id}">
|
386
|
+
<a n="...">...</a>+
|
387
|
+
</cos>*
|
388
|
+
</SearchDirectoryResponse>
|
389
|
+
|
390
|
+
Notes:
|
391
|
+
SearchDirectoryRequest
|
392
|
+
<query> - query string should be an LDAP-style filter string (RFC 2254)
|
393
|
+
maxResults = maximum results that the backend will attempt to fetch from the directory before
|
394
|
+
returning a account.TOO_MANY_SEARCH_RESULTS error.
|
395
|
+
|
396
|
+
limit - the number of accounts to return per page (0 is default and means all)
|
397
|
+
offset - the starting offset (0, 25, etc)
|
398
|
+
domain - the domain name to limit the search to (do not use if searching for domains)
|
399
|
+
applyCos - whether or not (0/1) to apply the COS policy to account. specify 0 if only
|
400
|
+
requesting attrs that aren't inherited from COS
|
401
|
+
attrs - comma-seperated list of attrs to return ("displayName", "zimbraId", "zimbraAccountStatus")
|
402
|
+
sortBy - name of attribute to sort on. default is the account name.
|
403
|
+
sortAscending - whether to sort in ascending order (0/1), 1 is default
|
404
|
+
more-flag = true if more accounts left to return
|
405
|
+
search-total = total number of accounts that matched search (not affected by limit/offset)
|
406
|
+
types = comma-separated list of types to return. legal values are:
|
407
|
+
accounts|distributionlists|aliases|resources|domains|coses
|
408
|
+
(default is accounts)
|
409
|
+
|
410
|
+
SearchDirectoryResponse
|
411
|
+
isExternal: whether the account's zimbraMailTranport points to the designated protocol(lmtp) and server(home server of the account).
|
412
|
+
|
413
|
+
Access: domain admin sufficient (though a domain admin can't specify "domains" as a type)
|
414
|
+
|
415
|
+
-----------------------------
|
416
|
+
|
417
|
+
<GetQuotaUsageRequest [limit="..."] [offset="..."] [domain="{limit-to-domain}"]
|
418
|
+
[sortBy="{sort-by}"] [sortAscending="{sort-ascending}"] [refresh="1"]>
|
419
|
+
</GetQuotaUsageRequest>
|
420
|
+
|
421
|
+
<GetQuotaUsageResponse more="{more-flag}" [searchTotal="{search-total}"]>
|
422
|
+
<account name="{name}" id="{id}" used="{quota-used}" limit="{quota-limit}"/>+
|
423
|
+
</GetQuotaUsageResponse>
|
424
|
+
|
425
|
+
Notes:
|
426
|
+
GetQuotaUsageRequest
|
427
|
+
limit - the number of accounts to return (0 is default and means all)
|
428
|
+
offset - the starting offset (0, 25, etc)
|
429
|
+
domain - the domain name to limit the search to
|
430
|
+
sortBy - valid values: "percentUsed", "totalUsed", "quotaLimit"
|
431
|
+
sortAscending - whether to sort in ascending order (0/1), 0 is default, so highest quotas are returned first
|
432
|
+
refresh - whether to always recalculate the data even when cached values are available. 0 is default.
|
433
|
+
more-flag = true if more accounts left to return
|
434
|
+
search-total = total number of accounts that matched search (not affected by limit/offset)
|
435
|
+
used = used quota in bytes, or 0 if no quota used
|
436
|
+
limit = quota limit in bytes, or 0 if unlimited
|
437
|
+
|
438
|
+
The target server should be specified in the soap header (see soap.txt, <targetServer>).
|
439
|
+
|
440
|
+
When sorting by "quotaLimit", 0 is treated as the highest value possible.
|
441
|
+
|
442
|
+
-----------------------------
|
443
|
+
|
444
|
+
<GetAllMailboxesRequest [limit="..."] [offset="..."]>
|
445
|
+
</GetAllMailboxesRequest>
|
446
|
+
|
447
|
+
<GetAllMailboxesResponse>
|
448
|
+
<mbox id="..." groupid="..." accountid="..." indexvolumeid="..." itemidcheckpoint="..." contactcount="..." sizecheckpoint="..."
|
449
|
+
changecheckpoint="..." trackingsync="..." trackingimap="..." lastbackupat="..." lastsoapaccess="..." newmessages="..." idxdeferredcount="..."/>+
|
450
|
+
</GetAllMailboxesResponse>
|
451
|
+
|
452
|
+
Notes:
|
453
|
+
Returns all data from the mailbox table (in db.sql), except for the "comment" column.
|
454
|
+
limit - the number of mailboxes to return (0 is default and means all)
|
455
|
+
offset - the starting offset (0, 25, etc)
|
456
|
+
|
457
|
+
-----------------------------
|
458
|
+
|
459
|
+
<GetMailboxStatsRequest/>
|
460
|
+
|
461
|
+
<GetMailboxStatsResponse>
|
462
|
+
<stats numMboxes="..." totalSize="..."/>
|
463
|
+
</GetMailboxStatsResponse>
|
464
|
+
|
465
|
+
Notes:
|
466
|
+
numMboxes: total number of mailboxes
|
467
|
+
totalSize: total size of all mailboxes
|
468
|
+
|
469
|
+
-----------------------------
|
470
|
+
|
471
|
+
<GetAllAccountsRequest>
|
472
|
+
[<domain by="id|name">...</domain>]
|
473
|
+
[<server by="id|name">...</server>]
|
474
|
+
<GetAllAccountsRequest/>
|
475
|
+
|
476
|
+
<GetAllAccountsResponse>
|
477
|
+
<account name="{name}" id="{id}">
|
478
|
+
<a n="...">...</a>+
|
479
|
+
</account>
|
480
|
+
</GetAllAccountsResponse>
|
481
|
+
|
482
|
+
Access: domain admin sufficient
|
483
|
+
|
484
|
+
-----------------------------
|
485
|
+
|
486
|
+
<CreateDomainRequest>
|
487
|
+
<name>...</name>
|
488
|
+
<a n="...">...</a>+
|
489
|
+
</CreateDomainRequest>
|
490
|
+
|
491
|
+
<CreateDomainResponse>
|
492
|
+
<domain name="{name}" id="{id}">
|
493
|
+
<a n="...">...</a>+
|
494
|
+
</domain>
|
495
|
+
</CreateDomainResponse>
|
496
|
+
|
497
|
+
Notes:
|
498
|
+
|
499
|
+
extra attrs:
|
500
|
+
|
501
|
+
description
|
502
|
+
zimbraNotes
|
503
|
+
|
504
|
+
-----------------------------
|
505
|
+
|
506
|
+
<GetDomainRequest [applyConfig="{apply-config}"] [attrs="{req-attrs}"]>
|
507
|
+
<domain by="id|name|virtualHostname">...</domain>
|
508
|
+
</GetDomainRequest>
|
509
|
+
|
510
|
+
<GetDomainResponse>
|
511
|
+
<domain name="{name}" id="{id}">
|
512
|
+
<a n="...">...</a>+
|
513
|
+
</domain>
|
514
|
+
</GetDomainResponse>
|
515
|
+
|
516
|
+
{apply-config} = 0|1 (1 is default)
|
517
|
+
|
518
|
+
if {apply-config} is 1, then certain unset attrs on a domain will get their value from the global config.
|
519
|
+
|
520
|
+
if {apply-config} is 0, then only attributes directly set on the domain will be returned
|
521
|
+
|
522
|
+
{req-attrs} = comma-seperated list of attrs to return
|
523
|
+
|
524
|
+
-----------------------------
|
525
|
+
|
526
|
+
<GetDomainInfoRequest [applyConfig="{apply-config}"]>
|
527
|
+
<domain by="id|name|virtualHostname">...</domain>
|
528
|
+
</GetDomainInfoRequest>
|
529
|
+
|
530
|
+
<GetDomainInfoResponse>
|
531
|
+
<domain name="..." id="...">
|
532
|
+
<a n="...">...</a>+
|
533
|
+
</domain>
|
534
|
+
</GetDomainInfoResponse>
|
535
|
+
|
536
|
+
This call does *not* require an auth token. It returuns attributes that are pertinent to domain settings
|
537
|
+
for cases when the user is not authenticated. For example, URL to direct the user to upon loggin out or when
|
538
|
+
auth token is expired.
|
539
|
+
|
540
|
+
If the domain doesn't exist, this call returns an empty body:
|
541
|
+
|
542
|
+
<GetDomainInfoResponse/>
|
543
|
+
|
544
|
+
|
545
|
+
{apply-config} = 0|1 (1 is default)
|
546
|
+
|
547
|
+
if {apply-config} is 1, then certain unset attrs on a domain will get their value from the global config.
|
548
|
+
|
549
|
+
if {apply-config} is 0, then only attributes directly set on the domain will be returned
|
550
|
+
|
551
|
+
-----------------------------
|
552
|
+
|
553
|
+
<GetAllDomainsRequest [applyConfig="{apply-config}"]/>
|
554
|
+
|
555
|
+
<GetAllDomainsResponse>
|
556
|
+
<domain name="{name}" id="{id}">
|
557
|
+
<a n="...">...</a>+
|
558
|
+
</domain>+
|
559
|
+
</GetAllDomainsResponse>
|
560
|
+
|
561
|
+
-----------------------------
|
562
|
+
|
563
|
+
<ModifyDomainRequest>
|
564
|
+
<id>{value-of-zimbraId}</id>
|
565
|
+
<a n="...">...</a>+
|
566
|
+
</ModifyDomainRequest>
|
567
|
+
|
568
|
+
<ModifyDomainResponse>
|
569
|
+
<domain name="{name}" id="{id}">
|
570
|
+
<a n="...">...</a>+
|
571
|
+
</domain>
|
572
|
+
</ModifyDomainResponse>
|
573
|
+
|
574
|
+
Notes:
|
575
|
+
|
576
|
+
an empty attribute value removes the specified attr
|
577
|
+
|
578
|
+
-----------------------------
|
579
|
+
|
580
|
+
<DeleteDomainRequest>
|
581
|
+
<id>{value-of-zimbraId}</id>
|
582
|
+
</DeleteDomainRequest>
|
583
|
+
|
584
|
+
<DeleteDomainResponse/>
|
585
|
+
|
586
|
+
-----------------------------
|
587
|
+
<CreateCosRequest>
|
588
|
+
<name>...</name>
|
589
|
+
<a n="...">...</a>+
|
590
|
+
</CreateCosRequest>
|
591
|
+
|
592
|
+
<CreateCosResponse>
|
593
|
+
<cos name="{name}" id="{id}">
|
594
|
+
<a n="...">...</a>+
|
595
|
+
</cos>
|
596
|
+
</CreateCosResponse>
|
597
|
+
|
598
|
+
Notes:
|
599
|
+
|
600
|
+
extra attrs:
|
601
|
+
|
602
|
+
description
|
603
|
+
zimbraNotes
|
604
|
+
|
605
|
+
-----------------------------
|
606
|
+
<CopyCosRequest>
|
607
|
+
<name>{dest-cos-name}</name>
|
608
|
+
<cos by="id|name">{src-cos-id-or-name}</cos>
|
609
|
+
</CopyCosRequest>
|
610
|
+
|
611
|
+
<CopyCosResponse>
|
612
|
+
<cos name="{name}" id="{id}">
|
613
|
+
<a n="...">...</a>+
|
614
|
+
</cos>
|
615
|
+
</CopyCosResponse>
|
616
|
+
|
617
|
+
-----------------------------
|
618
|
+
<GetCosRequest [attrs="{req-attrs}"]>
|
619
|
+
<cos by="id|name">...</cos>
|
620
|
+
</GetCosRequest>
|
621
|
+
|
622
|
+
<GetCosResponse>
|
623
|
+
<cos name="{name}" id="{id}">
|
624
|
+
<a [c="{cos-attr}"] n="...">...</a>+
|
625
|
+
</cos>
|
626
|
+
</GetCosResponse>
|
627
|
+
|
628
|
+
{req-attrs} = comma-seperated list of attrs to return
|
629
|
+
|
630
|
+
{cos-attr} = 0 (default) means the attrs applies to any account's that belong to the cos
|
631
|
+
1 means the attr applies only to the cos object itself
|
632
|
+
|
633
|
+
-----------------------------
|
634
|
+
|
635
|
+
<GetAllCosRequest/>
|
636
|
+
|
637
|
+
<GetAllCosResponse>
|
638
|
+
<cos name="{name}" id="{id}">
|
639
|
+
<a [c="{cos-attr}"] n="...">...</a>+
|
640
|
+
</cos>+
|
641
|
+
</GetAllCosResponse>
|
642
|
+
|
643
|
+
-----------------------------
|
644
|
+
|
645
|
+
<ModifyCosRequest>
|
646
|
+
<id>{value-of-zimbraId}</id>
|
647
|
+
<a n="...">...</a>+
|
648
|
+
</ModifyCosRequest>
|
649
|
+
|
650
|
+
<ModifyCosResponse>
|
651
|
+
<cos name="{name}" id="{id}">
|
652
|
+
<a [c="{cos-attr}"] n="...">...</a>+
|
653
|
+
</cos>+
|
654
|
+
</ModifyCosResponse>
|
655
|
+
|
656
|
+
Notes:
|
657
|
+
|
658
|
+
an empty attribute value removes the specified attr
|
659
|
+
|
660
|
+
-----------------------------
|
661
|
+
|
662
|
+
<RenameCosRequest>
|
663
|
+
<id>{value-of-zimbraId}</id>
|
664
|
+
<newName>{new-cos-name}</newName>
|
665
|
+
</RenameCosRequest>
|
666
|
+
|
667
|
+
<RenameCosResponse>
|
668
|
+
<cos name="{name}" id="{id}">
|
669
|
+
<a n="...">...</a>+
|
670
|
+
</cos>
|
671
|
+
</RenameCosResponse>
|
672
|
+
|
673
|
+
-----------------------------
|
674
|
+
|
675
|
+
<DeleteCosRequest>
|
676
|
+
<id>{value-of-zimbraId}</id>
|
677
|
+
</DeleteCosRequest>
|
678
|
+
|
679
|
+
<DeleteCosResponse/>
|
680
|
+
|
681
|
+
Notes:
|
682
|
+
|
683
|
+
an empty attribute value removes the specified attr
|
684
|
+
|
685
|
+
-----------------------------
|
686
|
+
<CreateServerRequest>
|
687
|
+
<name>...</name>
|
688
|
+
<a n="...">...</a>+
|
689
|
+
</CreateServerRequest>
|
690
|
+
|
691
|
+
<CreateServerResponse>
|
692
|
+
<server name="{name}" id="{id}">
|
693
|
+
<a n="...">...</a>+
|
694
|
+
</server>
|
695
|
+
</CreateServerResponse>
|
696
|
+
|
697
|
+
Notes:
|
698
|
+
|
699
|
+
extra attrs:
|
700
|
+
|
701
|
+
description
|
702
|
+
zimbraNotes
|
703
|
+
|
704
|
+
-----------------------------
|
705
|
+
|
706
|
+
<GetServerRequest [applyConfig="{apply-config}"] [attrs="{req-attrs}"]>
|
707
|
+
<server by="id|name|serviceHostname">...</server>
|
708
|
+
</GetServerRequest>
|
709
|
+
|
710
|
+
<GetServerResponse>
|
711
|
+
<server name="{name}" id="{id}">
|
712
|
+
<a n="...">...</a>+
|
713
|
+
</server>
|
714
|
+
</GetServerResponse>
|
715
|
+
|
716
|
+
{apply-config} = 0|1 (1 is default)
|
717
|
+
|
718
|
+
by "serviceHostname" will return the server that has zimbraServiceHostname set to the specified value.
|
719
|
+
|
720
|
+
if {apply-config} is 1, then certain unset attrs on a server will get their value from the global config.
|
721
|
+
|
722
|
+
if {apply-config} is 0, then only attributes directly set on the server will be returned
|
723
|
+
|
724
|
+
{req-attrs} = comma-seperated list of attrs to return
|
725
|
+
|
726
|
+
-----------------------------
|
727
|
+
|
728
|
+
You can get all servers defined in the system or you can get all
|
729
|
+
servers that have a particular service enabled (eg, mta, antispam,
|
730
|
+
spell).
|
731
|
+
|
732
|
+
<GetAllServersRequest [service="service-name"] [applyConfig="{apply-config}"]/>
|
733
|
+
|
734
|
+
<GetAllServersResponse>
|
735
|
+
<server name="{name}" id="{id}">
|
736
|
+
<a n="...">...</a>+
|
737
|
+
</server>+
|
738
|
+
</GetAllServerResponse>
|
739
|
+
|
740
|
+
-----------------------------
|
741
|
+
|
742
|
+
<ModifyServerRequest>
|
743
|
+
<id>{value-of-zimbraId}</id>
|
744
|
+
<a n="...">...</a>+
|
745
|
+
</ModifyServerRequest>
|
746
|
+
|
747
|
+
<ModifyServerResponse>
|
748
|
+
<server name="{name}" id="{id}">
|
749
|
+
<a n="...">...</a>+
|
750
|
+
</server>
|
751
|
+
</ModifyServerResponse>]
|
752
|
+
|
753
|
+
Note: an empty attribute value removes the specified attr
|
754
|
+
|
755
|
+
note: this request is by default proxied to the referenced server
|
756
|
+
|
757
|
+
-----------------------------
|
758
|
+
|
759
|
+
<DeleteServerRequest>
|
760
|
+
<id>{value-of-zimbraId}</id>
|
761
|
+
</DeleteServerRequest>
|
762
|
+
|
763
|
+
<DeleteServerResponse/>
|
764
|
+
|
765
|
+
Note: an empty attribute value removes the specified attr
|
766
|
+
|
767
|
+
note: this request is by default proxied to the referenced server
|
768
|
+
|
769
|
+
-----------------------------
|
770
|
+
|
771
|
+
<GetConfigRequest>
|
772
|
+
<a n="....">
|
773
|
+
</GetServerRequest>
|
774
|
+
|
775
|
+
<GetConfigResponse>
|
776
|
+
<a n="...">...</a>+
|
777
|
+
</GetConfigResponse>
|
778
|
+
|
779
|
+
-----------------------------
|
780
|
+
<GetAllConfigRequest/>
|
781
|
+
|
782
|
+
<GetAllConfigResponse>
|
783
|
+
<a n="...">...</a>+
|
784
|
+
</GetAllConfigResponse>
|
785
|
+
|
786
|
+
-----------------------------
|
787
|
+
<ModifyConfigRequest>
|
788
|
+
<a n="...">...</a>+
|
789
|
+
</ModifyConfigRequest>
|
790
|
+
|
791
|
+
<ModifyConfigResponse/>
|
792
|
+
|
793
|
+
Notes:
|
794
|
+
|
795
|
+
an empty attribute value removes the specified attr
|
796
|
+
|
797
|
+
-----------------------------
|
798
|
+
<GetServerStatsRequest>
|
799
|
+
<stat name="{stat-name}"/>*
|
800
|
+
</GetServerStatsRequest>
|
801
|
+
|
802
|
+
<GetServerStatsResponse>
|
803
|
+
<stat name="{stat-name}" description="{text}">{stat-value}</stat>+
|
804
|
+
</GetServerStatsResponse>
|
805
|
+
|
806
|
+
Returns server monitoring stats. These are the same stats that are logged
|
807
|
+
to mailboxd.csv. If no <stat> element is specified, all server stats
|
808
|
+
are returned. If the stat name is invalid, returns a SOAP fault.
|
809
|
+
|
810
|
+
-----------------------------
|
811
|
+
<GetLoggerStatsRequest>
|
812
|
+
<hostname hn="..."/>?
|
813
|
+
<stats name="..." [limit=true]/><values><stat name="counter1"/><stat name="counterN"/></values>?</stats>?
|
814
|
+
<stats name="...">1</stats>?
|
815
|
+
<startTime time="ts"/>?
|
816
|
+
<endTime time="ts"/>?
|
817
|
+
</GetLoggerStatsRequest>
|
818
|
+
|
819
|
+
<GetLoggerStatsResponse>
|
820
|
+
<!-- first case, list of reporting hostnames -->
|
821
|
+
<hostname hn="..."/>+
|
822
|
+
|
823
|
+
<!-- second case, list of stat groupings for a given host-->
|
824
|
+
<hostname hn="...">
|
825
|
+
<stats name="..."/>+
|
826
|
+
</hostname>
|
827
|
+
|
828
|
+
<!-- third case, list of columns for a given host and grouping -->
|
829
|
+
<hostname hn="...">
|
830
|
+
<stats name="...">
|
831
|
+
<values>
|
832
|
+
<stat name="..."/>+
|
833
|
+
</values>
|
834
|
+
</stats>
|
835
|
+
</hostname>
|
836
|
+
|
837
|
+
<!-- fourth case, actual stat results -->
|
838
|
+
<hostname hn="...">
|
839
|
+
<stats name="...">
|
840
|
+
<values t="...">+
|
841
|
+
<stat name="..." value="X"/>+
|
842
|
+
</values>
|
843
|
+
</stats>
|
844
|
+
</hostname>
|
845
|
+
|
846
|
+
</GetLoggerStatsResponse>
|
847
|
+
|
848
|
+
Query to retrieve Logger statistics in ZCS 6.0.
|
849
|
+
|
850
|
+
Use cases:
|
851
|
+
|
852
|
+
1 - no elements specified
|
853
|
+
- result: a listing of reporting host names
|
854
|
+
2 - hostname specified
|
855
|
+
- result: a listing of stat groups for the specified host
|
856
|
+
3 - hostname and stats specified, text content of stats non-empty
|
857
|
+
- result: a listing of columns for the given host and group
|
858
|
+
4 - hostname and stats specified, text content empty, startTime/endTime optional
|
859
|
+
- result: all of the statistics for the given host/group are returned, if start
|
860
|
+
and end are specified, limit/expand the timerange to the given setting.
|
861
|
+
if limit=true is specified, attempt to reduce result set to under 500 records
|
862
|
+
|
863
|
+
-----------------------------
|
864
|
+
<GetServiceStatusRequest/>
|
865
|
+
|
866
|
+
<GetServiceStatusResponse>
|
867
|
+
<timezone id="{timezone-id}" displayName="{timezone-display-name}"></timezone>
|
868
|
+
<status server="..." service="..." t="{date-time}">{value}</status>*
|
869
|
+
</GetServiceStatusResponse>
|
870
|
+
|
871
|
+
{timezone-id} timezone id, e.g "America/Los_Angeles"
|
872
|
+
{timezone-display-name} timezone display anme, e.g. "Pacific Standard Time"
|
873
|
+
{date-time} format is number of seconds in 1970, utc time.
|
874
|
+
|
875
|
+
-----------------------------
|
876
|
+
|
877
|
+
<PurgeMessagesRequest>
|
878
|
+
[<mbox id="{account-id}"/>]
|
879
|
+
</PurgeMessagesRequest>
|
880
|
+
|
881
|
+
purges aged messages out of trash, spam, and entire mailbox
|
882
|
+
(if <mbox> element is omitted, purges all mailboxes on server)
|
883
|
+
|
884
|
+
-----------------------------
|
885
|
+
|
886
|
+
<RecalculateMailboxCountsRequest>
|
887
|
+
<mbox id="{account-id}"/>
|
888
|
+
</RecalculateMailboxCountsRequest>
|
889
|
+
|
890
|
+
<RecalculateMailboxCountsResponse>
|
891
|
+
<mbox id="{account-id}" used="{quota-used}"/>
|
892
|
+
</RecalculateMailboxCountsResponse>
|
893
|
+
|
894
|
+
forces immediate recalculation of total mailbox quota usage and all folder unread and size counts
|
895
|
+
|
896
|
+
Access: domain admin sufficient
|
897
|
+
|
898
|
+
note: this request is by default proxied to the account's home server
|
899
|
+
|
900
|
+
-----------------------------
|
901
|
+
|
902
|
+
<ReIndexRequest action="start|status|cancel">
|
903
|
+
<mbox id="{account-id}" [types={types} | ids={ids}]/>
|
904
|
+
</ReIndexRequest>
|
905
|
+
|
906
|
+
<ReIndexResponse status="started|running|cancelled|idle">
|
907
|
+
[<progress numSucceeded="SUCCEEDED" numFailed="FAILED" numRemaining="REMAINING">]
|
908
|
+
</ReIndexResponse>
|
909
|
+
|
910
|
+
-types -ids are optional, however at most ONE may be specified:
|
911
|
+
{ids] = comma-separated list of IDs to re-index.
|
912
|
+
{types} = comma-separated list. Legal values are:
|
913
|
+
conversation|message|contact|appointment|task|note|wiki|document
|
914
|
+
|
915
|
+
action start - start reindexing
|
916
|
+
status started - success
|
917
|
+
status running - reindexing is already running
|
918
|
+
action status - show reindexing progress
|
919
|
+
status running - returns progress information
|
920
|
+
status idle - reindexing is not running
|
921
|
+
action cancel - cancel reindexing
|
922
|
+
status cancelled - success and returns progress information
|
923
|
+
status idle - reindexing is not running
|
924
|
+
|
925
|
+
Access: domain admin sufficient
|
926
|
+
|
927
|
+
note: this request is by default proxied to the account's home server
|
928
|
+
|
929
|
+
---------------------------
|
930
|
+
|
931
|
+
<DeleteMailboxRequest>
|
932
|
+
<mbox id="{account-id}"/>
|
933
|
+
</DeleteMailboxRequest>
|
934
|
+
|
935
|
+
the request includes the account ID (uuid) of the target mailbox
|
936
|
+
on success, the response includes the mailbox ID (numeric) of the deleted mailbox
|
937
|
+
the <mbox> element is left out of the response if no mailbox existed for that account
|
938
|
+
|
939
|
+
<DeleteMailboxResponse>
|
940
|
+
[<mbox mbxid="{mailbox-id}"/>]
|
941
|
+
</DeleteMailboxResponse>
|
942
|
+
|
943
|
+
Access: domain admin sufficient
|
944
|
+
|
945
|
+
note: this request is by default proxied to the account's home server
|
946
|
+
|
947
|
+
-----------------------------
|
948
|
+
<GetMailboxRequest>
|
949
|
+
<mbox id="{account-id}"/>
|
950
|
+
</GetMailboxRequest>
|
951
|
+
|
952
|
+
<GetMailboxResponse>
|
953
|
+
<mbox mbxid="{mailbox-id}" s="{size-in-bytes}"/>
|
954
|
+
</GetMailboxResponse>
|
955
|
+
|
956
|
+
Access: domain admin sufficient
|
957
|
+
|
958
|
+
note: this request is by default proxied to the account's home server
|
959
|
+
|
960
|
+
-----------------------------
|
961
|
+
|
962
|
+
Runs the server-side unit test suite.
|
963
|
+
|
964
|
+
If <test>'s are specified, then run the requested tests (instead of
|
965
|
+
the standard test suite). Otherwise the standard test suite is run.
|
966
|
+
|
967
|
+
<RunUnitTestsRequest>
|
968
|
+
[<test>classname super junit.framework.Test</test>]*
|
969
|
+
</RunUnitTestsRequest>
|
970
|
+
|
971
|
+
<RunUnitTestsResponse numExecuted="{n}" numFailed="{n}">
|
972
|
+
{ Summary of test execution times and success/failure status }
|
973
|
+
</RunUnitTestsResponse>
|
974
|
+
|
975
|
+
-----------------------------
|
976
|
+
All the Check* SOAP calls potentially return the following two things:
|
977
|
+
|
978
|
+
<code>{code}</code>
|
979
|
+
<message>{message}</message>
|
980
|
+
|
981
|
+
where:
|
982
|
+
|
983
|
+
code is one of the following Strings:
|
984
|
+
|
985
|
+
code description
|
986
|
+
------- -----------
|
987
|
+
check.OK everything went ok
|
988
|
+
check.UNKNOWN_HOST unable to resolve a hostname
|
989
|
+
check.CONNECTION_REFUSED connection to a port was refused
|
990
|
+
check.SSL_HANDSHAKE_FAILURE SSL connect problem, most likely untrusted certificate
|
991
|
+
check.COMMUNICATION_FAILURE generic communication failure
|
992
|
+
check.AUTH_FAILED authentication failed. invalid credentials (bad dn/password)
|
993
|
+
check.AUTH_NOT_SUPPORTED authentication flavor not supported. LDAP server probably
|
994
|
+
configured to not allow passwords
|
995
|
+
check.NAME_NOT_FOUND unable to resolve an LDAP name. most likely invalid search base
|
996
|
+
check.INVALID_SEARCH_FILTER invalid ldap search filter
|
997
|
+
check.FAILURE generic failure
|
998
|
+
|
999
|
+
message is the detailed Java stack trace, used mainly for diagnosotics where the code
|
1000
|
+
isn't specific enough. Not user-friendly, but still useful for debugging problems.
|
1001
|
+
|
1002
|
+
Any SOAP faults returned indicate a problem with the request itself, not the thing being
|
1003
|
+
checked.
|
1004
|
+
|
1005
|
+
----------------------------------------
|
1006
|
+
|
1007
|
+
<CheckHostnameResolveRequest>
|
1008
|
+
<hostname>...</hostname>
|
1009
|
+
</CheckHostnameResolveRequest>
|
1010
|
+
|
1011
|
+
<CheckHostnameResolveResponse>
|
1012
|
+
<code>...</code>
|
1013
|
+
<message>...</message>*
|
1014
|
+
</CheckHostnameResolveResponse>
|
1015
|
+
|
1016
|
+
------------------------------------------------------------
|
1017
|
+
|
1018
|
+
<CheckGalConfigRequest>
|
1019
|
+
<a n='zimbraGalMode'>ldap</a>
|
1020
|
+
|
1021
|
+
<a n='zimbraGalLdapURL'>...</a>
|
1022
|
+
<a n='zimbraGalLdapSearchBase'>...</a>
|
1023
|
+
<a n='zimbraGalLdapFilter'>...</a>
|
1024
|
+
<a n='zimbraGalLdapAuthMech'>...</a>
|
1025
|
+
<a n='zimbraGalLdapBindDn'>...</a>*
|
1026
|
+
<a n='zimbraGalLdapBindPassword'>...</a>*
|
1027
|
+
<a n='zimbraGalLdapKerberos5Principal'>...</a>*
|
1028
|
+
<a n='zimbraGalLdapKerberos5Keytab'>...</a>*
|
1029
|
+
|
1030
|
+
<a n='zimbraGalSyncLdapURL'>...</a>
|
1031
|
+
<a n='zimbraGalSyncLdapSearchBase'>...</a>
|
1032
|
+
<a n='zimbraGalSyncLdapFilter'>...</a>
|
1033
|
+
<a n='zimbraGalSyncLdapAuthMech'>...</a>
|
1034
|
+
<a n='zimbraGalSyncLdapBindDn'>...</a>*
|
1035
|
+
<a n='zimbraGalSyncLdapBindPassword'>...</a>*
|
1036
|
+
<a n='zimbraGalSyncLdapKerberos5Principal'>...</a>*
|
1037
|
+
<a n='zimbraGalSyncLdapKerberos5Keytab'>...</a>*
|
1038
|
+
|
1039
|
+
<a n='zimbraGalAutoCompleteLdapFilter'>...</a>
|
1040
|
+
|
1041
|
+
<a n='zimbraGalTokenizeAutoCompleteKey'>...</a>
|
1042
|
+
<a n='zimbraGalTokenizeSearchKey'>...</a>
|
1043
|
+
|
1044
|
+
<query limit="...">...</query>*
|
1045
|
+
<action>{GAL-action}</action>*
|
1046
|
+
</CheckGalConfigRequest>
|
1047
|
+
|
1048
|
+
<CheckGalConfigResponse>
|
1049
|
+
<code>...</code>
|
1050
|
+
<message>...</message>*
|
1051
|
+
<cn>...</cn>*
|
1052
|
+
</CheckGalConfigResponse>
|
1053
|
+
|
1054
|
+
notes:
|
1055
|
+
- zimbraGalMode must be set to ldap, even if you eventually want to set it to "both".
|
1056
|
+
- <action> is optional. GAL-action can be autocomplete|search|sync. Default is search.
|
1057
|
+
- <query> is ignored if <action> is "sync".
|
1058
|
+
- AuthMech can be none|simple|kerberos5.
|
1059
|
+
- Default is simple if both BindDn/BindPassword are provided.
|
1060
|
+
- Default is none if not both BindDn/BindPassword are provided.
|
1061
|
+
- BindDn/BindPassword are required if AuthMech is "simple".
|
1062
|
+
- Kerberos5Principal/Kerberos5Keytab are required only if AuthMech is "kerberos5".
|
1063
|
+
- zimbraGalSyncLdapXXX attributes are for GAL sync. They are ignored if <action> is not sync.
|
1064
|
+
For GAL sync, if a zimbraGalSyncLdapXXX attribute is not set, server will fallback to the corresponding zimbraGalLdapXXX attribute.
|
1065
|
+
|
1066
|
+
------------------------------------------------------------
|
1067
|
+
|
1068
|
+
<CheckAuthConfigRequest>
|
1069
|
+
<a n='zimbraAuthMech'>ldap</a>
|
1070
|
+
<a n='zimbraAuthLdapURL'>...</a>
|
1071
|
+
<a n='zimbraAuthLdapBindDn'>...</a>
|
1072
|
+
<a n='zimbraAuthLdapSearchFilter'>...</a>
|
1073
|
+
<a n='zimbraAuthLdapSearchBase'>...</a>
|
1074
|
+
<a n='zimbraAuthLdapSearchBindDn'>...</a>
|
1075
|
+
<a n='zimbraAuthLdapSearchBindPassword'>...</a>
|
1076
|
+
<name>...</name>
|
1077
|
+
<password>...</password>
|
1078
|
+
</CheckAuthConfigRequest>
|
1079
|
+
|
1080
|
+
<CheckAuthConfigResponse>
|
1081
|
+
<code>...</code>
|
1082
|
+
<message>...</message>*
|
1083
|
+
<bindDn>{dn-computed-from-supplied-binddn-and-name}</bindDn>
|
1084
|
+
</CheckAuthConfigResponse>
|
1085
|
+
|
1086
|
+
notes:
|
1087
|
+
- zimbraAuthMech must be set to ldap/ad. There is no reason to check zimbra.
|
1088
|
+
- zimbraAuthLdapURL must be set
|
1089
|
+
- either zimbraAuthLdapBindDn or zimbraAuthLdapSearchFilter must be set
|
1090
|
+
|
1091
|
+
The following are optional, and only looked at if zimbraAuthLdapSearchFilter is set:
|
1092
|
+
- zimbraAuthLdapSearchBase is optional and defaults to ""
|
1093
|
+
- zimbraAuthLdapSearchBind{Dn,Password} are both optional
|
1094
|
+
|
1095
|
+
-----------------------------------
|
1096
|
+
|
1097
|
+
<CreateVolumeRequest>
|
1098
|
+
<volume type="..." name="..." rootpath="..."
|
1099
|
+
compressBlobs="..." compressionThreshold="..."/>
|
1100
|
+
</CreateVolumeRequest>
|
1101
|
+
|
1102
|
+
<CreateVolumeResponse>
|
1103
|
+
<volume id="{id}"/>
|
1104
|
+
</CreateVolumeResponse>
|
1105
|
+
|
1106
|
+
Notes:
|
1107
|
+
|
1108
|
+
id: ID of volume
|
1109
|
+
type: type of volume;
|
1110
|
+
1 = primary message volume
|
1111
|
+
2 = secondary message volume
|
1112
|
+
10 = index volume
|
1113
|
+
name: name or description of volume
|
1114
|
+
rootPath: absolute path to root of volume, e.g. /opt/zimbra/store
|
1115
|
+
compressBlobs: boolean value that specifies whether blobs in this
|
1116
|
+
volume are compressed
|
1117
|
+
compressionThreshold: long value that specifies the maximum uncompressed
|
1118
|
+
file size, in bytes, of blobs that will not be compressed
|
1119
|
+
(in other words blobs larger than this threshold are compressed)
|
1120
|
+
isCurrent: 1 if the volume is current, 0 if not
|
1121
|
+
|
1122
|
+
-----------------------------
|
1123
|
+
|
1124
|
+
<GetVolumeRequest id="{id}"/>
|
1125
|
+
|
1126
|
+
<GetVolumeResponse>
|
1127
|
+
<volume id="{id}" type="..." name="..." rootpath="..."
|
1128
|
+
compressBlobs="..." compressionThreshold="..."
|
1129
|
+
isCurrent="0|1"/>
|
1130
|
+
</GetVolumeResponse>
|
1131
|
+
|
1132
|
+
-----------------------------
|
1133
|
+
|
1134
|
+
<GetAllVolumesRequest/>
|
1135
|
+
|
1136
|
+
<GetAllVolumesResponse>
|
1137
|
+
<volume .../>+ <!-- each volume element is same as in GetVolumeResponse -->
|
1138
|
+
</GetAllVolumeResponse>
|
1139
|
+
|
1140
|
+
-----------------------------
|
1141
|
+
|
1142
|
+
<ModifyVolumeRequest id="{id}">
|
1143
|
+
<volume [type="..."] [name="..."] [rootpath="..."]
|
1144
|
+
[compressBlobs="..."] [compressionThreshold="..."]/>
|
1145
|
+
</ModifyVolumeRequest>
|
1146
|
+
|
1147
|
+
<ModifyVolumeResponse/>
|
1148
|
+
|
1149
|
+
-----------------------------
|
1150
|
+
|
1151
|
+
<DeleteVolumeRequest id="{id}"/>
|
1152
|
+
|
1153
|
+
<DeleteVolumeResponse/>
|
1154
|
+
|
1155
|
+
-----------------------------
|
1156
|
+
|
1157
|
+
<GetCurrentVolumesRequest/>
|
1158
|
+
|
1159
|
+
<GetCurrentVolumesResponse>
|
1160
|
+
<volume type="1" id="{id}"/>
|
1161
|
+
[<volume type="2" id="{id}"/>] <!-- optional -->
|
1162
|
+
<volume type="10" id="{id}"/>
|
1163
|
+
</GetCurrentVolumesResponse>
|
1164
|
+
|
1165
|
+
-----------------------------
|
1166
|
+
|
1167
|
+
<SetCurrentVolumeRequest type="{type}" id="{id}"/>
|
1168
|
+
|
1169
|
+
<SetCurrentVolumeResponse/>
|
1170
|
+
|
1171
|
+
Notes:
|
1172
|
+
|
1173
|
+
type: 1 (primary message), 2 (secondary message) or 10 (index)
|
1174
|
+
Each SetCurrentVolumeRequest can set only one current volume type.
|
1175
|
+
|
1176
|
+
-----------------------------
|
1177
|
+
|
1178
|
+
<CheckBlobConsistencyRequest [checkSize="0|1"]/>
|
1179
|
+
<volume id="..." />*
|
1180
|
+
<mbox id="..." />*
|
1181
|
+
</CheckBlobConsistencyRequest>
|
1182
|
+
|
1183
|
+
<CheckBlobConsistencyResponse>
|
1184
|
+
<mbox id="...">
|
1185
|
+
<missingBlobs>
|
1186
|
+
<item id="{id}" rev="{n}" volumeId="{id}" blobPath="{path}" s="{data-size}" />*
|
1187
|
+
</missingBlobs>
|
1188
|
+
<unexpectedBlobs>
|
1189
|
+
<blob volumeId="{id}" path="{path}" fileSize="{size} />*
|
1190
|
+
</unexpectedBlobs>
|
1191
|
+
<incorrectSize>
|
1192
|
+
<item id="{id}" rev="{n}" volumeId="{id}" s="{size}">*
|
1193
|
+
<blob fileSize="{size}" s="{data-size}" path="{path}" />
|
1194
|
+
</item>
|
1195
|
+
</incorrectSize>
|
1196
|
+
<incorrectRevision>
|
1197
|
+
<item id="{id}" rev="{n}" volumeId="{id}" s="{size}">*
|
1198
|
+
<blob fileSize="{size}" path="{path}" rev="{n}" />
|
1199
|
+
</item>
|
1200
|
+
</incorrectRevision>
|
1201
|
+
</mbox>*
|
1202
|
+
</CheckBlobConsistencyResponse>
|
1203
|
+
|
1204
|
+
Checks for items that have no blob, blobs that have no item, and items that
|
1205
|
+
have an incorrect blob size stored in their metadata. If no volumes are
|
1206
|
+
specified, all volumes are checked. If no mailboxes are specified, all
|
1207
|
+
mailboxes are checked. Blob sizes are checked by default. Set checkSize
|
1208
|
+
to 0 to avoid the CPU overhead of uncompressing compressed blobs in order to
|
1209
|
+
calculate size.
|
1210
|
+
|
1211
|
+
-----------------------------
|
1212
|
+
|
1213
|
+
<ExportAndDeleteItemsRequest [exportDir="path"] [exportFilenamePrefix="name"]>
|
1214
|
+
<mbox id="{id}">
|
1215
|
+
<item id="{id}" />
|
1216
|
+
...
|
1217
|
+
</mbox>
|
1218
|
+
</ExportAndDeleteItemsRequest>
|
1219
|
+
|
1220
|
+
<ExportAndDeleteItemsResponse/>
|
1221
|
+
|
1222
|
+
Exports the database data for the given items with SELECT INTO OUTFILE
|
1223
|
+
and deletes the items from the mailbox. Exported filenames follow the
|
1224
|
+
pattern <prefix><table_name>.txt. The files are written sqlExportDir.
|
1225
|
+
When sqlExportDir is not specified, data is not exported. Export is
|
1226
|
+
only supported for MySQL.
|
1227
|
+
|
1228
|
+
-----------------------------
|
1229
|
+
|
1230
|
+
<CreateDistributionListRequest>
|
1231
|
+
<name>...</name>
|
1232
|
+
<a n="...">...</a>+
|
1233
|
+
</CreateDistributionListRequest>
|
1234
|
+
|
1235
|
+
<CreateDistributionListResponse>
|
1236
|
+
<dl name="{name}" id="{id}">
|
1237
|
+
<a n="...">...</a>+
|
1238
|
+
</dl>
|
1239
|
+
</CreateDistributionListResponse>
|
1240
|
+
|
1241
|
+
Notes:
|
1242
|
+
|
1243
|
+
extra attrs:
|
1244
|
+
|
1245
|
+
description
|
1246
|
+
zimbraNotes
|
1247
|
+
|
1248
|
+
Access: domain admin sufficient
|
1249
|
+
|
1250
|
+
-----------------------------
|
1251
|
+
|
1252
|
+
<GetDistributionListRequest [limit="{limit}"] [offset="{offset}"]
|
1253
|
+
[sortAscending="{sort-ascending}"] [attrs="{req-attrs}"]>
|
1254
|
+
<dl by="id|name">...</dl>
|
1255
|
+
</GetDistributionListRequest>
|
1256
|
+
|
1257
|
+
<GetDistributionListResponse more="{more-flag}" [total="{total}"]>
|
1258
|
+
<dl name="{name}" id="{id}">
|
1259
|
+
<dlm>{member}</dlm>+
|
1260
|
+
<a n="...">...</a>+
|
1261
|
+
</dl>
|
1262
|
+
</GetDistributionListResponse>
|
1263
|
+
|
1264
|
+
Notes:
|
1265
|
+
|
1266
|
+
limit - the number of accounts to return (0 is default and means
|
1267
|
+
all)
|
1268
|
+
offset - the starting offset (0, 25, etc)
|
1269
|
+
sort-ascending - whether to sort in ascending order (0/1), 1 is
|
1270
|
+
default
|
1271
|
+
|
1272
|
+
more-flag = true if more accounts left to return
|
1273
|
+
total = total number of distribution lists (not affected by limit/offset)
|
1274
|
+
|
1275
|
+
req-attrs = comma-seperated list of attrs to return
|
1276
|
+
|
1277
|
+
Access: domain admin sufficient
|
1278
|
+
|
1279
|
+
-----------------------------
|
1280
|
+
|
1281
|
+
<GetAllDistributionListsRequest>
|
1282
|
+
[<domain by="id|name">...</domain>]
|
1283
|
+
</GetAllDistributionListsRequest>
|
1284
|
+
|
1285
|
+
<GetAllDistributionListsResponse>
|
1286
|
+
<dl name="{name}" id="{id}">
|
1287
|
+
<a n="...">...</a>+
|
1288
|
+
</dl>
|
1289
|
+
</GetAllDistributionListsResponse>
|
1290
|
+
|
1291
|
+
Access: domain admin sufficient
|
1292
|
+
|
1293
|
+
-----------------------------
|
1294
|
+
|
1295
|
+
<AddDistributionListMemberRequest>
|
1296
|
+
<id>{value-of-zimbraId}</id>
|
1297
|
+
<dlm>{member}</dlm>+
|
1298
|
+
</AddDistributionListMemeberRequest>
|
1299
|
+
|
1300
|
+
<AddDistributionListMemberResponse>
|
1301
|
+
</AddDistributionListMemeberResponse>
|
1302
|
+
|
1303
|
+
Access: domain admin sufficient
|
1304
|
+
|
1305
|
+
Adding existing members is allowed, even if it may result in this request
|
1306
|
+
being a no-op because all <dlm> addrs are already members.
|
1307
|
+
|
1308
|
+
-----------------------------
|
1309
|
+
|
1310
|
+
<RemoveDistributionListMemberRequest>
|
1311
|
+
<id>{value-of-zimbraId}</id>
|
1312
|
+
<dlm>{member}</dlm>+
|
1313
|
+
</RemoveDistributionListMemberRequest>
|
1314
|
+
|
1315
|
+
<RemoveDistributionListMemberResponse>
|
1316
|
+
</RemoveDistributionListMemberResponse>
|
1317
|
+
|
1318
|
+
Access: domain admin sufficient
|
1319
|
+
|
1320
|
+
Unlike add, remove of a non-existent member causes an exception and no
|
1321
|
+
modification to the list.
|
1322
|
+
|
1323
|
+
-----------------------------
|
1324
|
+
|
1325
|
+
<ModifyDistributionListRequest>
|
1326
|
+
<id>{value-of-zimbraId}</id>
|
1327
|
+
<a n="...">...</a>+
|
1328
|
+
</ModifyDistributionListRequest>
|
1329
|
+
|
1330
|
+
|
1331
|
+
<ModifyDistributionListResponse>
|
1332
|
+
<dl name="{name}" id="{id}">
|
1333
|
+
<a n="...">...</a>+
|
1334
|
+
</dl>
|
1335
|
+
</ModifyDistributionListResponse>
|
1336
|
+
|
1337
|
+
Notes:
|
1338
|
+
|
1339
|
+
an empty attribute value removes the specified attr
|
1340
|
+
|
1341
|
+
Access: domain admin sufficient
|
1342
|
+
|
1343
|
+
-----------------------------
|
1344
|
+
|
1345
|
+
<DeleteDistributionListRequest>
|
1346
|
+
<id>{value-of-zimbraId}</id>
|
1347
|
+
</DeleteDistributionListRequest>
|
1348
|
+
|
1349
|
+
<DeleteDistributionListResponse/>
|
1350
|
+
|
1351
|
+
Access: domain admin sufficient
|
1352
|
+
|
1353
|
+
-----------------------------
|
1354
|
+
|
1355
|
+
<AddDistributionListAliasRequest>
|
1356
|
+
<id>{value-of-zimbraId}</id>
|
1357
|
+
<alias>...</alias>
|
1358
|
+
</AddAliasRequest>
|
1359
|
+
|
1360
|
+
<AddDistributionListAliasResponse/>
|
1361
|
+
|
1362
|
+
Access: domain admin sufficient
|
1363
|
+
|
1364
|
+
-----------------------------
|
1365
|
+
|
1366
|
+
<RemoveDistributionListAliasRequest>
|
1367
|
+
<id>{value-of-zimbraId}</id>
|
1368
|
+
<alias>...</alias>
|
1369
|
+
</RemoveDistributionListAliasRequest>
|
1370
|
+
|
1371
|
+
<RemoveDistributionListAliasResponse/>
|
1372
|
+
|
1373
|
+
Access: domain admin sufficient
|
1374
|
+
|
1375
|
+
-----------------------------
|
1376
|
+
|
1377
|
+
<RenameDistributionListRequest>
|
1378
|
+
<id>{value-of-zimbraId}</id>
|
1379
|
+
<newName>{new-account-name}</newName>
|
1380
|
+
</RenameDistributionListRequest>
|
1381
|
+
|
1382
|
+
<RenameDistributionListResponse>
|
1383
|
+
<dl name="{name}" id="{id}">
|
1384
|
+
<a n="...">...</a>+
|
1385
|
+
</dl>
|
1386
|
+
</RenameDistributionListResponse>
|
1387
|
+
|
1388
|
+
Access: domain admin sufficient
|
1389
|
+
|
1390
|
+
-----------------------------
|
1391
|
+
|
1392
|
+
<GetDistributionListMembershipRequest>
|
1393
|
+
<dl by="id|name">...</dl>
|
1394
|
+
</GetDistributionListMembershipRequest>
|
1395
|
+
|
1396
|
+
<GetDistributionListMembershipResponse>
|
1397
|
+
<dl name="{name}" id="{id}" via="{via-dl-name}" />+
|
1398
|
+
</GetDistributionListMembershipResponse>
|
1399
|
+
|
1400
|
+
{via-dl-name} = is present if the dl is a member of the returned list because they are either a direct
|
1401
|
+
or indirect member of another list that is a member of the returned list. For example,
|
1402
|
+
if a dl is a member of engineering@domain.com, and engineering@domain.com is a member of all@domain.com,
|
1403
|
+
then <dl name="all@domain.com" ... via="engineering@domain.com"/> would be returned.
|
1404
|
+
|
1405
|
+
-----------------------------
|
1406
|
+
|
1407
|
+
<GetClusterStatusRequest/>
|
1408
|
+
|
1409
|
+
<GetClusterStatusResponse>
|
1410
|
+
<clusterName>{cluster-name}</clusterName>
|
1411
|
+
<servers>
|
1412
|
+
<server name="{server-name}" status="{1-or-0}"/>*
|
1413
|
+
</servers>
|
1414
|
+
<services>
|
1415
|
+
<service name="{service-name}" state="{state-string-from-console}" owner="{server-name}" lastOwner="{server-name}" restarts="{number}"/>*
|
1416
|
+
</services>
|
1417
|
+
</GetClusterStatusResponse>
|
1418
|
+
|
1419
|
+
-----------------------------
|
1420
|
+
|
1421
|
+
<FailoverClusterServiceRequest>
|
1422
|
+
<service name="{service-name}" newServer="{server-name}"/>
|
1423
|
+
</FailOverClusterServiceRequest>
|
1424
|
+
|
1425
|
+
<FailoverCluserServiceResponse/>
|
1426
|
+
|
1427
|
+
-----------------------------
|
1428
|
+
|
1429
|
+
<GetVersionInfoRequest/>
|
1430
|
+
|
1431
|
+
<GetVersionInfoResponse>
|
1432
|
+
<info version="{version-string}" release="{release-string}" buildDate="{YYYYMMDD-hhmm}" buildHost="{host-name}"/>
|
1433
|
+
</GetVersionInfoResponse>
|
1434
|
+
|
1435
|
+
-----------------------------
|
1436
|
+
|
1437
|
+
<GetLicenseInfoRequest/>
|
1438
|
+
|
1439
|
+
<GetLicenseInfoResponse>
|
1440
|
+
<expiration date={date-YYYYMMDD-format}></expiration>
|
1441
|
+
</GetLicenseInfoResponse>
|
1442
|
+
|
1443
|
+
-----------------------------
|
1444
|
+
|
1445
|
+
<ConfigureZimletRequest>
|
1446
|
+
<content aid="{attachment-id}"/>
|
1447
|
+
</ConfigureZimletRequest>
|
1448
|
+
|
1449
|
+
<ConfigureZimletResponse/>
|
1450
|
+
|
1451
|
+
-----------------------------
|
1452
|
+
|
1453
|
+
<DeployZimletRequest action="deployAll|deployLocal|status" flush="0|1" synchronous="0|1">
|
1454
|
+
<content aid="{attachment-id}"/>
|
1455
|
+
<DeployZimletRequest/>
|
1456
|
+
|
1457
|
+
<DeployZimletResponse>
|
1458
|
+
[<progress server="{server-name}" status="succeeded|failed|pending" error="{error-message}"/>]+
|
1459
|
+
</DeployZimletResponse>
|
1460
|
+
|
1461
|
+
-----------------------------
|
1462
|
+
|
1463
|
+
# priority is listed in the global list <zimlets> ... </zimlets> only.
|
1464
|
+
# that's because the priority value is relative to other Zimlets in the list.
|
1465
|
+
# the same Zimlet may show different priority number depending on what other
|
1466
|
+
# Zimlets priorities are. the same Zimlet will show priority 0 if all by itself,
|
1467
|
+
# or priority 3 if there are three other Zimlets with higher priority.
|
1468
|
+
|
1469
|
+
<GetZimletStatusRequest [attrs="{req-attrs}"]/>
|
1470
|
+
|
1471
|
+
<GetZimletStatusResponse>
|
1472
|
+
<zimlets>
|
1473
|
+
<zimlet name="{zimlet-name}" priority="int" extension="true/false" status="enabled/disabled"/>
|
1474
|
+
...
|
1475
|
+
</zimlets>
|
1476
|
+
<cos name="default">
|
1477
|
+
<zimlet name="{zimlet-name}" extension="true/false" status="enabled/disabled"/>
|
1478
|
+
...
|
1479
|
+
</cos>
|
1480
|
+
...
|
1481
|
+
</GetZimletStatusResponse>
|
1482
|
+
|
1483
|
+
{req-attrs} = comma-seperated list of attrs to return
|
1484
|
+
|
1485
|
+
-----------------------------
|
1486
|
+
|
1487
|
+
# returns the admin extension addon Zimlets.
|
1488
|
+
|
1489
|
+
<GetAdminExtensionZimletsRequest/>
|
1490
|
+
|
1491
|
+
<GetAdminExtensionZimletsResponse>
|
1492
|
+
<zimlets>
|
1493
|
+
<zimlet>
|
1494
|
+
<zimletContext baseUrl="..."/>
|
1495
|
+
<zimlet extension="true" version="{version-string}" name="{zimlet-name}" description="{zimlet-description}">
|
1496
|
+
<include>...</include>+
|
1497
|
+
</zimlet>
|
1498
|
+
</zimlet>
|
1499
|
+
</zimlets>
|
1500
|
+
</GetAdminExtensionZimletsResponse>
|
1501
|
+
|
1502
|
+
-----------------------------
|
1503
|
+
|
1504
|
+
<ModifyZimletRequest>
|
1505
|
+
<zimlet name="{zimlet-name}">
|
1506
|
+
[<status [value="enabled/disabled"]/>]
|
1507
|
+
[<acl [cos="{cos-name}" acl="grant/deny"]/>]
|
1508
|
+
[<priority [value="integer"]/>]
|
1509
|
+
</zimlet>
|
1510
|
+
</ModifyZimletRequest>
|
1511
|
+
|
1512
|
+
<ModifyZimletResponse/>
|
1513
|
+
|
1514
|
+
-----------------------------
|
1515
|
+
|
1516
|
+
<UndeployZimletRequest name="{zimlet-name}"/>
|
1517
|
+
|
1518
|
+
<UndeployZimletResponse/>
|
1519
|
+
|
1520
|
+
-----------------------------
|
1521
|
+
|
1522
|
+
<GetZimletRequest>
|
1523
|
+
<zimlet name="{zimlet-name}"/>
|
1524
|
+
</GetZimletRequest>
|
1525
|
+
|
1526
|
+
<GetZimletResponse>
|
1527
|
+
<zimlet name="{name}" id="{id}" [hasKeyword="{keyword}"]>
|
1528
|
+
<a n="...">...</a>+
|
1529
|
+
</zimlet>
|
1530
|
+
</GetZimletResponse>
|
1531
|
+
|
1532
|
+
-----------------------------
|
1533
|
+
|
1534
|
+
<GetAllZimletsRequest exclude="{exclude}"/>
|
1535
|
+
|
1536
|
+
<GetAllZimletsResponse>
|
1537
|
+
<zimlet name="{name}" id="{id}" [hasKeyword="{keyword}"]>
|
1538
|
+
<a n="...">...</a>+
|
1539
|
+
</zimlet>+
|
1540
|
+
</GetAllZimletsResponse>
|
1541
|
+
|
1542
|
+
Notes:
|
1543
|
+
{exclude} can be "none|extension|mail"
|
1544
|
+
when exclude="extension" is specified the response returns only mail Zimlets
|
1545
|
+
when exclude="mail" is specified the response returns only admin extensions
|
1546
|
+
when exclude = "none" both mail and admin zimlets are returned
|
1547
|
+
|
1548
|
+
default is "none"
|
1549
|
+
-----------------------------
|
1550
|
+
|
1551
|
+
<CreateZimletRequest>
|
1552
|
+
<name>...</name>
|
1553
|
+
<a n="...">...</a>+
|
1554
|
+
</CreateZimletRequest>
|
1555
|
+
|
1556
|
+
<CreateZimletResponse>
|
1557
|
+
<zimlet name="{name}" id="{id}">
|
1558
|
+
<a n="...">...</a>+
|
1559
|
+
</zimlet>
|
1560
|
+
</CreateZimletResponse>
|
1561
|
+
|
1562
|
+
-----------------------------
|
1563
|
+
|
1564
|
+
<DeleteZimletRequest>
|
1565
|
+
<zimlet name="{zimlet-name}"/>
|
1566
|
+
</DeleteZimletRequest>
|
1567
|
+
|
1568
|
+
<DeleteZimletResponse/>
|
1569
|
+
|
1570
|
+
-----------------------------
|
1571
|
+
|
1572
|
+
<DumpSessionsRequest [listSessions="1"] [groupByAccount="1"]/>
|
1573
|
+
|
1574
|
+
<DumpSessionsResponse activeSessions="count">
|
1575
|
+
<soap activeSessions="count" activeAccounts="count">
|
1576
|
+
[ if listSessions set:
|
1577
|
+
[
|
1578
|
+
<s zid="accountId" name="accountName" sid="sessionId" cd="creationDate" ld="lastAccessedDate"
|
1579
|
+
SOAP-SPECIFIC-PARAMETERS, e.g. [notify="0" if noNotify is set]...</s>
|
1580
|
+
]
|
1581
|
+
OR (depends on groupByAccount setting)
|
1582
|
+
[
|
1583
|
+
<zid id="accountId" name="accountName">
|
1584
|
+
<s sid="sessionId" cd="creationDate" ld="lastAccessedDate/>*
|
1585
|
+
</zid>*
|
1586
|
+
]
|
1587
|
+
]
|
1588
|
+
</soap>
|
1589
|
+
|
1590
|
+
<imap>...</imap>
|
1591
|
+
<admin>...</admin>
|
1592
|
+
</DumpSessionsResponse>
|
1593
|
+
|
1594
|
+
If accountName is unvailable for some reason, it will be set to the same as accountId.
|
1595
|
+
|
1596
|
+
-----------------------------
|
1597
|
+
|
1598
|
+
<GetSessionsRequest type="{session-type}" refresh="0|1"
|
1599
|
+
[limit="..."] [offset="..."] [sortBy="{sort-by}"]/>
|
1600
|
+
|
1601
|
+
<GetSessionsResponse more="{more-flag}" [total="{total}"]>
|
1602
|
+
<s zid="accountId" name="accountName" sid="sessionId" cd="creationDate" ld="lastAccessedDate"/>
|
1603
|
+
</GetSessionsResponse>
|
1604
|
+
|
1605
|
+
Notes:
|
1606
|
+
|
1607
|
+
GetSessionsRequest
|
1608
|
+
|
1609
|
+
type = soap|imap|admin
|
1610
|
+
refresh = if 1, ignore any cached results and start fresh.
|
1611
|
+
limit - the number of sessions to return per page (0 is default and means all)
|
1612
|
+
offset - the starting offset (0, 25, etc)
|
1613
|
+
sortBy - nameAsc, nameDesc, createdAsc, createdDesc, accessedAsc, accessedDesc
|
1614
|
+
|
1615
|
+
more-flag = true if more sessions left to return
|
1616
|
+
total = total number of accounts that matched search (not affected by limit/offset)
|
1617
|
+
|
1618
|
+
|
1619
|
+
Access: domain admin sufficient (though a domain admin can't specify "domains" as a type)
|
1620
|
+
|
1621
|
+
-----------------------------
|
1622
|
+
|
1623
|
+
Note: Calendar resource is a special type of Account. The Create, Delete,
|
1624
|
+
Modify, Rename, Get, GetAll, and Search operations are very similar to
|
1625
|
+
those of Account.
|
1626
|
+
|
1627
|
+
|
1628
|
+
<CreateCalendarResourceRequest>
|
1629
|
+
<name>...</name>
|
1630
|
+
<password>...</password>*
|
1631
|
+
<a n="attr-name">...</a>+
|
1632
|
+
</CreateCalendarResourceRequest>
|
1633
|
+
|
1634
|
+
<CreateCalendarResourceResponse>
|
1635
|
+
<calresource name="{name}" id="{id}">
|
1636
|
+
<a n="...">...</a>+
|
1637
|
+
</calresource>
|
1638
|
+
</CreateCalendarResourceResponse>
|
1639
|
+
|
1640
|
+
Notes:
|
1641
|
+
|
1642
|
+
name must include domain (uid@name), and domain specified in name must exist
|
1643
|
+
|
1644
|
+
a calendar resource does not have a password (you can't login as a resource)
|
1645
|
+
|
1646
|
+
Access: domain admin sufficient
|
1647
|
+
|
1648
|
+
-----------------------------
|
1649
|
+
|
1650
|
+
<DeleteCalendarResourceRequest>
|
1651
|
+
<id>{value-of-zimbraId}</id>
|
1652
|
+
</DeleteCalendarResourceRequest>
|
1653
|
+
|
1654
|
+
<DeleteCalendarResourceResponse/>
|
1655
|
+
|
1656
|
+
Access: domain admin sufficient
|
1657
|
+
|
1658
|
+
note: this request is by default proxied to the resource's home server
|
1659
|
+
|
1660
|
+
-----------------------------
|
1661
|
+
|
1662
|
+
<ModifyCalendarResourceRequest>
|
1663
|
+
<id>{value-of-zimbraId}</id>
|
1664
|
+
<a n="...">...</a>+
|
1665
|
+
</ModifyCalendarResourceRequest>
|
1666
|
+
|
1667
|
+
<ModifyCalendarResourceResponse>
|
1668
|
+
<calresource name="{name}" id="{id}">
|
1669
|
+
<a n="...">...</a>+
|
1670
|
+
</calresource>
|
1671
|
+
</ModifyCalendarResourceResponse>
|
1672
|
+
|
1673
|
+
Notes:
|
1674
|
+
|
1675
|
+
an empty attribute value removes the specified attr
|
1676
|
+
|
1677
|
+
Access: domain admin sufficient. limited set of attributes that can be updated by a domain admin.
|
1678
|
+
|
1679
|
+
note: this request is by default proxied to the resource's home server
|
1680
|
+
|
1681
|
+
-----------------------------
|
1682
|
+
|
1683
|
+
<RenameCalendarResourceRequest>
|
1684
|
+
<id>{value-of-zimbraId}</id>
|
1685
|
+
<newName>{new-resource-name}</newName>
|
1686
|
+
</RenameCalendarResourceRequest>
|
1687
|
+
|
1688
|
+
<RenameCalendarResourceResponse>
|
1689
|
+
<calresource name="{name}" id="{id}">
|
1690
|
+
<a n="...">...</a>+
|
1691
|
+
</calresource>
|
1692
|
+
</RenameCalendarResourceResponse>
|
1693
|
+
|
1694
|
+
Access: domain admin sufficient
|
1695
|
+
|
1696
|
+
note: this request is by default proxied to the resource's home server
|
1697
|
+
|
1698
|
+
-----------------------------
|
1699
|
+
|
1700
|
+
<GetCalendarResourceRequest [applyCos="{apply-cos}"] [attrs="{req-attrs}"]>
|
1701
|
+
<calresource by="id|name|foreignPrincipal">...</calresource>
|
1702
|
+
</GetCalendarResourceRequest>
|
1703
|
+
|
1704
|
+
<GetCalendarResourceResponse>
|
1705
|
+
<calresource name="{name}" id="{id}">
|
1706
|
+
<a n="...">...</a>+
|
1707
|
+
</calresource>
|
1708
|
+
</GetCalendarResourceResponse>
|
1709
|
+
|
1710
|
+
{apply-cos} = 0|1 (1 is default)
|
1711
|
+
|
1712
|
+
if {apply-cos} is 1, then COS rules apply and unset attrs on the calendar resource will get their value from the COS.
|
1713
|
+
|
1714
|
+
if {apply-cos} is 0, then only attributes directly set on the calendar resource will be returned
|
1715
|
+
|
1716
|
+
{req-attrs} = comma-seperated list of attrs to return
|
1717
|
+
|
1718
|
+
Access: domain admin sufficient
|
1719
|
+
|
1720
|
+
-----------------------------
|
1721
|
+
|
1722
|
+
<GetAllCalendarResourcesRequest>
|
1723
|
+
[<domain by="id|name">...</domain>]
|
1724
|
+
[<server by="id|name">...</server>]
|
1725
|
+
<GetAllCalendarResourcesRequest/>
|
1726
|
+
|
1727
|
+
<GetAllCalendarResourcesResponse>
|
1728
|
+
<calresource name="{name}" id="{id}">
|
1729
|
+
<a n="...">...</a>+
|
1730
|
+
</calresource>
|
1731
|
+
</GetAllCalendarResourcesResponse>
|
1732
|
+
|
1733
|
+
Access: domain admin sufficient
|
1734
|
+
|
1735
|
+
-----------------------------
|
1736
|
+
|
1737
|
+
<SearchCalendarResourcesRequest [limit="..."] [offset="..."] [domain="{domain-name}"] [applyCos="{apply-cos}"]
|
1738
|
+
[attrs="a1,a2,a3"] [sortBy="{sort-by}"] [sortAscending="{sort-ascending}"] >
|
1739
|
+
<searchFilter> ... </searchFilter>
|
1740
|
+
</SearchCalendarResourcesRequest>
|
1741
|
+
|
1742
|
+
<SearchCalendarResourcesResponse more="{more-flag}" [searchTotal="{search-total}"]>
|
1743
|
+
<calresource name="{name}" id="{id}">
|
1744
|
+
<a n="...">...</a>+
|
1745
|
+
</calresource>
|
1746
|
+
</SearchCalendarResourcesResponse>
|
1747
|
+
|
1748
|
+
Notes:
|
1749
|
+
SearchCalendarResourcesRequest
|
1750
|
+
limit - the number of calendar resources to return (0 is default and means all)
|
1751
|
+
offset - the starting offset (0, 25, etc)
|
1752
|
+
domain - the domain name to limit the search to
|
1753
|
+
applyCos - whether or not (0/1) to apply the COS policy to calendar resource. specify 0 if only
|
1754
|
+
requesting attrs that aren't inherited from COS
|
1755
|
+
attrs - comma-seperated list of attrs to return ("displayName", "zimbraId", "zimbraAccountStatus")
|
1756
|
+
sortBy - name of attribute to sort on. default is the calendar resource name.
|
1757
|
+
sortAscending - whether to sort in ascending order (0/1), 1 is default
|
1758
|
+
more-flag = true if more calendar resources left to return
|
1759
|
+
search-total = total number of calendar resources that matched search (not affected by limit/offset)
|
1760
|
+
|
1761
|
+
searchFilter: See SearchCalendarResourcesRequest section in soap.txt.
|
1762
|
+
|
1763
|
+
Access: domain admin sufficient
|
1764
|
+
|
1765
|
+
-----------------------------
|
1766
|
+
|
1767
|
+
Get a count of all the mail queues by counting the number of files in
|
1768
|
+
the queue directories. Note that the admin server waits for queue
|
1769
|
+
counting to complete before responding - client should invoke requests
|
1770
|
+
for different servers in parallel.
|
1771
|
+
|
1772
|
+
<GetMailQueueInfoRequest>
|
1773
|
+
<server name="{mta-server}"/>
|
1774
|
+
</GetMailQueueInfoRequest>
|
1775
|
+
|
1776
|
+
<GetMailQueueInfoResponse/>
|
1777
|
+
<server name="{mta-server}">
|
1778
|
+
<queue name="deferred" n="{N}"/>
|
1779
|
+
<queue name="incoming" n="{N}"/>
|
1780
|
+
<queue name="active" n="{N}"/>
|
1781
|
+
<queue name="hold" n="{N}"/>
|
1782
|
+
<queue name="corrupt" n="{N}"/>
|
1783
|
+
</server>
|
1784
|
+
</GetMailQueueInfoResponse>
|
1785
|
+
|
1786
|
+
-----------------------------
|
1787
|
+
|
1788
|
+
Summarize and/or search a particular mail queue on a particular
|
1789
|
+
server. The admin SOAP server initiates a MTA queue scan (via ssh)
|
1790
|
+
and then caches the result of the queue scan. To force a queue scan,
|
1791
|
+
specify scan=1 in the request.
|
1792
|
+
|
1793
|
+
The response has two parts.
|
1794
|
+
|
1795
|
+
- <qs> elements summarize queue by various types of data (sender
|
1796
|
+
addresss, recipient domain, etc). Only the deferred queue has error
|
1797
|
+
summary type.
|
1798
|
+
|
1799
|
+
- <qi> elements list the various queue items that match the requested
|
1800
|
+
query.
|
1801
|
+
|
1802
|
+
The stale-flag in the response means that since the scan, some queue
|
1803
|
+
action was done and the data being presented is now stale. This
|
1804
|
+
allows us to let the user dictate when to do a queue scan.
|
1805
|
+
|
1806
|
+
The scan-flag in the response indicates that the server has not
|
1807
|
+
completed scanning the MTA queue, and that this scan is in progress,
|
1808
|
+
and the client should ask again in a little while.
|
1809
|
+
|
1810
|
+
The more-flag in the response indicates that more qi's are available
|
1811
|
+
past the limit specified in the request.
|
1812
|
+
|
1813
|
+
<GetMailQueueRequest>
|
1814
|
+
<server name="{mta-server}">
|
1815
|
+
<queue name="{queue-name}" [scan="{0,1}"] [wait={seconds}]>
|
1816
|
+
<query [offset={offset}] [limit={limit}]>
|
1817
|
+
<field name="{field1}">
|
1818
|
+
<match value="{value1}"/> # OR's all values
|
1819
|
+
<match value="{value2}"/>
|
1820
|
+
<match value="{value3}"/>
|
1821
|
+
</field>
|
1822
|
+
<field name="{field2}"> # AND's all fields
|
1823
|
+
<match value="{value3}"/>
|
1824
|
+
<match value="{value5}"/>
|
1825
|
+
</field>
|
1826
|
+
</query>
|
1827
|
+
</queue>
|
1828
|
+
</server>
|
1829
|
+
<GetMailQueueRequest>
|
1830
|
+
|
1831
|
+
<GetMailQueueResponse>
|
1832
|
+
<server name="{mta-server}">
|
1833
|
+
<queue name="{queue-name}" stale="{stale-flag}" time="{scan-time}" more="{more-flag}" scan="{scan-flag} total="{total}">
|
1834
|
+
|
1835
|
+
<qs type="reason|to|from|todomain|fromdomain|addr|host">
|
1836
|
+
<qsi n="{count}" t="{text-for-item}">+
|
1837
|
+
</qs>+
|
1838
|
+
|
1839
|
+
<qi id="{id}" from="{sender}" to="{recipients-comma-seperated}"
|
1840
|
+
time="{arrival-time}" filter="{content-filter}"
|
1841
|
+
addr="{origin-ip-address} host="{origin-host-name}"/>+
|
1842
|
+
</queue>
|
1843
|
+
</server>
|
1844
|
+
</GetMailQueueResponse>
|
1845
|
+
|
1846
|
+
Example of qs node is:
|
1847
|
+
|
1848
|
+
<qs type="fromdomain">
|
1849
|
+
<item n="10" t="yahoo.com"/>
|
1850
|
+
<item n="10" t="google.com"/>
|
1851
|
+
</qs>
|
1852
|
+
|
1853
|
+
<qs type="reason">
|
1854
|
+
<item n="10" t="connect to 10.10.20.40 failed"/>
|
1855
|
+
<item n="10" t="connect to 10.10.20.50 timed out"/>
|
1856
|
+
</qs>
|
1857
|
+
|
1858
|
+
Example of qi nodes:
|
1859
|
+
|
1860
|
+
<qi id="ABCDEF1234"
|
1861
|
+
from="jack@example.com"
|
1862
|
+
to="foo@example.com,bar@example.com"
|
1863
|
+
time="1142622329" XXX - should this be in milliseconds?
|
1864
|
+
filter="smtp-amavis:[127.0.0.1]:10024"
|
1865
|
+
addr="10.10.130.27"
|
1866
|
+
host="phillip.liquidsys.com">
|
1867
|
+
|
1868
|
+
-----------------------------
|
1869
|
+
|
1870
|
+
Command to act on invidual queue files. This proxies through to
|
1871
|
+
postsuper. list-of-ids can be ALL.
|
1872
|
+
|
1873
|
+
<MailQueueActionRequest>
|
1874
|
+
<server name="{mta-server}">
|
1875
|
+
<queue name="{queue-name}">
|
1876
|
+
<action op="delete|hold|release|requeue"/ by="id|query">
|
1877
|
+
{list-of-ids|}
|
1878
|
+
||
|
1879
|
+
{<query> # just like GetMailQueue
|
1880
|
+
<field name="name">
|
1881
|
+
<match value="val"/>
|
1882
|
+
</field>
|
1883
|
+
</query>}
|
1884
|
+
</action>
|
1885
|
+
</queue>
|
1886
|
+
</server>
|
1887
|
+
</MailQueueActionRequest>
|
1888
|
+
|
1889
|
+
<MailQueueActionResponse>
|
1890
|
+
- response is same as GetMailQueueResponse above.
|
1891
|
+
</MailQueueActionResponse>
|
1892
|
+
|
1893
|
+
-----------------------------
|
1894
|
+
|
1895
|
+
Command to invoke postqueue -f. All queues cached in the server are
|
1896
|
+
are stale after invoking this because this is a global operation to
|
1897
|
+
all the queues in a given server.
|
1898
|
+
|
1899
|
+
<MailQueueFlushRequest>
|
1900
|
+
<server name="{mta-server}">
|
1901
|
+
</MailQueueFlushRequest>
|
1902
|
+
|
1903
|
+
<MailQueueFlushResponse/>
|
1904
|
+
|
1905
|
+
-----------------------------
|
1906
|
+
|
1907
|
+
[Deprecated since 7.0]
|
1908
|
+
|
1909
|
+
Initializes the Notebook account used for public folder and templates.
|
1910
|
+
|
1911
|
+
{template-dir} is a directory on the server that contains the Wiki
|
1912
|
+
templates. {template-folder} is a folder in the Mailbox that
|
1913
|
+
the templates are being imported to. The default value of {template-folder}
|
1914
|
+
is "Template" folder.
|
1915
|
+
|
1916
|
+
When the element template is present in the request,
|
1917
|
+
the server will populate the template directory of the account
|
1918
|
+
with the template files in the directory.
|
1919
|
+
|
1920
|
+
If the optional element domain is present, it will create the domain
|
1921
|
+
level wiki account used for public wiki folder for the domain.
|
1922
|
+
|
1923
|
+
If the optional element account is present, the value will be used to
|
1924
|
+
create the account, and then sets either zimbraNotebookDefaultAccount
|
1925
|
+
or zimbraNotebookDomainAccount LDAP attribute.
|
1926
|
+
|
1927
|
+
<InitNotebookRequest>
|
1928
|
+
[<template dest="{template-folder}">{template-dir}</template>]
|
1929
|
+
[<name>...</name>]
|
1930
|
+
[<password>...</password>]
|
1931
|
+
[<domain by="id|name">...</domain>]
|
1932
|
+
</InitNotebookRequest>
|
1933
|
+
|
1934
|
+
<InitNotebookResponse/>
|
1935
|
+
|
1936
|
+
-----------------------------
|
1937
|
+
|
1938
|
+
<CreateDataSourceRequest/>
|
1939
|
+
<id>{account-id}</id>
|
1940
|
+
<dataSource type="pop3" name="{data-source-name}">
|
1941
|
+
<a n="zimbraDataSourceName">My POP3 Account</a>
|
1942
|
+
<a n="zimbraDataSourceIsEnabled">TRUE</a>
|
1943
|
+
<a n="zimbraDataSourceHost">pop.myisp.com</a>
|
1944
|
+
<a n="zimbraDataSourcePort">110</a>
|
1945
|
+
<a n="zimbraDataSourceUsername">mylogin</a>
|
1946
|
+
<a n="zimbraDataSourcePassword">mypassword</a>
|
1947
|
+
<a n="zimbraDataSourceFolderId">{folder-id}</a>
|
1948
|
+
</dataSource>
|
1949
|
+
</CreateDataSourceRequest>
|
1950
|
+
|
1951
|
+
<CreateDataSourceResponse>
|
1952
|
+
<dataSource type="{type}" name="..." id="...">
|
1953
|
+
<a n="...">{value}</a>+
|
1954
|
+
</dataSource>
|
1955
|
+
</CreateDataSourceResponse>
|
1956
|
+
|
1957
|
+
Creates a data source that imports mail items into the specified folder. Currently
|
1958
|
+
the only type supported is pop3.
|
1959
|
+
|
1960
|
+
every attribute value is returned except password.
|
1961
|
+
|
1962
|
+
note: this request is by default proxied to the account's home server
|
1963
|
+
|
1964
|
+
---------------------------
|
1965
|
+
|
1966
|
+
<GetDataSourcesRequest>
|
1967
|
+
<id>{account-id}</id>
|
1968
|
+
</GetDataSourcesRequest>
|
1969
|
+
|
1970
|
+
<GetDataSourcesResponse>
|
1971
|
+
|
1972
|
+
<dataSource type="{type}" name="..." id="...">
|
1973
|
+
<a n="...">{value}</a>+
|
1974
|
+
</dataSource>
|
1975
|
+
...
|
1976
|
+
</GetDataSourcesResponse>
|
1977
|
+
|
1978
|
+
Returns all data sources defined for the given mailbox. For each data source,
|
1979
|
+
every attribute value is returned except password.
|
1980
|
+
|
1981
|
+
note: this request is by default proxied to the account's home server
|
1982
|
+
|
1983
|
+
---------------------------
|
1984
|
+
|
1985
|
+
<ModifyDataSourceRequest>
|
1986
|
+
<id>{account-id}</id>
|
1987
|
+
<dataSource id="{id}">
|
1988
|
+
<a n="...">{value}</a>+
|
1989
|
+
</dataSource>
|
1990
|
+
</ModifyDataSourceRequest>
|
1991
|
+
|
1992
|
+
<ModifyDataSourceResponse/>
|
1993
|
+
|
1994
|
+
Changes attributes of the given data source. Only the attributes specified in the request
|
1995
|
+
are modified. To change the name, specify "zimbraDataSourceName" as an attribute.
|
1996
|
+
|
1997
|
+
note: this request is by default proxied to the account's home server
|
1998
|
+
|
1999
|
+
---------------------------
|
2000
|
+
|
2001
|
+
<DeleteDataSourceRequest>
|
2002
|
+
<id>{account-id}</id>
|
2003
|
+
<dataSource id="{id}"/>
|
2004
|
+
</DeleteDataSourceRequest>
|
2005
|
+
|
2006
|
+
<DeleteDataSourceResponse/>
|
2007
|
+
|
2008
|
+
Deletes the given data source.
|
2009
|
+
|
2010
|
+
note: this request is by default proxied to the account's home server
|
2011
|
+
|
2012
|
+
---------------------------
|
2013
|
+
|
2014
|
+
<FixCalendarTZRequest
|
2015
|
+
[sync="0|1"] // default 0
|
2016
|
+
// 0 = command returns right away
|
2017
|
+
// 1 = command blocks until processing finishes
|
2018
|
+
[after="millis"] // fix appts/tasks that have instances after this time
|
2019
|
+
// default = January 1, 2008 00:00:00 in GMT+13:00 timezone.
|
2020
|
+
>
|
2021
|
+
<account name="<email>|all"/>+ // list of email addresses, or "all" for all
|
2022
|
+
// accounts on this mailbox server
|
2023
|
+
<tzfixup ... /> // fixup rules
|
2024
|
+
</FixCalendarTZRequest>
|
2025
|
+
|
2026
|
+
<FixCalendarTZResponse/>
|
2027
|
+
|
2028
|
+
Fix timezone definitions in appointments and tasks to reflect changes in
|
2029
|
+
daylight savings time rules in various timezones.
|
2030
|
+
|
2031
|
+
---------------------------
|
2032
|
+
|
2033
|
+
The WaitSet APIs are now in the urn:zimbraMail namespace, and are documented
|
2034
|
+
in soap-waitset.txt
|
2035
|
+
|
2036
|
+
***See soap-waitset.txt for WaitSet API documentation***
|
2037
|
+
|
2038
|
+
---------------------------
|
2039
|
+
|
2040
|
+
# returns admin saved searches.
|
2041
|
+
|
2042
|
+
<GetAdminSavedSearchesRequest>
|
2043
|
+
<search name="{search-name}"/>*
|
2044
|
+
</GetAdminSavedSearchesRequest>
|
2045
|
+
|
2046
|
+
If no <search> is present server will return all saved searches.
|
2047
|
+
|
2048
|
+
<GetAdminSavedSearchesResponse>
|
2049
|
+
<search name="{search-name}">{{search-query}}</search>*
|
2050
|
+
</GetAdminSavedSearchesResponse>
|
2051
|
+
|
2052
|
+
---------------------------
|
2053
|
+
|
2054
|
+
# modifies admin saved searches.
|
2055
|
+
|
2056
|
+
# returns the admin saved searches.
|
2057
|
+
<ModifyAdminSavedSearchesRequest>
|
2058
|
+
{<search name="{search-name}">{search-query}</search>}+
|
2059
|
+
</ModifyAdminSavedSearchesRequest>
|
2060
|
+
|
2061
|
+
If {search-query} is empty => delete the search if it exists
|
2062
|
+
If {search-name} already exists => replace with new {search-query}
|
2063
|
+
If {search-name} does not exist => save as a new search
|
2064
|
+
|
2065
|
+
<ModifyAdminSavedSearchesResponse/>
|
2066
|
+
|
2067
|
+
-----------------------------
|
2068
|
+
|
2069
|
+
# Changes logging settings on a per-account basis.
|
2070
|
+
|
2071
|
+
<AddAccountLoggerRequest>
|
2072
|
+
<account by="id|name">...</account>
|
2073
|
+
<logger category="{category-name | all}" level="debug|info|warn|error"/>
|
2074
|
+
</AddAccountLoggerRequest>
|
2075
|
+
|
2076
|
+
<AddAccountLoggerResponse>
|
2077
|
+
<logger category="{category-name}" level="debug|info|warn|error"/>+
|
2078
|
+
</AddAccountLoggerResponse>
|
2079
|
+
|
2080
|
+
Adds a custom logger for the given account and log category. The logger
|
2081
|
+
stays in effect only during the lifetime of the current server instance.
|
2082
|
+
If the request is sent to a server other than the one that the account
|
2083
|
+
resides on, it is proxied to the correct server.
|
2084
|
+
|
2085
|
+
If the category is "all", adds a custom logger for every category
|
2086
|
+
for the given user.
|
2087
|
+
|
2088
|
+
<RemoveAccountLoggerRequest>
|
2089
|
+
[<account by="id|name">...</account>]
|
2090
|
+
[<logger category="{category-name}"/>]
|
2091
|
+
</RemoveAccountLoggerRequest>
|
2092
|
+
|
2093
|
+
<RemoveAccountLoggerResponse/>
|
2094
|
+
|
2095
|
+
Removes one or more custom loggers. If both the account and logger are
|
2096
|
+
specified, removes the given account logger if it exists. If only the account
|
2097
|
+
is specified or the category is "all", removes all custom loggers from that
|
2098
|
+
account. If only the logger is specified, removes that custom logger from all
|
2099
|
+
accounts. If neither element is specified, removes all custom loggers from
|
2100
|
+
all accounts on the server that receives the request.
|
2101
|
+
|
2102
|
+
|
2103
|
+
<GetAccountLoggersRequest>
|
2104
|
+
<account by="id|name">...</account>
|
2105
|
+
</GetAccountLoggersRequest>
|
2106
|
+
|
2107
|
+
<GetAccountLoggersResponse>
|
2108
|
+
<logger category="{category-name} level="debug|info|warn|error"/>*
|
2109
|
+
</GetAccountLoggersResponse>
|
2110
|
+
|
2111
|
+
Returns custom loggers created for the given account since the
|
2112
|
+
last server start. If the request is sent to a server other than the
|
2113
|
+
one that the account resides on, it is proxied to the correct server.
|
2114
|
+
|
2115
|
+
|
2116
|
+
<GetAllAccountLoggersRequest/>
|
2117
|
+
|
2118
|
+
<GetAllAccountLoggersResponse>
|
2119
|
+
<accountLogger id="{account-id}" name="{account-name}">
|
2120
|
+
<logger category="{category-name} level="debug|info|warn|error"/>+
|
2121
|
+
</accountLogger>*
|
2122
|
+
</GetAllAccountLoggersResponse>
|
2123
|
+
|
2124
|
+
Returns all account loggers that have been created on the given server
|
2125
|
+
since the last server start.
|
2126
|
+
|
2127
|
+
-----------------------------
|
2128
|
+
|
2129
|
+
# Check existence of one or more directories and optionally create them.
|
2130
|
+
|
2131
|
+
<CheckDirectoryRequest>
|
2132
|
+
<directory path="{path}" [create="0|1"]/>+
|
2133
|
+
</CheckDirectoryRequest>
|
2134
|
+
|
2135
|
+
path = full path to the directory
|
2136
|
+
create = default 0; if 1, create the directory if it doesn't exist
|
2137
|
+
|
2138
|
+
<CheckDirectoryResponse>
|
2139
|
+
<directory path="{path}" // same path as in the request
|
2140
|
+
exists="1|0" // path exists, or not
|
2141
|
+
isDirectory="1|0" // path is a directory, or not
|
2142
|
+
readable="1|0" // path is readable, or not
|
2143
|
+
writable="1|0"/>+ // path is writable, or not
|
2144
|
+
</CheckDirectoryResponse>
|
2145
|
+
|
2146
|
+
-----------------------------
|
2147
|
+
|
2148
|
+
# Flush memory cache for specified LDAP or directory scan type/entries
|
2149
|
+
|
2150
|
+
<FlushCacheRequest>
|
2151
|
+
<cache type="skin|locale|account|cos|domain|server|zimlet" [allServers="1|0"]>
|
2152
|
+
[<entry by={id|name}>value</entry>+]
|
2153
|
+
</cache>
|
2154
|
+
</FlushCacheRequest>
|
2155
|
+
|
2156
|
+
allServers:
|
2157
|
+
0 (default) = flush cache only on the local server
|
2158
|
+
1 = flush cache on all servers (this can take on systems with lots of servers)
|
2159
|
+
|
2160
|
+
|
2161
|
+
Directory scan caches(source of data is on local disk of the server):
|
2162
|
+
skin|locale
|
2163
|
+
|
2164
|
+
LDAP caches(source of data is LDAP):
|
2165
|
+
account|cos|domain|server|zimlet
|
2166
|
+
|
2167
|
+
For LDAP caches, one or more optional <entry> can be specified.
|
2168
|
+
If <entry>(s) are specified, only the specified entries will be flushed.
|
2169
|
+
If no <entry> is given, all enties of the type will be flushed from cache.
|
2170
|
+
|
2171
|
+
type can contain a combination of skin, locale and zimlet. E.g. type='skin,locale,zimlet' or type='zimletskin'
|
2172
|
+
<FlushCacheResponse/>
|
2173
|
+
|
2174
|
+
|
2175
|
+
-----------------------------
|
2176
|
+
|
2177
|
+
# count number of accounts by cos in a domain,
|
2178
|
+
|
2179
|
+
<CountAccountRequest>
|
2180
|
+
<domain by="{domain-by}">...</domain>
|
2181
|
+
</CountAccountRequest>
|
2182
|
+
|
2183
|
+
|
2184
|
+
<CountAccountResponse>
|
2185
|
+
<cos id="{cos-id}" name="cos-name">{account-count}</cos>+
|
2186
|
+
</CountAccountResponse>
|
2187
|
+
|
2188
|
+
Note, it doesn't include any account with zimbraIsSystemResource=TRUE,
|
2189
|
+
nor does it include any calendar resources.
|
2190
|
+
|
2191
|
+
|
2192
|
+
|
2193
|
+
e.g.
|
2194
|
+
<CountAccountResponse>
|
2195
|
+
<cos id="044382d5-f2c5-4265-9a1a-ac255fce729f" name="basic">123</cos>
|
2196
|
+
<cos id="723d7cf6-8d76-443a-b5f3-c56563a8b4c7" name="standard">456</cos>
|
2197
|
+
<cos id="35c6e603-123a-4a08-b485-b00e1f6d1663" name="premium">789</cos>
|
2198
|
+
<cos id="35c6e603-123a-4a08-b485-b00e1f6d1663" name="default">55</cos>
|
2199
|
+
</CountAccountResponse>
|
2200
|
+
|
2201
|
+
|
2202
|
+
|
2203
|
+
---------------------------------------------------------------------------
|
2204
|
+
# Get server's network interfaces. Returns IP addresses and net masks
|
2205
|
+
# This call will use zmrcd to call /opt/zimbra/libexec/zmserverips
|
2206
|
+
|
2207
|
+
<GetServerNIfsRequest>
|
2208
|
+
<server by="id|name|serviceHostname">...</server>
|
2209
|
+
</GetServerNIfsRequest>
|
2210
|
+
|
2211
|
+
<GetServerNIfsResponse>
|
2212
|
+
<ni>
|
2213
|
+
<a n="addr">ip address</a>
|
2214
|
+
<a n="mask">network mask</a>
|
2215
|
+
</ni>*
|
2216
|
+
</GetServerNIfsResponse>
|
2217
|
+
|
2218
|
+
---------------------------------------------------------------------------
|
2219
|
+
|
2220
|
+
# free/busy providers
|
2221
|
+
|
2222
|
+
<GetAllFreeBusyProvidersRequest/>
|
2223
|
+
|
2224
|
+
<GetAllFreeBusyProvidersResponse>
|
2225
|
+
[<provider name="{provider-name}" propagate="{1|0}" queue="{location-of-the-queue}" prefix="{prefix-used-in-zimbraForeignPrincipal}" start="{seconds-since-epoch of free/busy cache start time}" end="{seconds-since-epoch of free/busy cache end time}"/>]+
|
2226
|
+
</GetAllFreeBusyProvidersResponse>
|
2227
|
+
|
2228
|
+
---------------------------------------------------------------------------
|
2229
|
+
|
2230
|
+
# if the optional element <provider/> is present in the request, the response
|
2231
|
+
# contains the requested provider only. if no provider is supplied in the
|
2232
|
+
# request, the response contains all the providers.
|
2233
|
+
|
2234
|
+
<GetFreeBusyQueueInfoRequest>
|
2235
|
+
[<provider name="{provider-name}"/>]
|
2236
|
+
</GetFreeBusyQueueInfoRequest>
|
2237
|
+
|
2238
|
+
<GetFreeBusyQueueInfoResponse>
|
2239
|
+
[
|
2240
|
+
<provider name="{provider-name}">
|
2241
|
+
[<account id="{account-id}"/>]+
|
2242
|
+
</provider>
|
2243
|
+
]+
|
2244
|
+
</GetFreeBusyQueueInfoResponse>
|
2245
|
+
|
2246
|
+
---------------------------------------------------------------------------
|
2247
|
+
|
2248
|
+
# the request must include either <domain/> or <account/>
|
2249
|
+
# when <domain/> is specified in the request, the server will push
|
2250
|
+
# the free/busy for all the accounts in the domain to the configured
|
2251
|
+
# free/busy providers.
|
2252
|
+
# when <account/> list is specified, the server will push the free/busy
|
2253
|
+
# for the listed accounts to the providers.
|
2254
|
+
|
2255
|
+
<PushFreeBusyRequest>
|
2256
|
+
[<domain name="{comma separated list of domains}"/>]
|
2257
|
+
[<account id="{account-id}"/>]+
|
2258
|
+
</PushFreeBusyRequest>
|
2259
|
+
|
2260
|
+
<PushFreeBusyResponse/>
|
2261
|
+
|
2262
|
+
----------------------------------------
|
2263
|
+
|
2264
|
+
# purges the queue for the given freebusy provider on the current host.
|
2265
|
+
|
2266
|
+
<PurgeFreeBusyQueueRequest>
|
2267
|
+
[<provider name="{provider-name}"/>]
|
2268
|
+
</PurgeFreeBusyQueueRequest>
|
2269
|
+
|
2270
|
+
<PurgeFreeBusyQueueResponse/>
|
2271
|
+
|
2272
|
+
----------------------------------------
|
2273
|
+
|
2274
|
+
<CheckExchangeAuthRequest>
|
2275
|
+
<auth url="{url-to-exchange-server}" user="{exchange-user-name}" pass="{exchange-password}" scheme="basic|form" />
|
2276
|
+
</CheckExchangeAuthRequest>
|
2277
|
+
|
2278
|
+
<CheckExchangeAuthResponse>
|
2279
|
+
<code>...</code>
|
2280
|
+
<message>...</message>*
|
2281
|
+
</CheckExchangeAuthResponse>
|
2282
|
+
|
2283
|
+
----------------------------------------
|
2284
|
+
|
2285
|
+
<GetAllLocalesRequest/>
|
2286
|
+
|
2287
|
+
<GetAllLocalesResponse>
|
2288
|
+
<locale id="en_US" name="English (United States)"/>
|
2289
|
+
...
|
2290
|
+
</GetAllLocalesResponse>
|
2291
|
+
|
2292
|
+
Returns all locales defined in the system. This is the same list returned by
|
2293
|
+
java.util.Locale.getAvailableLocales(), sorted by display name (name attribute).
|
2294
|
+
|
2295
|
+
----------------------------------------
|
2296
|
+
|
2297
|
+
<PurgeAccountCalendarCacheRequest id="{value-of-zimbraId}"/>
|
2298
|
+
|
2299
|
+
<PurgeAccountCalendarCacheRequest/>
|
2300
|
+
|
2301
|
+
Access: domain admin sufficient
|
2302
|
+
|
2303
|
+
Purge the calendar cache for an account.
|
2304
|
+
note: this request is by default proxied to the account's home server
|
2305
|
+
|
2306
|
+
----------------------------------------
|
2307
|
+
|
2308
|
+
<PublishShareInfoRequest>
|
2309
|
+
<dl by="id|name">...</dl>
|
2310
|
+
<share action="{add|remove}">
|
2311
|
+
<owner by="id|name|foreignPrincipal">...</owner>
|
2312
|
+
[<folder [l="{base-folder-id}"] [path="{fully-qualified-path}"] [pathOrId="{folder-path-or-id}"]/>]
|
2313
|
+
</share>
|
2314
|
+
</PublishShareInfoRequest>
|
2315
|
+
|
2316
|
+
Publish share info on the specified DL shared by an owner.
|
2317
|
+
Folders shared by the <owner> with the DL or any of the DL's parent group can be published.
|
2318
|
+
|
2319
|
+
e.g. if owner O shares /Inbox with DL-A, and DL-B is a member of DL-A,
|
2320
|
+
the share can be published on DL-A and/or DL-B.
|
2321
|
+
|
2322
|
+
Notes:
|
2323
|
+
- in <folder>, only one of l, path, or pathOrId can be specified.
|
2324
|
+
If pathOrId is specified, server will first treat {folder-path-or-id} as a path and try to
|
2325
|
+
find the folder by path; if there is no such folder, server will then treat {folder-path-or-id}
|
2326
|
+
as a folder id and try to find the folder by id. If <folder> is omitted, server will
|
2327
|
+
iterate through all folders of the owner and publish any shares granted to the DL or any of the
|
2328
|
+
DL's parent DL.
|
2329
|
+
|
2330
|
+
<PublishShareInfoResponse/>
|
2331
|
+
|
2332
|
+
Notes:
|
2333
|
+
|
2334
|
+
Access: domain admin sufficient.
|
2335
|
+
note: this request is by default proxied to the owner's home server
|
2336
|
+
|
2337
|
+
----------------------------------------
|
2338
|
+
|
2339
|
+
<GetPublishedShareInfoRequest>
|
2340
|
+
<dl by="id|name">...</dl>
|
2341
|
+
[<owner by="{owner-by}">...</owner>]
|
2342
|
+
</GetPublishedShareInfoRequest>
|
2343
|
+
|
2344
|
+
Get share info published on the <dl>.
|
2345
|
+
If <owner> is specified, returns only shares owned by the owner. Otherwise returns all
|
2346
|
+
shares published on the <dl>.
|
2347
|
+
|
2348
|
+
<GetPublishedShareInfoResponse>
|
2349
|
+
[<share ownerId="{owner-id}" ownerEmail={owner-email} [ownerName="{owner-display-name}"]
|
2350
|
+
folderId="{folder-id}" folderPath="{fully-qualified-path}"
|
2351
|
+
view="{default-type}" rights="{rights}"
|
2352
|
+
granteeType="{grantee-type}" granteeId="{grantee-id}" granteeName="{grantee-name}" [granteeDisplayName="{grantee-display-name}">]]+
|
2353
|
+
</GetPublishedShareInfoResponse>
|
2354
|
+
|
2355
|
+
----------------------------------------
|
2356
|
+
|
2357
|
+
<GetShareInfoRequest>
|
2358
|
+
[<grantee type="{grantee_type}" [id="{grantee-id}"] [name="{grantee-name}"]/>]
|
2359
|
+
<owner by="{owner-by}">...</owner>
|
2360
|
+
</GetShareInfoRequest>
|
2361
|
+
|
2362
|
+
Iterate through all folders of the owner's mailbox and return shares that match
|
2363
|
+
grantees specified by the <grantee> specifier.
|
2364
|
+
|
2365
|
+
e.g.
|
2366
|
+
|
2367
|
+
<GetShareInfoRequest>
|
2368
|
+
<grantee name="dl@test.com"/>]
|
2369
|
+
<owner by="name">user1@test.com</owner>
|
2370
|
+
</GetShareInfoRequest>
|
2371
|
+
|
2372
|
+
returns all shares owned by user1@test.com that are shared with dl@test.com.
|
2373
|
+
|
2374
|
+
<GetShareInfoResponse>
|
2375
|
+
[<share ownerId="{owner-id}" ownerEmail={owner-email} [ownerName="{owner-display-name}"]
|
2376
|
+
folderId="{folder-id}" folderPath="{fully-qualified-path}"
|
2377
|
+
view="{default-type}" rights="{rights}"
|
2378
|
+
granteeType="{grantee-type}" granteeId="{grantee-id}" granteeName="{grantee-name}" [granteeDisplayName="{grantee-display-name}">]]+
|
2379
|
+
</GetShareInfoResponse>
|
2380
|
+
|
2381
|
+
|
2382
|
+
----------------------------
|
2383
|
+
|
2384
|
+
<CreateGalSyncAccountRequest name="{identifier}" domain="{domain-name}" type="zimbra|ldap" [folder="{contact-folder-name}"] >
|
2385
|
+
<account by="id|name">...</account>
|
2386
|
+
<a n="attr-name">...</a>+
|
2387
|
+
</CreateGalSyncAccountRequest>
|
2388
|
+
|
2389
|
+
<CreateGalSyncAccountResponse>
|
2390
|
+
<name>...</name>
|
2391
|
+
<account name="{name}" id="{id}"/>
|
2392
|
+
</CreateGalSyncAccountResponse>
|
2393
|
+
|
2394
|
+
Notes:
|
2395
|
+
|
2396
|
+
- if the referenced account is not found it will be created.
|
2397
|
+
- the identifier used in name attr is used for SyncGal and SearchGal.
|
2398
|
+
- name attribute is for the name of the data source.
|
2399
|
+
- if folder attr is not present it'll default to Contacts folder.
|
2400
|
+
- passed in attrs in <a/> are used to initialize the gal data source.
|
2401
|
+
|
2402
|
+
|
2403
|
+
example for creating gal sync account for Zimbra LDAP server.
|
2404
|
+
|
2405
|
+
<CreateGalSyncAccountRequest name="zimbra" domain="mydomain.com" type="zimbra">
|
2406
|
+
<account by="name">gal@mydomain.com</account>
|
2407
|
+
</CreateGalSyncAccountRequest>
|
2408
|
+
|
2409
|
+
example for creating domain gal sync account.
|
2410
|
+
|
2411
|
+
<CreateGalSyncAccountRequest name="mydomain" domain="mydomain.com" type="ldap">
|
2412
|
+
<account by="name">gal@mydomain.com</account>
|
2413
|
+
<a n="zimbraGalSyncLdapURL">ldap://ldap.mydomain.com</a>
|
2414
|
+
<a n="zimbraGalSyncLdapStartTlsEnabled">TRUE</a>
|
2415
|
+
<a n="zimbraGalSyncLdapSearchBase">cn=users</a>
|
2416
|
+
<a n="zimbraGalSyncLdapAuthMech">simple</a>
|
2417
|
+
<a n="zimbraGalSyncLdapBindDn">uid=admin,cn=users</a>
|
2418
|
+
<a n="zimbraGalSyncLdapBindPassword">password</a>
|
2419
|
+
<a n="zimbraGalSyncLdapFilter">(&(mail=*)(objectClass=user))</a>
|
2420
|
+
<a n="zimbraGalLdapAttrMap">whenChanged,modifyTimeStamp=modifyTimeStamp</a>
|
2421
|
+
<a n="zimbraGalLdapAttrMap">whenCreated,createTimeStamp=createTimeStamp</a>
|
2422
|
+
<a n="zimbraGalLdapAttrMap">zimbraMailDeliveryAddress,zimbraMailAlias,mail=email,email2,email3,email4,email5,email6,email7,email8,email9,email10,email11,email12,email13,email14,email15,email16</a>
|
2423
|
+
</CreateGalSyncAccountRequest>
|
2424
|
+
|
2425
|
+
Access: domain admin sufficient
|
2426
|
+
|
2427
|
+
----------------------------
|
2428
|
+
|
2429
|
+
<SyncGalAccountRequest>
|
2430
|
+
<account id="{account-id}">
|
2431
|
+
<datasource by="id|name" [fullSync="true|false"] [reset="true"] />+
|
2432
|
+
</account>+
|
2433
|
+
</SyncGalAccountRequest>
|
2434
|
+
|
2435
|
+
<SyncGalAccountResponse/>
|
2436
|
+
|
2437
|
+
Notes:
|
2438
|
+
|
2439
|
+
If fullSync is set to false (or unset) the default behavior is trickle sync
|
2440
|
+
which will pull in any new contacts or modified contacts since last sync.
|
2441
|
+
|
2442
|
+
If fullSync is set to true, then the server will go through all the contacts
|
2443
|
+
that appear in GAL, and resolve deleted contacts in addition to new or
|
2444
|
+
modified ones.
|
2445
|
+
|
2446
|
+
If reset attribute is set, then all the contacts will be populated again,
|
2447
|
+
regardless of the status since last sync. Reset needs to be done when there
|
2448
|
+
is a significant change in the configuration, such as filter, attribute map,
|
2449
|
+
or search base.
|
2450
|
+
|
2451
|
+
----------------------------
|
2452
|
+
|
2453
|
+
<DeleteGalSyncAccountRequest>
|
2454
|
+
<account by="id|name">...</account>
|
2455
|
+
</DeleteGalSyncAccountRequest>
|
2456
|
+
|
2457
|
+
<DeleteGalSyncAccountResponse/>
|
2458
|
+
|
2459
|
+
Remove its zimbraGalAccountId from the domain, then deletes the account.
|
2460
|
+
|
2461
|
+
----------------------------
|
2462
|
+
|
2463
|
+
<ReloadMemcachedClientConfigRequest/>
|
2464
|
+
|
2465
|
+
<ReloadMemcachedClientConfigResponse/>
|
2466
|
+
|
2467
|
+
Reloads the memcached client configuration on this server. Memcached client layer
|
2468
|
+
is reinitialized accordingly. Call this command after updating memcached server list,
|
2469
|
+
for example.
|
2470
|
+
|
2471
|
+
----------------------------
|
2472
|
+
|
2473
|
+
<GetMemcachedClientConfigRequest/>
|
2474
|
+
|
2475
|
+
<GetMemcachedClientConfigResponse
|
2476
|
+
serverList="..." // comma-separated list of host:port for memcached servers
|
2477
|
+
hashAlgorithm="..." // KETAMA_HASH, etc.
|
2478
|
+
binaryProtocol="1|0" // whether memcached binary protocol is in use
|
2479
|
+
defaultExpirySeconds="..." // default entry expiry in seconds
|
2480
|
+
defaultTimeoutMillis="..." // default timeout in milliseconds
|
2481
|
+
/>
|
2482
|
+
|
2483
|
+
Returns the memcached client configuration on a mailbox server.
|
2484
|
+
|
2485
|
+
----------------------------
|
2486
|
+
|
2487
|
+
<MigrateAccountRequest>
|
2488
|
+
<migrate action="wiki|..."/ id="{zimbraId-of-account}">
|
2489
|
+
</MigrateAccountRequest>
|
2490
|
+
|
2491
|
+
<MigrateAccountResponse/>
|
2492
|
+
|
2493
|
+
----------------------------
|
2494
|
+
|
2495
|
+
<NoOpRequest/>
|
2496
|
+
|
2497
|
+
<NoOpResponse/>
|
2498
|
+
|
2499
|
+
A request that does nothing and always returns nothing. Used to keep an admin session alive.
|
2500
|
+
|
2501
|
+
----------------------------
|
2502
|
+
|
2503
|
+
<ClearCookieRequest>
|
2504
|
+
<cookie name="{cookie-name}"/>+
|
2505
|
+
</ClearCookieRequest>
|
2506
|
+
|
2507
|
+
<ClearCookieResponse/>
|