Calendar Sync
    • 07 Jun 2022
    • PDF

    Calendar Sync

    • PDF

    Article Summary

    This page allows you to integrate SysAid with your Exchange O365 or Google for the purpose of synchronizing your SysAid calendar with your Outlook or Google calendars. The synchronization process exports data from SysAid to your integrated server. Items are not imported from the integrated server to SysAid.

    To enable the synchronization, fill out each field using the descriptions below for assistance. After you have entered the necessary information, individual administrator must enable synchronization from Tools > Calendar > My Calendar Settings to complete the synchronization process.

    IntegrationExchangefilesOAuth2Protocol.png

    Protocol

    Select OAuth 2, EWS, orMapi, as the protocol for integration with your external calendar.

    Exchange Server Name

    This is the name or IP address of the computer that hosts your calendar.

    Network domain name (NetBIOS)

    This is your network domain name.

    Username

    The Exchange, O365, or Google user whose account is used for the synchronization. For Exchange, the user must have permission in Exchange to create events on employees' Outlook calendars. See below for full instructions on configuring this user.

    Password

    Password for the username you've used.

    Sync user email address

    The email address of the username you've used.

    Important

    If your company uses multiple email domain formats (e.g. @sysaid.com, @internal.sysaid.com, @dev.sysaid.com), please use an email address that uses the most common format (i.e. @sysaid.com). Any user on your exchange who has an email address with a different email domain than that of the email address you use here will not be able to synchronize their SysAid calendar with Outlook.

    Enable Synchronization

    This allows synchronization with Exchange, O365, or Google for all administrators who choose to do so. To complete the synchronization with Exchange, O365, or Google and import SysAid calendar data into Outlook, administrators must enable synchronization on an individual basis from Calendar > Calendar Settings.

    Test Exchange Settings

    Click here and SysAid attempts to connect to your Exchange/Office 365/Google server using the credentials you've supplied. You receive a notification if the connection is successfully established.

    Sync Exchange, O365, or Google's user's calendar with SysAid

    Below are instructions for configuring a user for synchronization with SysAid for:

    Sync the calendar with OAuth 2.0 protocol

    You can set up calendar syncwith the OAuth 2.0 protocol with Microsoft 365 or Google.

    EmailFormfilesOAuthServiceProvider3.jpg

    Microsoft 365

    To set up calendar sync with the OAuth 2.0 protocol with Microsoft 365

    1. From the Protool drop-down, select OAuth 2.0.
    2. Select Microsoft 365.
      IntegrationExchangefilesOAuth2Protocol1.png
    3. Register your application in Azure:
      1. In your Microsoft 365 account, navigate to Azure Active Directory > App registrations.
      2. Click New registration.
      3. Enter a name for your application.
      4. In the supported account types, select the single tenant option.
      5. (optional) select a platform configuration.
      6. Click Register.
    4. Client secret:
      1. In App registrations, navigate to Certificates & secrets.
      2. Click New Client secret.
      3. Enter a description.
      4. In the Expires area, select Never.
      5. Click Add.
      6. Copy the generated secret from the Value column.
      7. Back in the calendar sync form, paste the secret in the Client secret field.
    5. Setup API permission:
      1. Back in Azure, navigate to API permissions and click Add a permission.
      2. Choose Microsoft Graph.
        EmailFormfilesMocrosoftGraphPermission1.jpg
      3. Click Delegated Permissions.
      4. Check the User.Read permission.
        EmailFormfilesUserRead1.jpg
      5. Click Add Permissions.
      6. Click Application Permissions.
      7. Check the following permission.
        • Calendars.ReadWrite
        • Mail.ReadWrite
        • Mail.Send
        • User.Read.All
          EmailFormfilesMailPermissions1.jpg
      8. Click Application Permissions.
      9. Click Grant admin consent for <domain name>.
      10. Click Yes to confirm.
    6. Copy the Tenant ID and Client ID:
      1. In Azure Active Directory, navigate to App registrations and select the app you just set up.
      2. Copy the Application (client) ID and paste it into the Client id field in the SysAid calendar sync form.
      3. Copy the Directory (tenant) ID and paste it into the Tenant id field in the SysAid calendar sync form.
        EmailFormfilesOAuthCodes2.jpg
    7. Follow the instructions above for configuring the rest of the calendar sync form.

    Google

    To set up calendar sync with the OAuth 2.0 protocol with Google

    1. From the Protocol drop-down, select OAuth 2.0.
    2. Select Google.
      EmailFormfilesOAuth2FormGoogle2.jpg
    3. Create a project in Google:
      1. Navigate to Google Cloud Platform Console. If you haven't used this Google Cloud Platform Console yet, agree to their terms and conditions.
      2. Click Select a project.
        EmailFormfilesGoogleSelectProject2.jpg
      3. Click New Project.
        EmailFormfilesGoogleNewProject2.jpg
    4. Add Gmail API and Google Calendar API scopes:
      1. From the Navigation menu, select APIs & Services > Library.
        EmailFormfilesGoogleLibrary2.jpg
      2. Search for "Gmail API"and select it from the search results.
      3. Click Enable.
        EmailFormfilesGoogleEnable2.jpg
      4. Search for "Google Calendar API"and select it from the search results.
      5. Click Enable.
    5. Create a service account
      1. From the side menu, click Credentials.
        EmailFormfilesGoogleCredentials2.jpg
      2. Click Create Credentials.
      3. Click Service Account.
        EmailFormfilesGoogleServiceAccount2.jpg
      4. Enter any name for your service account.
      5. Click Create.
        EmailFormfilesGoogleCreateServiceAccount2.jpg
    6. In the service account permission page click Project, and select Owner.
      EmailFormfilesGoogleOwner2.jpg
    7. Configure the OAuth consent screen:
      1. From the side menu, click OAuth consent screen.
        EmailFormfilesOAuthConsentScreen2.jpg
      2. Select Internal.
      3. Click Create.
        EmailFormfilesGoogleInternalCreate2.jpg
      4. Enter an application name (e.g SysAid).
      5. Click Add Scope.
        EmailFormfilesGoogleAddScope2.jpg
      6. Enter https://mail.google.com/.
      7. Click Add.
      8. Repeat the Add Scope process and add https://www.googleapis.com/auth/calendar.
    8. Generate a JSON credentials file:
      1. Click your new Service account.
      2. Select the check box for Enable G-Suite Domain-wide Delegation.
        EmailFormfilesGoogleDomainWideDelegation2.jpg
      3. Click Add Key.
      4. Click Create new key.
        EmailFormfilesGoogleCreateNewKey2.jpg
      5. Select JSON.
      6. Click Create.
        EmailFormfilesGoogleJSONCreate2.jpg
      7. Save the downloaded JSON file to a location on your PC where you can access it later.
      8. Click Save.
    9. Configure the Google admin console :
      1. Navigate to the Google admin console (https://admin.google.com/):
      2. Click Security.
      3. Select Advanced settings.
        EmailFormfilesGoogleAdvancedSettings2.jpg
      4. Click on Manage Google Services.
        EmailFormfilesGoogleManageGoogleServices2.jpg
      5. Make sure Gmail and Calendar are marked as unrestricted.
        EmailFormfilesGoogleUnrestricted2.jpg
      6. Return to the Advanced Settings screen and select Manage Third-Party App Access.
        EmailFormfilesGoogleManage3rdParty2.jpg
      7. Click Configure new app.
      8. Select OAuth App Name Or Client ID.
        EmailFormfilesGoogleOAuthAppName2.jpg
      9. In the search box, enter the value of the 'client_id' parameter from your JSON file.
      10. Select the application you created.
        EmailFormfilesGoogleAppName2.jpg
      11. Select both Client ID check boxes and click Continue.
        EmailFormfilesGoogleClientIDSelect2.jpg
      12. Under App Access, select Trusted Can Access All Google Services.
      13. Click Configure.
        EmailFormfilesGoogleAppAccessConfigure2.jpg
      14. Return to the Advanced Settings screen and select Manage Domain Wide Delegation.
        EmailFormfilesGoogleManageDWD2.jpg
      15. Click Add New.
        EmailFormfilesGoogleAPIClientsAddNew2.jpg
      16. In client ID field enter value of the 'client_id' parameter from your JSON file.
      17. In the OAuth scopes field, enter https://mail.google.com/ and https://www.googleapis.com/auth/calendar.
      18. Click Authorize.
        EmailFormfilesGoogleClientIDAuthoirize2.jpg
    10. Enter the generated values in SysAid:
      1. Open the JSON file you generated.
      2. Copy the value of the "client_id" parameter.
      3. Paste the value into the Service Account field in SysAid.
      4. Copy the value of the "private_key" parameter.
      5. Paste the value into the Private Key field in SysAid.
    11. Follow the instructions above for configuring the rest of the calendar sync form.

    Configure Sync with Office 365 Calendar (OWA Protocol)

    1. Fill out the Calendar Sync fields:
    Field
    Value
    ProtocolOWA
    Exchange Server URLhttps://sn2prd8004.outlook.com
    Network Domain Name (NetBIOS)None
    UsernameUser from the sync account
    PasswordPassword of the user from sync account
    Sync user email addressEmail address of the sync account
    1. Select the Enable Synchronization check box.
    2. Click Save.
    3. Click Test the Exchange Settings.
    4. Navigate to Tools > Calendar > My Calendar Settings.
    5. Select the Enable synchronization with the Exchange server check box.
    6. Click Save.

    Configure Sync with Exchange 2010 calendar

    1. Create a new User Mailbox (ie: SysAidSync)
      IntegrationExchangefilesNewuserExchange2010NewuserExchange2010.png
    2. Navigate to Active Directory and make this new user member of the Organization Management group. (This group is inside the Microsoft Exchange Security Groups OU.)
      IntegrationExchangefilesUsergroupExchange2010UsergroupExchange2010.png
    3. Give Full Mailbox Access Permission to each admin that wants to sync their calendar.
      IntegrationExchangefilesPermissionsExchange2010PermissionsExchange2010.png
    4. From the Exchange Management Console, navigate to Recipient Configuration > Mailbox, right-click on your admin mailbox and click Manage Full Access Permission... and add your SysAidSync to the list.
      IntegrationExchangefilesFullaccesspermissionExchange2010FullaccesspermissionExchange2010.png

    Configure Sync with Exchange 2007 calendar

    It's recommended to create a new user for SysAid integration with Exchange.

    Create your Exchange synchronization user:

    1. Create a new account.
    2. Right-click Organization Configuration.
    3. Add Exchange Administrator.
      IntegrationExchangefilesimage003.jpg
    4. Click Browse and select your new account.
      IntegrationExchangefilesimage004.jpg
    5. Click Add.
      IntegrationExchangefilesimage005.jpg
    6. Click Finish.
      IntegrationExchangefilesimage006.jpg

    Configure Sync with Exchange 2003 calendar

    It's recommended to create a new user for SysAid integration with Exchange.

    Create your Exchange synchronization user:

    1. Create a new Active Directory/LDAP user for Exchange Synchronization
    2. Go toExchange System Manager > Servers > MailServer > First Storage Group.
    3. Right click on Mailbox Store > Properties.
    4. Select the Security tab.
    5. Add your new user to the list with full control permission, as displayed below:
      IntegrationExchangefilesimage002.jpg

    What's Next