You can create and manage user calendars (aka 'staff rota' aka 'user availability') specifying when each user will not be available for work - due to vacation, sick leave or any other reason.
Each user calendar is a collection of the userGap objects. Each object describe one period - or interval - when the user is not available:
The interval can be specified with a duration (as above) or with a direct end date-time. The reason is one of the categories in the category set 'GapReasons':
See also