Hi all,
Has anyone had experience with connecting to Exchange Server?
I'm keen to look at our inbound exchange server, and pull the details of all e-mails received or sent over the last year, by mail domain - but not sure if anyone's done something similar?
There does seem to be an older OLEDB connector for Exchange referenced here https://msdn.microsoft.com/en-us/library/ms191461(SQL.90).aspx
.. and a proprietary connector mentioned here https://marketplace.visualstudio.com/items?itemName=CDATASOFTWARE.ExchangeADONETProvider
but not sure if anyone in the community has tried (or succeeded) with this?
What I'm trying to pull out is:
Date | From | To: | Count |
01 Jan 2016 | XXX@company.com | YYY@company2.com | 10 |
01 Jan 2016 | YYY@company2.com | XXX@company.com | 5 |
02 Jan 2016 | ZZZ@company3.com | YYY@company.com | 15 |
Thank you
Sean
Solved! Go to Solution.
I've never tried to connect directly to Exchange, but there are PowerShell libraries from Microsoft that you should look into. You can dump the sender/recipients out to a CSV and then parse the results in Alteryx. I believe there's a different PowerShell library based on if you are using an on-prem Exchange server or hosted (Office 365). Also, make sure to check out YouTube, a quick search shows a bunch of PowerShell/Exchange videos that could help you out.
If you are using Office 365, you may want to consider using the Microsoft Graph API as it will give you easy access to a bunch of other items in your environment.
https://developer.microsoft.com/en-us/graph/
https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/resources/message
PS: Make sure you run this by your Exchange administrator because you may cause a huge memory spike, that could crash the server. Exchange tends to be rather fickle.
Are you looking at all emails sent just to yourself or to any user of the organization.
If you're looking at just your own emails, there is a roundabout way of doing it with Access as an intermediary:
Hey - thank you @patrick_mcauliffe and @adm510 - I was hoping that there would be some sort of ODBC connectivity that could be used, or an API, but as you say @adm510, perhaps this will have to be done through an extract with Powershell or a 3rd party tool.
Thank you for pitching in !
Sean
I was hoping to be able to trawl the exchange server for EVERY e-mail sent or received, to start looking at patterns, so unfortunately using the local outlook client would only give my my own inbox (as you mentioned).
Thank you for looking at this tho' - I've learned a handy trick from your response that I can use elsewhere :-)