For additional guidance, check out our community articles detailing the process of migrating from your current platform to Carbonio CE.
For enterprise-level requirements and advanced features, consider checking out Zextras Carbonio – the all-in-one private digital workplace designed for digital sovereignty trusted by the public sector, telcos, and regulated industries.
In this article we are going to analyze the calendar methods of the Zimbra REST API. For an overview and in-depth coverage about it, we refer you to the related article in our technical blog.
Get Calendar
This method retrieves appointments from the calendar. The HTTP method to read data is get
and the default folder is “calendar”, even if custom ones are allowed.
The basic URL structure is the following one:
http(s)://<host>/home/sample.user/calendar?{params}
Formats
This method supports different formats, such as ics, json, xml, rss, atom, html
Parameters
You can choose between some parameters to add to your command line, but none of them is mandatory:
fmt
– the response format is optional. Default one is ics.start
/end
– these are both optional. They represent the start and the end time range (milliseconds
|yyyy/dd/mm
|mm/dd/yyy
|relative dates
).query
– the query string is optional.
HTML Format Parameters
If you select the HTML format, you’ll have some additional parameters to choose from. None of them is required:
view
– specifies the display. You can choose between day, week, workWeek, monthas available optionsdate
– denotes the date to be displayed. Format is date=[yyyymmdd].notoolbar
– select this if you don’t want to include the toolbar. Command is notoolbar=1color
– you can choose the color for the appointment text. Available colours are:
0 | Default Color |
1 | Blue |
2 | Cyan |
3 | Green |
4 | Purple |
5 | Red |
6 | Yellow |
7 | Pink |
8 | Gray |
9 | Orange |
Relative Dates
Relative dates are one of the possible options for the start and end parameters we saw above. They can indicate either a future date, represented by a “+” (it can also be unspecified) or in the past, represented by a “-“. This is followed by a numeric value and an indication of the unit. For these ones, it is enough to indicate the initial, since everything that follows is not considered. Here is the units you can enter:
- m – months
- mi – minutes
- d – days
- w – weeks
- h – hours
- y – years
Here is an example on how to use relative date:
end=-3w
– where end parameter is setted to 3 weeks ago
Examples
Below you can find a couple of examples on how Get Calendar method works.
As we saw before, if you want to download a calendar in ICS format, you can use the default command line or specify the format:
https://mail.sampledomain.com/home/james.red/calendar
https://mail.sampledomain.com/home/james.red/calendar?fmt=ics
If you want to retrieve the custom calendar named “holidays” in HTML format and “day” view on July 15, 2016 (07/15/2016), you can write as follows:
https://mail.sampledomain.com/home/james.red/holidays?fmt=html&view=day&date=20160715
Get FreeBusy
This method retrieves free/busy information from the calendar. The HTTP method to read data is get
.
The basic URL structure is the following one:
http(s)://<host>/home/sample.user/calendar.ifb?{params}
Formats
This method only supports ifb (Internet Free Busy) format.
Parameters
All the parameters for this method ar optional. In addition to the response format (fmt
), clearly optional, we have the start
and end
time range that could be in milliseconds, yyyy/dd/mm, mm/dd/yyy or relative dates
.
Relative Dates
It’t the same as above, for Get Calendar method.
Examples
Here is an example on how to export free/busy data for all calendars configured to be included in free/busy data for the next 90 days:
https://mail.sampledomain.com/home/james.red/calendar.ifb?start=0d&end=90d
Import Appointments
The last REST API Calendar Method we are going to see is used to import appointments. It uses HTTP post
method.
The basic URL structure is the following one:
http(s)://<host>/home/sample.user/calendar{params}
Formats
This method only supports ics format
Parameters
The Import format, fmt
, is required.
For all calendar methods in this article, Autentication is Required.