Email Administrators: Email/Contacts/Calendar Sync

MoxiEngage Integration Process using GraphAPI

  • Updated

MoxiEngage connects with your brokerage's Microsoft 365 (formerly O365) account to provide all users with consistent and easy access to their information without having to enter the same information over and over.

Please note that the steps ahead are meant for your brokerage email administrator to manage to provide seamless access between MoxiEngage and Microsoft 365. Once set up at the brokerage level, users will not need to take any additional steps other than signing into MoxiEngage.

Register a MoxiEngage Application as an API Client

Submit Credentials to MoxiEngage

Tips and Further Information

Why is MoxiWorks connecting with Microsoft 365?

MoxiEngage uses Modern Authentication with an impersonation service account through the Exchange Web Services (EWS) Managed API to synchronize data and perform actions on behalf of individual users. Each MoxiEngage user account has an email address that corresponds to a mailbox on your Microsoft 365 account. All integration actions are performed within the context of a single given mailbox. MoxiEngage never requires administrative access to your Microsoft 365 account.

What is MoxiWorks connecting within Microsoft 365?

Contacts

Your contacts' information lives in your brokerage Microsoft 365 account. MoxiEngage synch's with this account so it can show you your sphere, help keep track of agent transactions, and keep contact records up to date. Anything you add to MoxiEngage will be reflected in your Microsoft 365 account.

Calendar

Your day-to-day events and tasks will be visible on the MoxiEngage calendar, allowing you to keep track of what needs to be done next without needing to jump to another program. You can also add additional tasks and events to your calendar from Engage and set reminders.

Email

Sending an email to your contact directly from MoxiEngage lets you keep in the flow of what you're doing without having to jump back and forth between programs. Any email sent from Engage will be delivered to the recipient from your Microsoft 365 email box and you can view that email in your sent folder.

Note: MoxiEngage does not synchronize or inspect incoming email messages.

Information Gathering

To enable configuration of the MoxiEngage integration, we will need to gather some key information and credentials from you, including the service account credentials, Client ID, Tenant ID, and Value ID obtained by following the steps in the Microsoft 365 Setup Instructions for Administrators section of this document.  

How to submit:

  • Existing MoxiWorks Customers: You will have received a link to a form from your Customer Success Manager that will allow you to submit your account credentials.
  • New MoxiWorks Customers:  You will have received a link from the Implementation & Onboarding team that will allow you to submit your account credentials.

 

Register the MoxiEngage Application as an API Client

  1. Login to your Azure Active Directory Admin Center via https://aad.portal.azure.com/.
  2. "Expand Applications section".
    Picture1.jpg
  3. Click "App registrations".
    Picture2.jpg
  4. Click on the “New registration” link.
    Picture3.jpg
  5. Enter a name for the MoxiWorks client application (e.g., MoxiEngage).
    Picture4.jpg
  6. Indicate the type of Microsoft 365 account that will be using MoxiEngage. In most instances, the Single Tenant default selection will be correct.
    Picture5.jpg
  7. Select “Register”.
  8. Copy Application ID (client) and save to a text document.
    Picture6.jpg
  9. Copy Directory ID (tenant) and save to a text document.
    Picture7.jpg
  10. Select “API permissions” under the “Manage” group in the navigation on the left-hand side.
    Picture8.jpg

    The “User.Read” permission for the “Microsoft Graph” API may be listed in the “Configured permissions” list. This permission does not provide sufficient permissions for MoxiEngage to perform core functionality.

  11. Select “Add a permission".
    Picture9.jpg
  12. Select "Microsoft Graph".
    Picture10.jpg
  13. Select "Application permissions".
    Picture11.jpg
  14. Locate the “Calendar” item under the “Select permissions” area of the screen, then click to expand the permission group.
  15. Enable "Calendar.ReadWrite".
  16. Click Add Permissions.Calendar Read Write Add Permissions.png
  17. Locate the “Contacts” item under the “Select permissions” area of the screen, then click to expand the permission group.
  18. Enable "Contacts.ReadWrite".
    Enable Contacts Read write.png
  19. Click Add Permissions and select Application permission type.
  20. Locate the “Mail” item under the “Select permissions” area of the screen, then click to expand the permission group.
  21. Enable Mail.Send
    Graph API Enable Email Permissions.webp
  22. Select Add Permissions.
  23. Click on the link to “Grant admin consent for” your domain.
    Graph API Grant Admin.webp
  24. Click on the “Yes” button to confirm.
    Graph API Yes Button.webp
  25. Click on the “Certificates & Secrets” option under the “Manage” grouping of the menu.
  26. Click “New client secret”.
    Graph API New Client Sectret.png

    Caution: Client secret values can only be viewed once at creation. Be sure to save the secret when created before leaving this page.

  27. Insert a description “Engage access” or anything you prefer.
  28. In the Expires dropdown menu select a date you would like to grant access to Engage. Please record this date as you will need this information when submitting your credentials. We recommend a minimum of 2 years.
    Graph API Find Values.png
  29. Find the Value ID (not Secret ID) you just created in the list. Click the icon to copy the Value ID into a location to be submitted later. This will be input into the field “Value ID” field on the cognitoform.
    Graph API Value ID.png
  30. Provide to MoxiWorks the values you have saved for the registered application Client ID (step 5), Tenant ID (step 9), the Value ID, and a standard (non-administrator) user account that may be used for testing the impersonation setup.

Submit Credentials to MoxiEngage

Once the above process is completed, please submit your credentials (stated in step 29 above) to MoxiWorks.

How to submit:

  • Existing MoxiWorks Customers: You will have received a link to a form from your Customer Success Manager that will allow you to submit your account credentials.
  • New MoxiWorks Customers:  You will have received a link from the Implementation & Onboarding team that will allow you to submit your account credentials.

 

Tips and Further Information

Why is this process necessary for Engage to function for our agents?

1. MoxiEngage functions through a sync between itself and an agent’s email. Without an email to sync with, Engage cannot work.
2. MoxiEngage can sync to an office-provided Microsoft 365 or Google Workspace account if your email administrator completes the Integration Process.
3. The integration process can only be completed by someone with admin credentials to the office email tenant.
4. Once you’ve completed the process you must submit those credentials to MoxiWorks using the form provided to you by your CSM or the Onboarding team.
5. If you do not have an office-provided email or prefer not to do this process for any reason, your agents will always have the option to sync using a Free Gmail account. No further action is required by your office in this case.

Notes about known issues and what to do:

1. 3rd Party-Provided Email - Offices with email accounts purchased through third-party companies such as Go-Daddy may not be able to complete the process due to the limitations they place on admin access. 2. Your agents will still be able to sync with Free Gmail.
3. Access / Permissions - If you do not have admin privileges to your email tenant you must escalate to someone who does or reach out to your email provider. MoxiWorks cannot assist you with your permissions in your email tenant.
4. Stuck? - If you are stuck on a step of the process, compare your screen to the screenshot shown for that step and ensure they look the same. Additionally, each section of the process includes a time stamp and link to a video going through the process step by step.
5. Failed Submission – If you have submitted credentials and have subsequently been notified that your submission failed, we recommend redoing the setup process entirely. During this new setup, do not use anything created in the previous attempt, instead create a new service account with a new name, etc. If you use any previously created accounts, permissions, etc you will likely experience the same issue.
Most offices that have resubmitted credentials after failing their first submission passed on their 2nd attempt.
6. When redoing the process, it is critical that any field where you name something is filled in differently that your previous attempt. If you reuse names from a previous attempt this will likely cause an issue, even if you have deleted the previously created account / permission. We recommend putting a number at the end of the name that reflects the attempt # (i.e. MoxiEngage2 & Impersonation2).
7. If you continue to have issues we recommend reaching out to your email provider and requesting assistance.

Related Resources

Google Workspace Support

Microsoft Office Support

The following resources may provide additional information you need to perform the requisite tasks:

 

Compare Active Directory to Azure Active Directory

Azure AD PowerShell Module

Connect to Microsoft 365 with PowerShell

Set an individual user's password to never expire

Was this article helpful?

Have more questions? Submit a request

Comments

0 comments

Please sign in to leave a comment.