Jump to content

Office 365 Calendar Sync - Administrative Setup: Difference between revisions

From Prime 16 Online User's Manual
No edit summary
 
(44 intermediate revisions by the same user not shown)
Line 1: Line 1:
Prime 16 utilizes technologies made available through Office 365 (O365) to provide users with the ability to synchronize their Prime and O365 calendars.  This new sync is very easy to use in Prime.   
Prime 16 utilizes technologies made available through Office 365 (O365) to provide users with the ability to synchronize their Prime and O365 calendars.  This new sync is very easy to use in Prime.  This is the updated version as of 05/19/2026. Prior version information is below in the "Archived/old material" section.


Setup for individual staff members is very easy.  Within the staff member forms, go to the Calendar Setup tab.  Insert the appropriate path to the Office 365 website (shown as https://outlook.office365.com in the example below) and the O365 username (shown as test@kempscaseworks.onmicrosoft.com).  To test that the entries are valid, click the test button and, when prompted, enter the user’s O365 password.


[[File:CalSync1.png|400px]]


The system will use the entries to attempt to contact the O365 system and test the username and passwords entered.  If Prime believes the settings are correct, a message is shown indicating the test seemed to work.
= Prime Microsoft 365 Calendar Sync Setup Instructions =


[[File:CalSync2.png|400px]]
These instructions are for organizations setting up Prime calendar sync with Microsoft 365 / Outlook. Each organization should create its own Microsoft Entra application registration in its own Microsoft tenant.


A failure results in a failure message:
== 1. Setup ==


[[File:CalSync3.png|400px]]
=== A. Microsoft 365 / Entra Administrator Setup ===


Set the time zone for the staff person using the dropdown list. Determine the method of synchronization desired.  For example, if the staff person wants to sync from O365 to Prime, and from Prime to O365, check both boxes.  If the staff person only wants to sync from O365 to Prime, select that single box.  If the staff person only wants to sync from Prime to O365, select that single box.
The organization's Microsoft 365 administrator must create an app registration in Microsoft Entra. This allows Prime to connect each Prime user to that user's Microsoft 365 Outlook calendar.


Syncing only one way (i.e., choosing only one checkbox) will result in inconsistent entries in both calendars. For example, when syncing only from Prime to O365, entries in Prime will be reflected in the O365 calendar. Changes to those entries will also be reflected in the O365 calendar.  New entries or changes to the O365 calendar will not change any entries in Prime.
# Sign in to the Microsoft Entra admin center. https://entra.microsoft.com
# Go to:
#: <pre>Entra ID → App registrations</pre>
# Choose:
#: <pre>New registration</pre>
# Enter a name such as:
#: <pre>Prime Access Calendar Sync</pre>
# For supported account types, choose:
#: <pre>Single tenant only - <your domain name></pre>
#: This means the app is only for your organization's Microsoft tenant.
# Create the app registration by clicking "Register"
# After the app is created, copy these two values:
#:<pre>Application (client) ID and Directory (tenant) ID</pre>
# These will be entered into Prime.


The first two times a user synchronizes their calendar will take longer than successive syncs. The reason for that is the initial syncs require getting all entries from both calendars and making sure they are copied to the other calendar.  Because entries are not yet tied to one another, entries in the calendars may appear to duplicate. 
=== B. Configure the Redirect URI ===


To illustrate, before synchronization, a staff member would enter a calendar item in Prime, and then enter that same item in O365.  Neither O365 nor Prime associate those entries as the same entry.  Rather, each entry is treated as unique.  When a sync is performed, the calendar item in Prime is added to the O365 calendar.  The O365 item is added to Prime.  Those entries may be for the same event, but O365 and Prime do not know that.
In the app registration, go to:


After the initial synchronization, new entries in either calendar should not appear to “duplicate” in the other calendar.  Each entry, when synched, has its own unique identifier that each calendar understands.  When a change is made in one location, the same change is made in the other using those unique identifiers.
<pre>Authentication</pre>


After the first two syncs, synchronization should be much faster.  Since only changes on either side are transferred, there will be much less to copy.  The first couple of syncs should be made using the O365 Sync Start Page.  This page is accessed using the top-line menu bar and going to SearchCustom Search and clicking on the Exchange Sync button:
Click "Add Redirect URI" and choose:


[[File:CalSync4.png|400px]]
<pre>Mobile and desktop applications</pre>


A user may press the “Open O365 Sync Details” button to get to the original setup page.  Pressing the “Sync” button will start the synchronization process.  The user is prompted for his password.  [Note: The sync is only performed for the user who is currently logged into Prime.]  The system, depending on the settings made for the user, will then sync to and from O365/Prime.
In the blank box (that may show an example entry), add this custom redirect URI exactly:


As the synchronization progresses, updates are shown on this page, including the total number of items to synchronize, and how many are complete.  Finally, the starting and ending times for the sync are displayed.
<pre>http://localhost:3017/</pre>


After the initial synchronization is performed by the user, and when exiting the system using the Exit menu option, a user will be asked whether he wants to perform a calendar sync.  Answering “Yes” will initiate the calendar sync before exiting the system.
'''Important:''' The final slash matters!


[[File:CalSync5.png|400px]]
Prime uses a desktop OAuth sign-in flow where Microsoft signs the user in through the browser and redirects back to a local listener on the user's workstation.


Answering “No” will avoid a calendar sync.  Finally, clicking “Cancel” will indicate the user never wants to be asked again and effectively disables calendar syncing.
=== C. Enable Public Client Flow ===


[Some limitations exist on syncing.  Old entries are ignored.  Only entries within the last few days and into the future are synced.  Changes to old entries are also ignored.  This helps improve the speed of syncing and limits bandwidth use.  Additionally, because Prime is a standalone product, it is not a true “calendar client”.  Moving O365 calendars or resetting the sync settings in Prime will cause all items to be synced and (potentially) duplicated.  Synchronization only takes place when Prime is running and synchronization is triggered.]
Still under the app registration's '''Authentication''' page, in the ''Settings'' section, enable:


The start and stop time in Prime and O365 are copied between calendars.  Additionally, the “Note” in Prime is used as the title in the O365 entry and vice versa.
<pre>Allow public client flows</pre>


=Two Factor Authentication=
Set it to:
For O365 accounts that have two factor authentication (2FA) enabled on the account, you may have to set and use an application specific password to bypass the 2FA.
 
<pre>Enabled</pre>
 
Prime is a desktop Access front end, so it should be treated as a public client.
 
=== D. Add Microsoft Graph Permissions ===
 
In the app registration, go to:
 
<pre>API permissions</pre>
 
Add Microsoft Graph delegated permissions:
 
<pre>
User.Read
Calendars.ReadWrite
Mail.ReadWrite
Mail.ReadWrite.Shared
Mail.Send
Mail.Send.Shared
offline_access
</pre>
 
Prime uses delegated permissions because each Prime user signs in as themselves.
 
Review the list of delegated permissions. Once that list includes all those shown above, click the "Grant admin consent for <your domain>".
 
== 2. Prime Administrator Setup ==
 
After the Microsoft administrator creates the Entra app, open Prime and go to the calendar sync settings screen.
 
<pre>Admin → Custom Admin</pre>
 
and choose
 
<pre>Exchange Calendar Sync Settings</pre>
 
In the "Exchange Calendar Sync Admin" form, choose "Open Org Settings".
 
Enter the following values:
 
<pre>
Tenant ID:        Directory (tenant) ID from Entra
Client ID:        Application (client) ID from Entra
Redirect URI:    <<As instructed by Kemp's Case Works staff>>
Default Time Zone: <<Select the appropriate time zone>>
</pre>
 
Then enable organization-level calendar sync:
 
<pre>Calendar Sync Enabled = Yes</pre>
 
Recommended sync window:
 
<pre>
Sync Past Days:    30
Sync Future Days:  365
</pre>
 
Each organization can adjust those values later.
 
In the "Exchange Calendar Sync Settings" page click "Save Settings" and close this form. This should put you back in the "Exchange Calendar Sync Admin" form. Click on "Refresh Status" to see the values you've entered.
 
===Testing Settings===
====Test Chilkat/OAuth====
In the "Exchange Calendar Sync Admin" click the "Test Chilkat/OAuth" button. This will test to ensure the underlying/background systems are in place that are necessary for the system to run.
 
At the bottom you should see "Chilkat.OAuth2 object created and configured success". That means the system should be ready. Click OK to close this screen and return to the "Exchange Calendar Sync Admin" screen.
 
====Test Sign-in / Me====
This button will test sign in with Microsoft using your Microsoft account. Be prepared to pass whatever credentials and two-factor authentication tests you may have set up with Microsoft.
 
When you click this button, a web browser page should appear asking you to log in. You must use your account credentials in the agency. After successful logon, you should see "OAuth2 access is granted." This informs you the Microsoft system has authenticated you and returned information that Prime can use.
 
Close the web browser.
 
You should see a "Microsoft Graph sign-in succeeded" notification together with information about your name and email account.
 
====Test Calendar Create/Delete====
This tests Prime's ability to create and then delete an entry in the calendar. Once again, you will be required to log on using your Organization's account. Use the web browser to enter your credentials and then close it. (It should again show the "OAuth2 access is granted" message.
 
You should see a note saying a test calendar event was created, together with a question of whether you want to delete it, click "Yes" to test deletion capacity.
 
You should see "The Outlook test event was created and deleted successfully." This indicates your setup is complete.
 
You can click "Close" to close the "Exchange Calendar Sync Admin" form.

Latest revision as of 15:06, 27 May 2026

Prime 16 utilizes technologies made available through Office 365 (O365) to provide users with the ability to synchronize their Prime and O365 calendars. This new sync is very easy to use in Prime. This is the updated version as of 05/19/2026. Prior version information is below in the "Archived/old material" section.


Prime Microsoft 365 Calendar Sync Setup Instructions

These instructions are for organizations setting up Prime calendar sync with Microsoft 365 / Outlook. Each organization should create its own Microsoft Entra application registration in its own Microsoft tenant.

1. Setup

A. Microsoft 365 / Entra Administrator Setup

The organization's Microsoft 365 administrator must create an app registration in Microsoft Entra. This allows Prime to connect each Prime user to that user's Microsoft 365 Outlook calendar.

  1. Sign in to the Microsoft Entra admin center. https://entra.microsoft.com
  2. Go to:
    Entra ID → App registrations
  3. Choose:
    New registration
  4. Enter a name such as:
    Prime Access Calendar Sync
  5. For supported account types, choose:
    Single tenant only - <your domain name>
    This means the app is only for your organization's Microsoft tenant.
  6. Create the app registration by clicking "Register"
  7. After the app is created, copy these two values:
    Application (client) ID and Directory (tenant) ID
  8. These will be entered into Prime.

B. Configure the Redirect URI

In the app registration, go to:

Authentication

Click "Add Redirect URI" and choose:

Mobile and desktop applications

In the blank box (that may show an example entry), add this custom redirect URI exactly:

http://localhost:3017/

Important: The final slash matters!

Prime uses a desktop OAuth sign-in flow where Microsoft signs the user in through the browser and redirects back to a local listener on the user's workstation.

C. Enable Public Client Flow

Still under the app registration's Authentication page, in the Settings section, enable:

Allow public client flows

Set it to:

Enabled

Prime is a desktop Access front end, so it should be treated as a public client.

D. Add Microsoft Graph Permissions

In the app registration, go to:

API permissions

Add Microsoft Graph delegated permissions:

User.Read
Calendars.ReadWrite
Mail.ReadWrite
Mail.ReadWrite.Shared
Mail.Send
Mail.Send.Shared
offline_access

Prime uses delegated permissions because each Prime user signs in as themselves.

Review the list of delegated permissions. Once that list includes all those shown above, click the "Grant admin consent for <your domain>".

2. Prime Administrator Setup

After the Microsoft administrator creates the Entra app, open Prime and go to the calendar sync settings screen.

Admin → Custom Admin

and choose

Exchange Calendar Sync Settings

In the "Exchange Calendar Sync Admin" form, choose "Open Org Settings".

Enter the following values:

Tenant ID:        Directory (tenant) ID from Entra
Client ID:        Application (client) ID from Entra
Redirect URI:     <<As instructed by Kemp's Case Works staff>>
Default Time Zone: <<Select the appropriate time zone>>

Then enable organization-level calendar sync:

Calendar Sync Enabled = Yes

Recommended sync window:

Sync Past Days:    30
Sync Future Days:  365

Each organization can adjust those values later.

In the "Exchange Calendar Sync Settings" page click "Save Settings" and close this form. This should put you back in the "Exchange Calendar Sync Admin" form. Click on "Refresh Status" to see the values you've entered.

Testing Settings

Test Chilkat/OAuth

In the "Exchange Calendar Sync Admin" click the "Test Chilkat/OAuth" button. This will test to ensure the underlying/background systems are in place that are necessary for the system to run.

At the bottom you should see "Chilkat.OAuth2 object created and configured success". That means the system should be ready. Click OK to close this screen and return to the "Exchange Calendar Sync Admin" screen.

Test Sign-in / Me

This button will test sign in with Microsoft using your Microsoft account. Be prepared to pass whatever credentials and two-factor authentication tests you may have set up with Microsoft.

When you click this button, a web browser page should appear asking you to log in. You must use your account credentials in the agency. After successful logon, you should see "OAuth2 access is granted." This informs you the Microsoft system has authenticated you and returned information that Prime can use.

Close the web browser.

You should see a "Microsoft Graph sign-in succeeded" notification together with information about your name and email account.

Test Calendar Create/Delete

This tests Prime's ability to create and then delete an entry in the calendar. Once again, you will be required to log on using your Organization's account. Use the web browser to enter your credentials and then close it. (It should again show the "OAuth2 access is granted" message.

You should see a note saying a test calendar event was created, together with a question of whether you want to delete it, click "Yes" to test deletion capacity.

You should see "The Outlook test event was created and deleted successfully." This indicates your setup is complete.

You can click "Close" to close the "Exchange Calendar Sync Admin" form.