zimbra_wsdl 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -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">(&amp;(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/>