Syncing contacts with office 365 for internal IT

I am looking to automate syncing office 365 users to syncro contacts to avoid manually creating contacts for every employee in syncro for an internal IT team supporting 500-550 users. I have found these resources via google.

https://interactiveavit.com/sync-office365-with-syncrormm-contacts/

However both of these scripts are centered around the 365 partner portal and not designed to work for internal IT teams that don’t use a partner portal, which of course makes sense for an MSP focused RMM. Does anyone have any resources they can point me to that don’t rely on partner portal access?

Thanks,

5 Likes

YES! I filed a similar request over in #feature-request

1 Like

Yes, this is badly needed…

Adapt the script to read from your instance of O365, or perhaps do a csv export and have the script parse that and then create via the Syncro API.

We also faced this issue. Ended up creating an App which uses the Microsoft Graph API, downloads the contacts, and pushes them to Syncro using the Syncro API.

Would it be possible for that to be shared with the community?

I agree with most of those issues you raise when talking about building a physical app (where code is actually written), and especially if that turns into a product that is then being self promoted.

But i think there is an exception to the rule and thats using other SAAS products to integrate and expand on Syncro features using the API. Things like Power Automate/Apps/Bi or Integromat/Make are both examples that come to mind which i am sure (and have proven in other posts that exist here) that Syncro does not mind being shared with the community. I don’t see that personally as being an issue as although you may have spent alot of time invested in getting those types of integrations to work. but by sharing it here really do not set out to gain anything other than sharing knowledge.

I only bring this up as in my view @tschoeller mentioned using the Microsoft Graph API to push data into the Syncro API, i wouldn’t consider this as crossing the line.

In saying that anything to do with the API comes with an element of risk.

I did not write the code but I can tell you it pulls customer data from the GraphAPI into a local database and then pushes in into Syncro using their API. One of our devs spent a few days putting it together and the owner has not decided to make it open source. I wanted to let you know it was possible and was not overly difficult. The hardest part was selecting which properties the GraphAPI should return.

Considering how needed this feature is, I would like to see Syncro implement this functionality. That would solve all problems surrounding this concern. Manually updating contacts for all clients is tedious and outdated especially when the graph API is so readily available. Hopefully this is in the works.

They would need to manage it the same way they manage other integrations. Authorize each customer with 365 or use the 365 partner connection. Synco would manage a daily sync directly into their DB without the middleware.

Configuring the GraphAPI for each customer tenant and adding the tenant ID into the Customer config would not be too much trouble compared with custom middleware.

Feel free to bump the feature request:

You lock down the graph API to read only, even lock it down to specific contact fields if you want.

If Syncro is hacked you will have much worse problems than client contact data. It becomes a non-issue if you are importing customer contact data anyhow.

1 Like