Best Practices - Enhancing EWS

There is only one supported way to enhance EWS and that is for a customer with a Premier agreement to open a support case with Microsoft and have a Design Change Request (DCR) filed to add the needed functionality.   I've seen customers do a lot of unsupported things with EWS including modifying the EWS stream, running their code in EWS's app poll in IIS and even reverse-engineering its code and injecting their own code - all of these are not supported scenarios.  When we run into issues with our customers running such software we may ask or require that such software be removed in order to see if issue they are running into still reproduces. 

"Enhancing Exchange" via unsupported methods.
https://blogs.msdn.com/b/webdav_101/archive/2013/06/13/quot-enhancing-exchange-quot-via-unsupported-methods.aspx 

What Does "Unsupported" Mean?
https://blogs.msdn.com/b/pcreehan/archive/2007/05/04/what-does-unsupported-mean.aspx

If you want to modify the EWS Managed API then its fairly easy to do so since its open-source; the source is on GIT.  Not only can you pull the code and build your own variant of this API, you can also check in changes and highlight bugs in the API. If the changes get accepted then they will get merged into the main branch. 

EWS Managed API... open source?  YES!  It's now Open Source!!!
https://blogs.msdn.com/b/webdav_101/archive/2014/09/29/ews-managed-api-open-source-yes-it-s-now-open-source.aspx

Also see:

EWS Best Practices
https://blogs.msdn.com/b/webdav_101/archive/2015/05/03/ews-best-practices.aspx