The Future of Exchange’s Developer APIs


Jason Henderson, the lead PM for Exchange Web Services, just put up a roadmap for the future of development against Exchange. Key points:

  • WebDav, Store Events, CDOEX and ExOleDB all say hasta la vista in the next version of Exchange. Universal replacement: Exchange Web Services
  • MAPI’s not dead yet. The Exchange team’s going to stop working on MAPI client binaries, but the server itself remains a MAPI server. Outlook will still use MAPI to talk to the server and you can too. You’ll just be using Outlook’s libraries or the raw ROPS.
  • CDO.dll is practically dead. This binary has always been owned by the Exchange team. Even when Outlook shipped a version, it was built by Exchange. Now is the time to start migrating those CDO based apps!

I’ve been playing with the next release of Exchange Web Services here and I gotta say the updates they have planned are pretty sweet. This API is well on it’s way towards being a complete replacement for MAPI.

Comments (9)

  1. Paul Jones says:

    Stephen,

    Thanks for the heads up, very interesting. You say ‘…the updates they have planned are pretty sweet…’. From a MAPI developers point of view, can you elaborate any more about the WS API that’s got you excited? From my own point of view I’m still sitting on the fence. MAPI clearly is the API of choice for certain types of applications but I/we would really be interested in your opinions/point of view about WS.

    From our own investigations into Exchange Web Services we clearly see there are some things it does good, and some things that aren’t quite up to par yet. For example we are in the business of processing large volumes of messages and Web Services still doesn’t cut it in terms of performance etc.. (I would love to be proved wrong!).

    If you ever get the chance to blog it we’d really be interested in your thoughts/discoveries from your own investigations into WS.

    Thanks.

    Paul.

  2. Stephen Griffin says:

    Jason covered much of the improvements to EWS – the major blocker for me using them had been the lack of coverage (like not being able to access Associated Contents). Those holes are being closed up.  But the real exciting thing is the client side .Net library that makes the EWS code trivial to write (assuming you’re using .Net). In one sample app a buddy is working on we estimate he was able to cut 60% of his code by switching over.

  3. Oliver Seaman says:

    Thanks Stephen, very interesting… I was surprised to see the suggestion to use Outlook MAPI instead of Exchange MAPI, since I’d always understood Outlook MAPI to be not recommended for certain types of application like fast, multithreaded services for which EWS would be too slow. Do you know if there’s any intention to develop Outlook MAPI to fill the gap?

  4. Stephen Griffin says:

    For the server sort of scenarios, we’re recommending a move towards EWS. MAPI code would be reserved for client side scenarios, where you’d have to use Outlook’s MAPI anyway.

  5. I’ve given this solution to a couple customers so far and it appears to be working for them, so I thought

  6. Chavdar Angelov says:

    Can MSG files be created with the Exchange Web Services?

  7. Stephen Griffin says:

    Nope

  8. so2442 says:

    I hope item level security will be addresses. cdowf.dll was removed from Exchange 2007 and if webdav is removed from the next Exchange version then we will need an item level procedure.

  9. Ying says:

    Hi Stephen,

    I am using WebDav protocol to sync recurring appointments on Microsoft Exchange server 2003 SP1.

    I can get the exceptions of recurring with attachment of master item.

    And also i can get the deleted ones of recurring with EXDATE property.

    But how can i get the instances of recurring?

    And can i get the index of instance?

    Advance thanks for the help.

    Ying