How to sync your gmail and zimbra calendars

Revision as of 15:45, 21 September 2018 by Urvi Mehta (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Sync Your Gmail and Zimbra Calendars

Many thanks to Carlos Pineda, Senior Solutions Advisor at Zimbra, for this post!

Did you know that you can sync your Gmail calendar to your Zimbra account? This means that you can see your Zimbra events in your Gmail calendar AND your Gmail events in your Zimbra calendar. Any change you make to one calendar will sync to the other including new events, updates to events, and deleted events.

There are steps to perform in Google, on the Zimbra server and in the Zimbra Web Client. Let’s start with the steps in Google.

Steps in Google

1. Create a Project in the Google Developer Console.

Google APIs use the OAuth 2.0 protocol for authentication and authorisation. Google supports common OAuth 2.0 scenarios such as those for web server, installed and client-side applications. So to sync the calendar, you need to first obtain OAuth 2.0 client credentials from the Google API Console. Then your client application requests an access token from the Google Authorization Server, extracts a token from the response and sends the token to the Google API that you want to access.
(Source: https://developers.google.com/identity/protocols/OAuth2)


Gmail calendar sync 1.png
Gmail calendar sync 2.png


2. Create credentials to access Google’s APIs. A client ID and client secret are required to authenticte users and gain access to Google’s APIs.

  • Specify OAuth consent screen details.


Gmail calendar sync 3.png



Gmail calendar sync 4.png


Gmail calendar sync 5.png


Gmail calendar sync 6.png


3. Enable CalDAV API.

Gmail calendar sync 7.png


Gmail calendar sync 8.png


Gmail calendar sync 9.png


Steps on the ZCS Server

1. Set zimbraOAuthConsumerAPIScope on your domain.
zmprov md <your domain> zimbraOAuthConsumerAPIScope ‘https://www.googleapis.com/auth/calendar:google_caldav’
2. Set zimbraOAuthConsumerCredentials on your domain. Specify your client id and client secret.
zmprov md <your domain> zimbraOAuthConsumerCredentials <client id>:<secret>:google
3. Set zimbraOAuthConsumerRedirectUri on your domain.
zmprov md <your domain> zimbraOAuthConsumerRedirectUri’ <hostname>/service/extension/oauth2/authenticate/google:google’
Example:
zmprov md zimbra.io zimbraOAuthConsumerRedirectUri ‘https://mail.zimbra.io/service/extension/oauth2/authenticate/google:google’


Steps in the Zimbra Web Client

1. Login to your Zimbra Web Client.
2. Authorize Google to visit the following URL, specifying your hostname: https://<hostname>/service/extension/oauth2/authorize/google?type=caldav
3. Select your Gmail account, and you will see the Gmail Calendar in the Zimbra Calendar.
Gmail calendar sync 10.png
4. You can create an event from Zimbra into Gmail Calendar or create an appointment in Gmail Calendar, and see it from Zimbra.


Calendar View in Zimbra

Gmail calendar sync 11.png


Calendar View in Gmail

Gmail calendar sync 12.png

Jump to: navigation, search