How to sync your gmail and zimbra calendars
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)
- Go to https://console.developers.google.com/
- Login using your gmail account.
- Create a Project.
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.
- Create credentials specifying your ZCS environment; for example, https://mail.zimbra.io
3. Enable CalDAV API.
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’
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.
- 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