Overview | Service | Command |
Check conflicts in recurrence against list of users.
Set all attribute to get all instances, even those without conflicts. By default only instances that have
conflicts are returned.
Authorization token required | true |
Admin Authorization token required | false |
<CheckRecurConflictsRequest [s="{start-time-millis} (Long)"] [e="{end-time-millis} (Long)"]
[all="{get-all-instances} (0|1)"] [excludeUid="{exclude-uid}"]> ## CheckRecurConflictsRequest
(<tz id="{timezone-id}" stdoff="{timezone-std-offset} (Integer)" dayoff="{timezone-daylight-offset} (Integer)"
[stdname="..."] [dayname="..."]> ## CalTZInfo
<standard [week="{tzonset-week} (Integer)"] [wkday="{tzonset-day-of-week} (Integer)"]
mon="{tzonset-month} (Integer)" [mday="{tzonset-day-of-month} (Integer)"]
hour="{tzonset-hour} (Integer)" min="{tzonset-minute} (Integer)" sec="{tzonset-second} (Integer)" /> ## TzOnsetInfo
<daylight ... /> ## See /tz/standard [ ## TzOnsetInfo]
</tz>)*
List of any of: {
<cancel [s="{dtstart-millis} (Long)"] [e="{dtend-millis} (Long)"]> ## ExpandedRecurrenceCancel
<exceptId [range="{range-THISANDFUTURE|THISANDPRIOR}"] [d="{DATETIME-YYYYMMDD['T'HHMMSS[Z]]}"]
[tz="{timezone-identifier}"] /> ## InstanceRecurIdInfo
<dur [neg="{duration-negative} (0|1)"] [w="{duration-weeks} (Integer)"] [d="{duration-days} (Integer)"]
[h="{duration-hours} (Integer)"] [m="{duration-minutes} (Integer)"]
[s="{duration-seconds} (Integer)"] [related="{alarm-related}"]
[count="{alarm-repeat-count} (Integer)"] /> ## DurationInfo
<recur> ## RecurrenceInfo
List of any of: {
<add> ## AddRecurrenceInfo
List of any of: {
<add> ... </add> ## See /cancel/recur/add [ ## AddRecurrenceInfo] # [inside itself]
<exclude> ## ExcludeRecurrenceInfo
List of any of: {
<add> ... </add> ## See /cancel/recur/add [ ## AddRecurrenceInfo] # [inside itself]
<exclude> ... </exclude> ## See /cancel/recur/add/exclude [ ## ExcludeRecurrenceInfo] # [inside itself]
<except rangeType="{range-type} (int)" recurId="{YYMMDD[THHMMSS[Z]]}"
[tz="{timezone-name}"] [ridZ="{YYMMDDTHHMMSSZ}"]> ## ExceptionRuleInfo
<add> ... </add> ## See /cancel/recur [ ## RecurrenceInfo] # [inside itself]
<exclude> ... </exclude> ## See /cancel/recur [ ## RecurrenceInfo] # [inside itself]
</except>
<cancel rangeType="{range-type} (int)" recurId="{YYMMDD[THHMMSS[Z]]}"
[tz="{timezone-name}"] [ridZ="{YYMMDDTHHMMSSZ}"] /> ## CancelRuleInfo
<dates [tz="{TZID}"]> ## SingleDates
(<dtval> ## DtVal
<s [d="{YYYYMMDD['T'HHMMSS[Z]]}"] [tz="{timezone-identifier}"]
[u="{utc-time} (Long)"] /> ## DtTimeInfo
<e ... /> ## See /cancel/recur/add/exclude/dates/dtval/s [ ## DtTimeInfo]
<dur ... /> ## See /cancel/dur [ ## DurationInfo]
</dtval>)*
</dates>
<rule freq="{freq}"> ## SimpleRepeatingRule
<until d="{YYYYMMDD[ThhmmssZ]}" /> ## DateTimeStringAttr
<count num="{num} (int)" /> ## NumAttr
<interval ival="{rule-interval} (int)" /> ## IntervalRule
<bysecond seclist="{second-list}" /> ## BySecondRule
<byminute minlist="{minute-list}" /> ## ByMinuteRule
<byhour hrlist="{hour-list}" /> ## ByHourRule
<byday> ## ByDayRule
(<wkday day="{weekday}" [ordwk="{ord-wk-[[+]|-]num} (Integer)"] /> ## WkDay)*
</byday>
<bymonthday modaylist="{modaylist}" /> ## ByMonthDayRule
<byyearday yrdaylist="{byyearday-yrdaylist}" /> ## ByYearDayRule
<byweekno wklist="{byweekno-wklist}" /> ## ByWeekNoRule
<bymonth molist="{month-list}" /> ## ByMonthRule
<bysetpos poslist="{bysetpos-list}" /> ## BySetPosRule
<wkst day="{weekday}" /> ## WkstRule
(<rule-x-name [name="{xname-name}"] [value="{xname-value}"] /> ## XNameRule)*
</rule>
}
</exclude>
<except ... > ... </except> ## See /cancel/recur/add/exclude/except [ ## ExceptionRuleInfo]
<cancel ... /> ## See /cancel/recur/add/exclude/cancel [ ## CancelRuleInfo]
<dates [tz="{TZID}"]> ... </dates> ## See /cancel/recur/add/exclude/dates [ ## SingleDates]
<rule freq="{freq}"> ... </rule> ## See /cancel/recur/add/exclude/rule [ ## SimpleRepeatingRule]
}
</add>
<exclude> ... </exclude> ## See /cancel/recur/add/exclude [ ## ExcludeRecurrenceInfo]
<except ... > ... </except> ## See /cancel/recur/add/exclude/except [ ## ExceptionRuleInfo]
<cancel ... /> ## See /cancel/recur/add/exclude/cancel [ ## CancelRuleInfo]
<dates [tz="{TZID}"]> ... </dates> ## See /cancel/recur/add/exclude/dates [ ## SingleDates]
<rule freq="{freq}"> ... </rule> ## See /cancel/recur/add/exclude/rule [ ## SimpleRepeatingRule]
}
</recur>
</cancel>
<comp [s="{dtstart-millis} (Long)"] [e="{dtend-millis} (Long)"]> ## ExpandedRecurrenceInvite
<exceptId ... /> ## See /cancel/exceptId [ ## InstanceRecurIdInfo]
<dur ... /> ## See /cancel/dur [ ## DurationInfo]
<recur> ... </recur> ## See /cancel/recur [ ## RecurrenceInfo]
</comp>
<except [s="{dtstart-millis} (Long)"] [e="{dtend-millis} (Long)"]> ## ExpandedRecurrenceException
<exceptId ... /> ## See /cancel/exceptId [ ## InstanceRecurIdInfo]
<dur ... /> ## See /cancel/dur [ ## DurationInfo]
<recur> ... </recur> ## See /cancel/recur [ ## RecurrenceInfo]
</except>
}
(<usr [l="{calendar-folder-id} (Integer)"] [id="{zimbra-id}"] [name="{email}"] /> ## FreeBusyUserSpec)*
</CheckRecurConflictsRequest>
The following table describes elements and attributes you can define within a
<CheckRecurConflictsRequest>
element:
XPath | Required / Optional | Description |
@s | Optional (0 or 1) | Type:Long Start time in millis. If not specified, defaults to current time |
@e | Optional (0 or 1) | Type:Long End time in millis. If not specified, unlimited |
@all | Optional (0 or 1) | Type:0|1 Set this to get all instances, even those without conflicts. By default only instances that have conflicts are returned. |
@excludeUid | Optional (0 or 1) | Type:String UID of appointment to exclude from free/busy search |
/tz | Optional (0 or more) | Timezones |
/tz@id | Required (only 1) | Type:String Timezone ID. If this is the only detail present then this should be an existing server-known timezone's ID Otherwise, it must be present, although it will be ignored by the server |
/tz@stdoff | Required (only 1) | Type:Integer Standard Time's offset in minutes from UTC; local = UTC + offset |
/tz@dayoff | Required (only 1) | Type:Integer Daylight Saving Time's offset in minutes from UTC; present only if DST is used |
/tz@stdname | Optional (0 or 1) | Type:String Standard Time component's timezone name |
/tz@dayname | Optional (0 or 1) | Type:String Daylight Saving Time component's timezone name |
/tz/standard | Optional (0 or 1) | Time/rule for transitioning from daylight time to standard time. Either specify week/wkday combo, or mday. |
/tz/standard@week | Optional (0 or 1) | Type:Integer Week number; 1=first, 2=second, 3=third, 4=fourth, -1=last |
/tz/standard@wkday | Optional (0 or 1) | Type:Integer Day of week; 1=Sunday, 2=Monday, etc. |
/tz/standard@mon | Required (only 1) | Type:Integer Month; 1=January, 2=February, etc. |
/tz/standard@mday | Optional (0 or 1) | Type:Integer Day of month (1..31) |
/tz/standard@hour | Required (only 1) | Type:Integer Transition hour (0..23) |
/tz/standard@min | Required (only 1) | Type:Integer Transition minute (0..59) |
/tz/standard@sec | Required (only 1) | Type:Integer Transition second; 0..59, usually 0 |
/tz/daylight | Optional (0 or 1) | Time/rule for transitioning from standard time to daylight time
See /tz/standard for more details. |
/cancel | Optional (0 or 1) | |
/cancel@s | Optional (0 or 1) | Type:Long DTSTART time in milliseconds since the Epoch |
/cancel@e | Optional (0 or 1) | Type:Long DTEND time in milliseconds since the Epoch |
/cancel/exceptId | Optional (0 or 1) | RECURRENCE_ID |
/cancel/exceptId@range | Optional (0 or 1) | Type:String Range - THISANDFUTURE|THISANDPRIOR |
/cancel/exceptId@d | Optional (0 or 1) | Type:String Date and/or time. Format is : YYYYMMDD['T'HHMMSS[Z]] where: YYYY - 4 digit year MM - 2 digit month DD - 2 digit day Optionally: 'T' the literal char "T" then HH - 2 digit hour (00-23) MM - 2 digit minute (00-59) SS - 2 digit second (00-59) ...and finally an optional "Z" meaning that the time is UTC, otherwise the tz="TIMEZONE" param MUST be specified with the DATETIME e.g: 20050612 June 12, 2005 20050315T18302305Z March 15, 2005 6:30:23.05 PM UTC |
/cancel/exceptId@tz | Optional (0 or 1) | Type:String Java timezone identifier |
/cancel/dur | Optional (0 or 1) | DURATION |
/cancel/dur@neg | Optional (0 or 1) | Type:0|1 Set if the duration is negative. |
/cancel/dur@w | Optional (0 or 1) | Type:Integer Weeks component of the duration Special note: if WEEKS are specified, NO OTHER OFFSET MAY BE SPECIFIED (weeks must be alone, per RFC2445) |
/cancel/dur@d | Optional (0 or 1) | Type:Integer Days component of the duration |
/cancel/dur@h | Optional (0 or 1) | Type:Integer Hours component of the duration |
/cancel/dur@m | Optional (0 or 1) | Type:Integer Minutes component of the duration |
/cancel/dur@s | Optional (0 or 1) | Type:Integer Seconds component of the duration |
/cancel/dur@related | Optional (0 or 1) | Type:String Specifies whether the alarm is related to the start of end. Valid values are : START|END |
/cancel/dur@count | Optional (0 or 1) | Type:Integer Alarm repeat count |
/cancel/recur | Optional (0 or 1) | RRULE/RDATE/EXDATE information |
/cancel/recur/add | Optional (0 or 1) | |
/cancel/recur/add/add | Optional (0 or 1) | See /cancel/recur/add for more details. |
/cancel/recur/add/exclude | Optional (0 or 1) | |
/cancel/recur/add/exclude/add | Optional (0 or 1) | See /cancel/recur/add for more details. |
/cancel/recur/add/exclude/exclude | Optional (0 or 1) | See /cancel/recur/add/exclude for more details. |
/cancel/recur/add/exclude/except | Optional (0 or 1) | |
/cancel/recur/add/exclude/except@rangeType | Required (only 1) | Type:int Recurrence range type |
/cancel/recur/add/exclude/except@recurId | Required (only 1) | Type:String Recurrence ID in format : YYMMDD[THHMMSS[Z]] |
/cancel/recur/add/exclude/except@tz | Optional (0 or 1) | Type:String Timezone name |
/cancel/recur/add/exclude/except@ridZ | Optional (0 or 1) | Type:String Recurrence-id in UTC time zone; used in non-all-day appointments only Format: YYMMDDTHHMMSSZ |
/cancel/recur/add/exclude/except/add | Optional (0 or 1) | Dates or rules which ADD instances. ADDs are evaluated before EXCLUDEs
See /cancel/recur for more details. |
/cancel/recur/add/exclude/except/exclude | Optional (0 or 1) | Dates or rules which EXCLUDE instances
See /cancel/recur for more details. |
/cancel/recur/add/exclude/cancel | Optional (0 or 1) | |
/cancel/recur/add/exclude/cancel@rangeType | Required (only 1) | Type:int Recurrence range type |
/cancel/recur/add/exclude/cancel@recurId | Required (only 1) | Type:String Recurrence ID in format : YYMMDD[THHMMSS[Z]] |
/cancel/recur/add/exclude/cancel@tz | Optional (0 or 1) | Type:String Timezone name |
/cancel/recur/add/exclude/cancel@ridZ | Optional (0 or 1) | Type:String Recurrence-id in UTC time zone; used in non-all-day appointments only Format: YYMMDDTHHMMSSZ |
/cancel/recur/add/exclude/dates | Optional (0 or 1) | |
/cancel/recur/add/exclude/dates@tz | Optional (0 or 1) | Type:String TZID |
/cancel/recur/add/exclude/dates/dtval | Optional (0 or more) | Information on start date/time and end date/time or duration |
/cancel/recur/add/exclude/dates/dtval/s | Optional (0 or 1) | Start DATE-TIME |
/cancel/recur/add/exclude/dates/dtval/s@d | Optional (0 or 1) | Type:String Date and/or time. Format is : YYYYMMDD['T'HHMMSS[Z]] where: YYYY - 4 digit year MM - 2 digit month DD - 2 digit day Optionally: 'T' the literal char "T" then HH - 2 digit hour (00-23) MM - 2 digit minute (00-59) SS - 2 digit second (00-59) ...and finally an optional "Z" meaning that the time is UTC, otherwise the tz="TIMEZONE" param MUST be specified with the DATETIME e.g: 20050612 June 12, 2005 20050315T18302305Z March 15, 2005 6:30:23.05 PM UTC |
/cancel/recur/add/exclude/dates/dtval/s@tz | Optional (0 or 1) | Type:String Java timezone identifier |
/cancel/recur/add/exclude/dates/dtval/s@u | Optional (0 or 1) | Type:Long UTC time as milliseconds since the epoch. Set if non-all-day |
/cancel/recur/add/exclude/dates/dtval/e | Optional (0 or 1) | Start DATE-TIME
See /cancel/recur/add/exclude/dates/dtval/s for more details. |
/cancel/recur/add/exclude/dates/dtval/dur | Optional (0 or 1) | Duration information
See /cancel/dur for more details. |
/cancel/recur/add/exclude/rule | Optional (0 or 1) | |
/cancel/recur/add/exclude/rule@freq | Required (only 1) | Type:String Frequency - SEC,MIN,HOU,DAI,WEE,MON,YEA |
/cancel/recur/add/exclude/rule/until | Optional (0 or 1) | UNTIL date specification |
/cancel/recur/add/exclude/rule/until@d | Required (only 1) | Type:String Date in format : YYYYMMDD[ThhmmssZ] |
/cancel/recur/add/exclude/rule/count | Optional (0 or 1) | Count of instances to generate |
/cancel/recur/add/exclude/rule/count@num | Required (only 1) | Type:int Number |
/cancel/recur/add/exclude/rule/interval | Optional (0 or 1) | Interval specification |
/cancel/recur/add/exclude/rule/interval@ival | Required (only 1) | Type:int Rule interval count - a positive integer |
/cancel/recur/add/exclude/rule/bysecond | Optional (0 or 1) | BYSECOND rule |
/cancel/recur/add/exclude/rule/bysecond@seclist | Required (only 1) | Type:String Comma separated list of seconds where second is a number between 0 and 59 |
/cancel/recur/add/exclude/rule/byminute | Optional (0 or 1) | BYMINUTE rule |
/cancel/recur/add/exclude/rule/byminute@minlist | Required (only 1) | Type:String Comma separated list of minutes where minute is a number between 0 and 59 |
/cancel/recur/add/exclude/rule/byhour | Optional (0 or 1) | BYHOUR rule |
/cancel/recur/add/exclude/rule/byhour@hrlist | Required (only 1) | Type:String Comma separated list of hours where hour is a number between 0 and 23 |
/cancel/recur/add/exclude/rule/byday | Optional (0 or 1) | BYDAY rule |
/cancel/recur/add/exclude/rule/byday/wkday | Optional (0 or more) | By day weekday rule specification |
/cancel/recur/add/exclude/rule/byday/wkday@day | Required (only 1) | Type:String Weekday - SU|MO|TU|WE|TH|FR|SA |
/cancel/recur/add/exclude/rule/byday/wkday@ordwk | Optional (0 or 1) | Type:Integer Week number. [[+]|-]num num: 1 to 53 |
/cancel/recur/add/exclude/rule/bymonthday | Optional (0 or 1) | BYMONTHDAY rule |
/cancel/recur/add/exclude/rule/bymonthday@modaylist | Required (only 1) | Type:String Comma separated list of day numbers from either the start (positive) or the end (negative) of the month - format : [[+]|-]num[,...] where num between 1 to 31 e.g. modaylist="1,+2,-7" means first day of the month, plus the 2nd day of the month, plus the 7th from last day of the month. |
/cancel/recur/add/exclude/rule/byyearday | Optional (0 or 1) | BYYEARDAY rule |
/cancel/recur/add/exclude/rule/byyearday@yrdaylist | Required (only 1) | Type:String BYYEARDAY yearday list. Format : [[+]|-]num[,...]" where num is between 1 and 366 e.g. <byyearday yrdaylist="1,+2,-1"/> means January 1st, January 2nd, and December 31st. |
/cancel/recur/add/exclude/rule/byweekno | Optional (0 or 1) | BYWEEKNO rule |
/cancel/recur/add/exclude/rule/byweekno@wklist | Required (only 1) | Type:String BYWEEKNO Week list. Format : [[+]|-]num[,...] where num is between 1 and 53 e.g. <byweekno wklist="1,+2,-1"/> means first week, 2nd week, and last week of the year. |
/cancel/recur/add/exclude/rule/bymonth | Optional (0 or 1) | BYMONTH rule |
/cancel/recur/add/exclude/rule/bymonth@molist | Required (only 1) | Type:String Comma separated list of months where month is a number between 1 and 12 |
/cancel/recur/add/exclude/rule/bysetpos | Optional (0 or 1) | BYSETPOS rule |
/cancel/recur/add/exclude/rule/bysetpos@poslist | Required (only 1) | Type:String Format [[+]|-]num[,...] where num is from 1 to 366 <bysetpos> MUST only be used in conjunction with another <byXXX> element. |
/cancel/recur/add/exclude/rule/wkst | Optional (0 or 1) | Week start day - SU,MO,TU,WE,TH,FR,SA |
/cancel/recur/add/exclude/rule/wkst@day | Required (only 1) | Type:String Weekday - SU|MO|TU|WE|TH|FR|SA |
/cancel/recur/add/exclude/rule/rule-x-name | Optional (0 or more) | X Name rules |
/cancel/recur/add/exclude/rule/rule-x-name@name | Optional (0 or 1) | Type:String XNAME Name |
/cancel/recur/add/exclude/rule/rule-x-name@value | Optional (0 or 1) | Type:String XNAME Value |
/cancel/recur/add/except | Optional (0 or 1) | See /cancel/recur/add/exclude/except for more details. |
/cancel/recur/add/cancel | Optional (0 or 1) | See /cancel/recur/add/exclude/cancel for more details. |
/cancel/recur/add/dates | Optional (0 or 1) | See /cancel/recur/add/exclude/dates for more details. |
/cancel/recur/add/rule | Optional (0 or 1) | See /cancel/recur/add/exclude/rule for more details. |
/cancel/recur/exclude | Optional (0 or 1) | See /cancel/recur/add/exclude for more details. |
/cancel/recur/except | Optional (0 or 1) | See /cancel/recur/add/exclude/except for more details. |
/cancel/recur/cancel | Optional (0 or 1) | See /cancel/recur/add/exclude/cancel for more details. |
/cancel/recur/dates | Optional (0 or 1) | See /cancel/recur/add/exclude/dates for more details. |
/cancel/recur/rule | Optional (0 or 1) | See /cancel/recur/add/exclude/rule for more details. |
/comp | Optional (0 or 1) | |
/comp@s | Optional (0 or 1) | Type:Long DTSTART time in milliseconds since the Epoch |
/comp@e | Optional (0 or 1) | Type:Long DTEND time in milliseconds since the Epoch |
/comp/exceptId | Optional (0 or 1) | RECURRENCE_ID
See /cancel/exceptId for more details. |
/comp/dur | Optional (0 or 1) | DURATION
See /cancel/dur for more details. |
/comp/recur | Optional (0 or 1) | RRULE/RDATE/EXDATE information
See /cancel/recur for more details. |
/except | Optional (0 or 1) | |
/except@s | Optional (0 or 1) | Type:Long DTSTART time in milliseconds since the Epoch |
/except@e | Optional (0 or 1) | Type:Long DTEND time in milliseconds since the Epoch |
/except/exceptId | Optional (0 or 1) | RECURRENCE_ID
See /cancel/exceptId for more details. |
/except/dur | Optional (0 or 1) | DURATION
See /cancel/dur for more details. |
/except/recur | Optional (0 or 1) | RRULE/RDATE/EXDATE information
See /cancel/recur for more details. |
/usr | Optional (0 or more) | Freebusy user specifications |
/usr@l | Optional (0 or 1) | Type:Integer Calendar folder ID; if omitted, get f/b on all calendar folders |
/usr@id | Optional (0 or 1) | Type:String Zimbra ID Either "name" or "id" must be specified |
/usr@name | Optional (0 or 1) | Type:String Email address. Either "name" or "id" must be specified |
<CheckRecurConflictsResponse> ## CheckRecurConflictsResponse
(<inst [s="{start-time-millis} (Long)"] [dur="{duration-millies} (Long)"] [allDay="{is-all-day} (0|1)"]
[tzo="{tz-offset-millis} (Integer)"] [ridZ="{utc-recurrence-id}"]> ## ConflictRecurrenceInstance
(<usr name="{email}" fb="{freebusy-status-B|T|O}" /> ## FreeBusyUserStatus)*
</inst>)*
</CheckRecurConflictsResponse>
The following table describes elements and attributes you can define within a
<CheckRecurConflictsResponse>
element:
XPath | Required / Optional | Description |
/inst | Optional (0 or more) | Information on conflicting instances |
/inst@s | Optional (0 or 1) | Type:Long Start time in milliseconds |
/inst@dur | Optional (0 or 1) | Type:Long Duration in milliseconds |
/inst@allDay | Optional (0 or 1) | Type:0|1 Set if the instance is for an all day appointment |
/inst@tzo | Optional (0 or 1) | Type:Integer GMT offset of start time in milliseconds; returned only when allDay is set |
/inst@ridZ | Optional (0 or 1) | Type:String Recurrence ID string in UTC timezone |
/inst/usr | Optional (0 or more) | Free/Busy user status |
/inst/usr@name | Required (only 1) | Type:String Email address for a user who has a conflict with the instance |
/inst/usr@fb | Required (only 1) | Type:String Free/Busy status - B|T|O (Busy, Tentative or Out-of-office) |