Actions and results

What each Calendar button and automatic behaviour does, with worked numbers and what the system refuses.

On this page (24)

Calendar

ActionWhenWhat you doWhat happens
Personal calendar made on first useA test user with the Calendar user role who never opened the appOpen Calendar for the first time; look at My Calendars; open Configuration > Shared calendars'My Calendar' (تقويمي) exists, ticked, blue; listed as Kind 'Yours', Your role 'owner'; opening the app twice at the same moment still makes only one
Switch views and move through timeSome events this monthPress Month, Week, Day, Agenda; use previous / next and Today; click a day number in MonthMonth = 6 weeks from the week start; Week = 7 days; Day = 1 day; Agenda = next 30 days, empty days left out ('Nothing planned in the next 30 days.' when none). Day number opens that day in Day view. The last view is remembered after a reload
Week start from settingsSettings: Week starts on = SundayOpen Month and Week view and the mini-monthFirst column is Sunday in all three; weekend columns (Sat, Sun) are shaded in Month
'+N more' in a month cell5 events on one dayMonth view; look at the day; press '+2 more'3 chips shown, then '+2 more'; pressing it opens that day in Day view
Tick calendars and layers on and offA shared calendar and the HR layer availableUntick the shared calendar and HR & Leave; reload the pageTheir items disappear at once and stay hidden after the reload (preference saved); ticking brings them back
Time zone of the personAn event Asia/Dubai 09:00-10:00 on Mon 5 Oct 2026Time zone > Change > Europe/London; look at the event; change back to Company (Asia/Dubai)Stored 05:00-06:00 UTC; London (summer time UTC+1 until 25 Oct 2026) shows 06:00-07:00; Dubai shows 09:00-10:00 again; the rail shows the chosen zone
Search and kind filterEvents titled 'Sales Review' and 'Team Briefing'; one with location 'Conference Room A'Search 'review'; then search 'conference'; clear; Filters > Kind = Call'review' finds Sales Review (title); 'conference' finds the event by its location; Kind = Call shows only calls; module layer items are hidden while searching or filtering
Upcoming in the right railEvents today and later this week, one declinedLook at Upcoming; press View all ->Next 3 items not yet ended, not cancelled, not declined; place or 'Online meeting' shown; View all opens Overview

Event form

ActionWhenWhat you doWhat happens
Create a timed event with the default lengthSettings: New events last 60, Default reminder 15Click the 09:00 slot on Mon 5 Oct 2026 in Week view; Title 'Planning'; SaveStarts 09:00, Ends 10:00 (09:00 + 60 min); one bell reminder 15 min before; organiser = you (accepted); event shows in Week view; Audit 'calendar.event.created'
Ends is kept the same length when Starts movesNew event 09:00-10:30Change Starts to 11:00Ends jumps to 12:30 (length 1 h 30 kept)
End before start refusedStarts 10:00, Ends 09:00 (type it); SaveRefused: 'The event ends before it starts.'; nothing saved
Longest event is 60 daysStarts 1 Oct 2026 09:00, Ends 5 Dec 2026 09:00; SaveRefused: 'An event lasts at most 60 days; repeat it instead.'
All-day and multi-day eventAll day on; From 8 Oct 2026, To 9 Oct 2026; Title 'Site visit'; kind Out of office; SaveShows on both days in the All day row / as a bar in Month; no default reminder; the event dialog says Thu 8 - Fri 9 Oct; stored as 7 Oct 20:00 UTC to 9 Oct 20:00 UTC (Dubai midnight to midnight)
Event in another time zoneYour zone Asia/DubaiNew event 10:00-11:00 with Time zone Europe/London on 6 Oct 2026; Save; open itDrawn at 13:00-14:00 in your Dubai view (London UTC+1, Dubai UTC+4); the dialog adds '(Europe/London)' after the time
Invite colleagues and see who is busyColleague B has a busy meeting 10:00-11:00 that dayNew event 10:30-11:30; Colleagues: B and C'Busy then: B' warning appears (free/busy only, no title); after Save B and C each get a bell 'Invitation: <title>' with date, zone and 'from <your username>'
Guests by e-mailGuests: 'guest1@example.com; guest2@example.com'; Save; open the eventTwo external attendees, 'No answer yet'; no invitation e-mail is sent to them (reminders only)
Online link checkOnline meeting link 'meet.example.com/x'; Save; then 'https://meet.example.com/x'First refused: 'An online link starts with https://.'; second saved and 'Join online' opens it in a new tab
Private eventShared calendar SALES that colleague B readsCreate in SALES a Private event 'Doctor' 16:00-17:00; as B open the calendar and the eventB sees a chip 'Busy' at 16:00-17:00 with no title, place, link, notes or attendees; .ics button hidden for B
Show as FreeCreate an event with Show as = Free; as a colleague check your free/busy in a new event formNo 'Busy then' warning for you at that time; the event does not block appointment slots
Reminders on an eventAdd reminders: 1 day before by E-mail and 30 min by Notification; try a 6th (API)Two reminders saved and shown in Reminders > Coming up; 'Add reminder' disappears at 5; a 6th via API is refused 'At most five reminders.'
Free/busy shows intervals onlyColleague B has events 09:00-10:00 and 09:30-11:00 (one Private) and one Free event 14:00As A call freebusy for B for that day (or open a new event at 09:30 with B invited)One merged busy span 09:00-11:00; no titles; the Free event is not busy
Room double booking refusedConference Room A booked 10:00-11:00 on 6 Oct 2026 by 'Client Meeting'Book it for 10:30-11:30; then for 11:00-12:00First refused (409): 'Conference Room A is already booked 2026-10-06 10:00 to 11:00 for “Client Meeting”.'; second accepted (touching ends do not clash)
Repeating booking clashing laterRoom booked on Mon 19 Oct 2026 10:00-11:00New weekly Monday 10:00 x4 from 5 Oct with the roomRefused naming the 19 Oct booking (the third occurrence); nothing saved

Event dialog

ActionWhenWhat you doWhat happens
Edit a single eventAn event you organiseOpen; Edit; change title and location; SaveSaved; revision +1; attendees (not declined) get a bell 'Changed: <title>'; Audit 'calendar.event.updated' scope all
Answer an invitationYou are invited by AOpen the event; Going? Maybe; then NoYour answer shows on the attendee line; A gets a bell '<you> tentative: <title>' then '<you> declined: <title>'; Overview stops listing it as waiting
Cancel a single eventAn event with a room and two colleaguesCancel event; confirmStatus cancelled (record kept, gone from the calendar views); room released; colleagues get 'Cancelled: <title>'; Edit and Cancel buttons gone
Download one event as .icsAn event with location and online linkPress .ics; open the file in a calendar appOne VEVENT: SUMMARY, LOCATION, URL, DTSTART/DTEND in UTC (Z); STATUS CONFIRMED; a repeating event carries its RRULE
Organiser is always an attendeeCreate an event with no colleagues; open itYou are listed as '(organiser) · Going'

Event form > Repeat

ActionWhenWhat you doWhat happens
Weekly on chosen days, a number of timesStarts Mon 5 Oct 2026 09:00; Weekly, every 1, Mo + We; ends after 6 times; SaveExactly 6 occurrences: 5, 7, 12, 14, 19, 21 Oct 2026, all 09:00 Dubai; none on 26 Oct
Ends on a date is inclusiveDaily from Thu 1 Oct 2026 10:00, ends on 3 Oct 2026Occurrences 1, 2 and 3 Oct (the until day itself included)
Monthly on the 31st skips short monthsStarts Sat 31 Oct 2026 09:00; Monthly on the same day; ends after 4 times31 Oct 2026, 31 Dec 2026, 31 Jan 2027, 31 Mar 2027 (November and February have no 31st and are skipped, not moved)
Monthly on the same weekdayStarts Tue 13 Oct 2026 (2nd Tuesday) 14:00; Monthly on the same weekday; ends after 4 times13 Oct, 10 Nov, 8 Dec 2026, 12 Jan 2027 (each the 2nd Tuesday); the dialog shows '(#2 weekday)'
Every second week / yearlyWeekly every 2 weeks on Mo from 5 Oct 2026, 3 times; Yearly from 29 Feb 2028, 2 times (API)5 Oct, 19 Oct, 2 Nov 2026; the 29 Feb series lands on 29 Feb 2028 and 29 Feb 2032 (only leap years)

Repeating event scope

ActionWhenWhat you doWhat happens
Change only this occurrenceWeekly Monday 09:00 x10 from 5 Oct 2026Open the 12 Oct occurrence; Edit; Starts 11:00 (same day); Save; choose This event12 Oct moves to 11:00 as its own event; the series still shows 5, 19, 26 Oct... at 09:00; there is no 09:00 on 12 Oct; attendees and reminders carried to the moved one
Cancel only this occurrenceSame seriesOpen the 19 Oct occurrence; Cancel event; This event19 Oct gone; the others stay; colleagues get 'Cancelled: <title>' with that date and time
Change this and followingWeekly Monday 09:00 x10 from 5 Oct 2026 (last 7 Dec)Open the 26 Oct occurrence (4th); Edit; title 'Briefing v2'; Save; This and followingOld series ends 25 Oct (5, 12, 19 Oct); a new series 'Briefing v2' starts 26 Oct with 7 left (10 - 3), last 7 Dec 2026; total still 10
This and following from the first occurrenceSame seriesOpen the 5 Oct (first) occurrence; Edit; Save; This and following (API: scope following, first occurrence)Refused: 'From the first occurrence, change the whole series.'
Cancel this and following / allA weekly series with one moved occurrenceCancel from the 3rd occurrence with This and following; on another series Cancel with All eventsFirst: series ends the day before the 3rd; second: whole series cancelled, its moved occurrences cancelled too and their rooms released
Wrong occurrence refusedA weekly seriesPUT the event with scope this and an occurrence that is not in the series (API)Refused: 'That is not an occurrence of this series.'

Calendar > layers

ActionWhenWhat you doWhat happens
HR & Leave layerA public holiday in an HR working calendar; your approved leave; a colleague's pending leaveTick HR & Leave; look at the month; click your leaveHoliday (once even if on several working calendars; '(half day)' marked); 'You - <leave type>'; colleague leave only if you hold hr.employee.view, marked '(pending)'; payroll cut-off and pay day only with payroll.view; Open goes to the leave request in HR
Sales, Projects and Maintenance layersA planned CRM activity assigned to you, an open deal you own with an expected close, a project milestone, a maintenance work orderTick each layer; click an item; press OpenActivity on its due date; 'Expected close: <deal>'; '<milestone> - <project>' and 'Project due: <project>'; work order at its local time; Open goes to the record in its module; nothing can be edited here

Settings

ActionWhenWhat you doWhat happens
Layer coloursPUT settings with layer_colors {"hr": "#0d9488"} (API only - no screen field)HR & Leave dot and items turn #0d9488; a bad colour refused 'Use a colour like #2563eb.'

Resource

ActionWhenWhat you doWhat happens
Add a roomcalendar.manageResources > New resource: CONF-A, Conference Room A, Room, 12 seats, Floor 3; SaveListed in the register and the schedule; offered in the event form as 'Conference Room A (12)'; code stored upper-case
Make a room not bookableA room with a future bookingEdit; Bookable off; Save; try to book itRefused: 'Conference Room A is not bookable now.'; it leaves the event form list and the schedule

Resources

ActionWhenWhat you doWhat happens
Day scheduleBookings today in two roomsOpen Resources; step days with the arrows; pick a dateBars between working-day hours (start hour to end hour + 1); a private event shows 'Busy'; inactive resources not listed

Appointment type

ActionWhenWhat you doWhat happens
Create and publish a typecalendar.appointment; two staffNew type: CONSULT, Consultation, 30 min, step 30, buffer after 10, notice 4 h, horizon 30, Mon-Fri 09:00-13:00, 14:00-17:00, staff two people, Public booking page on; SaveCard shows the hours and staff; 'Booking page' and 'Copy link' appear; the link opens the public page
Publishing needs staffNew type with nobody in 'Who takes these' and Public booking page on; SaveRefused: 'Name who takes these appointments before publishing.'

Book an appointment

ActionWhenWhat you doWhat happens
Slots respect hours, buffers and busy timeType 30 min, step 30, window 09:00-12:00, buffer after 15; staff B has a meeting 10:00-10:30 that dayBook appointment; pick the type and that dayFree times 09:00, 10:30, 11:00, 11:30 (09:30 is gone: 09:30-10:00 + 15 min buffer runs into the 10:00 meeting; 10:00 is the meeting)
Minimum notice and horizonType with notice 2 h, horizon 1 day; it is 10:05 DubaiLook at today's and the day after tomorrow's free timesToday starts at 12:30 (10:05 + 2 h = 12:05, next step); the day after tomorrow shows 'No free time this day.' (beyond the horizon)
Holidays and the roomA full-day public holiday tomorrow; type with a room that is booked 11:00-11:30Look at tomorrow and at a normal dayTomorrow: no free time (Closed on public holidays on); the normal day: 11:00 missing because the room is taken
Staff book a customerA published typePick a slot; name Test Customer One, e-mail customer1@example.com, phone +971500000001; BookAppointment APT-00001 (next number), state confirmed, source Staff; event '<type> - Test Customer One' (kind appointment) in the least-busy free staff member's calendar with the customer as guest; staff bell 'New appointment'; customer e-mail with the manage link
Fair spread among staffTwo staff free all day, staff X already has 2 bookings of this type that day, Y has 0Book a slot both are free forIt goes to Y (fewest bookings of this type that day)

Appointment card

ActionWhenWhat you doWhat happens
Confirm a requested bookingType with 'Staff confirm'; a customer booked on the public pageOpen the Requested tab; open the row; ConfirmState confirmed; its event goes from Tentative to Confirmed; Confirm button gone
Done and no-showA confirmed appointment that has started; another in the futureMark done on the first; try No-show on the future one (API)First: state done. Future: buttons not shown; API refused 'It has not started yet.'
Staff cancelA confirmed appointment with a roomCancel; reason 'Customer asked to move'State cancelled with the reason; its event cancelled and the room released; the slot is offered again

Public booking page

ActionWhenWhat you doWhat happens
Customer books onlinePublished type; signed out (private window)Open the link; pick a day and 10:00; name, e-mail customer2@example.com; Book this time'Thank you, Test Customer Two'; 'Your appointment is confirmed.' (or 'requested - we will confirm it shortly' for Staff confirm); facts with Reference APT-nnnnn; 'manage your appointment' link; source Booking page in the register
Same slot twiceThe slot just bookedBook the same day and time again with another e-mailRefused on the page: 'That time is no longer available. Choose another slot.'; the slot is no longer offered
Three upcoming bookings per e-mailcustomer2@example.com has 3 upcoming live bookings of this typeBook a 4th with the same e-mailRefused: 'You already have three bookings of this kind coming up.'

Customer manage page

ActionWhenWhat you doWhat happens
Customer cancels in timeBooking 3 days ahead; cancel notice 24 hOpen the manage link; reason 'Travelling'; Cancel this appointment'Your appointment is cancelled.'; state cancelled; staff bell 'Cancelled by customer: <name>'; the cancel button disappears; the slot is offered again
Customer too late to cancelType with cancel notice 720 h; booking 3 days aheadOpen the manage link; Cancel this appointmentRefused: 'It can be cancelled online up to 720 hours before it starts; please call us.'; still confirmed

Appointments

ActionWhenWhat you doWhat happens
Register tabs and countsAppointments in several statesClick each tab; search by number and by customer e-mail; sort by WhenTab counts match the rows; Upcoming = requested/confirmed from now; search finds by number, name or e-mail; paging works

Reminders

ActionWhenWhat you doWhat happens
Bell reminder sent onceEvent 09:00 today with a 15-min bell reminder; B invited (accepted), C declinedWait until 08:45 (job runs every minute); check bells; wait two more minutesAt 08:45 organiser and B each get one bell 'Starting 09:00: <title>'; C gets nothing; no second bell on later runs; Reminders > Sent to you lists it
No reminder for a cancelled event or skipped occurrenceA series with one occurrence cancelled; a cancelled single eventWait past their reminder timesNothing sent for either
E-mail reminder to a customerAppointment booked more than 25 h ahead with an e-mail; a company mail account set upWait until 1 day beforeCustomer gets 'Reminder: <type> - <name> at <date time>' from the staff member's account; without a mail account the bell still rings (e-mail skipped)
Coming up listEvents with reminders in the next 14 daysOpen RemindersEach reminder with its remind-at time (start - minutes), sorted; channel icon; times in your zone

Meeting load by person

ActionWhenWhat you doWhat happens
Meeting hoursOctober 2026: A organises a 1 h meeting with B, and a 1 h 30 call with B and an external guest; B declines the callOpen the report for October 2026A: 2 meetings, 2.5 hours, With outside people 1; B: 1 meeting, 1 hour; all-day events and kinds task/reminder/other not counted

Room and equipment utilisation

ActionWhenWhat you doWhat happens
Utilisation %Working day 09:00-18:00; October 2026 has 22 weekdays (Mon-Fri); room booked 19.8 h in OctoberOpen the report for October 2026Open hours 198 (22 x 9); Hours 19.8; Utilisation 10.0 %; holidays are not removed

Appointments by type and outcome

ActionWhenWhat you doWhat happens
No-show rateType CONSULT in October: 3 done, 1 no-show, 2 confirmed, 1 cancelledOpen the reportBooked 7; No-show % = 1 / (3 + 1) = 25.0 %

Overview

ActionWhenWhat you doWhat happens
TilesTwo events today, one invitation waiting, one appointment today, 1 of 3 rooms in use, this week 10:00-11:00 and 10:30-11:30Open OverviewToday 2; Awaiting your answer 1; Appointments today 1; Rooms in use now 1 / 3; Your busy hours this week 1.5 (overlaps merged)
Answer from OverviewAn invitation waitingPress AcceptIt leaves Invitations; the tile goes down by 1; the organiser gets a bell

Calendar settings

ActionWhenWhat you doWhat happens
Save settingscalendar.manageWeek starts Sunday; working day 08:30-17:30; New events last 30; Default reminder 10; Save'Saved.'; new events are 30 min with a 10-min reminder; Week view scrolls to 07:00 (start hour - 1); Audit 'calendar.settings.saved'

Shared calendars

ActionWhenWhat you doWhat happens
Make a shared calendar with memberscalendar.manage; colleagues B (viewer) and C (editor)New calendar: SALES, Sales, Its members only, readers B, editors C; SaveB and C see 'Sales' in My Calendars (B role viewer, C editor); D (not a member) does not; C can create events in it, B cannot (calendar not offered)

Subscribe in other apps

ActionWhenWhat you doWhat happens
Make, renew and stop the feedMake my address; open it in a browser; New address; open the old one; Stop sharing; open the new oneFirst link downloads the .ics with your events from 30 days back; after New address the old link answers 'Not found' (404); after Stop sharing the new one is 404 too

ICS feed

ActionWhenWhat you doWhat happens
Feed contentYour calendar with a weekly series (one occurrence cancelled, one moved), a private event of yours, a cancelled event, an event you declinedSubscribe the feed in a calendar appSeries as one event with RRULE and EXDATE; moved occurrence separately; your private event keeps its title (CLASS:PRIVATE); cancelled and declined ones absent; hidden calendars left out