Интерфейс программирования приложений для обмена сообщениями ( MAPI ) - это API для Microsoft Windows, который позволяет программам распознавать электронную почту. Хотя MAPI разработан, чтобы быть независимым от протокола, он обычно используется для связи с Microsoft Exchange Server.
MAPI использует функции, в общих чертах основанные на стандарте X.400 XAPIA. Она включает в себя средства для доступа транспортных сообщений, хранилищ сообщений и каталогов.
В то время как простой MAPI (SMAPI) представляет собой подмножество из 12 функций, которые позволяют разработчикам добавлять базовые функции обмена сообщениями, расширенный MAPI (EMAPI) позволяет полностью контролировать систему обмена сообщениями на клиентском компьютере. Сюда входит создание сообщений и управление ими, а также управление почтовым ящиком клиента и поставщиками услуг.
Простой MAPI входит в состав Microsoft Windows как часть Outlook Express / Windows Mail, а полный расширенный MAPI входит в состав Microsoft Outlook и Exchange.
В дополнение к расширенному клиентскому интерфейсу MAPI, программные вызовы могут выполняться косвенно через клиентский интерфейс Simple MAPI API, через клиентский интерфейс API Common Messaging Calls (CMC) или объектно-ориентированный интерфейс библиотеки CDO. Эти три метода проще в использовании и предназначены для менее сложных приложений с поддержкой обмена сообщениями. (Простые MAPI и CMC были удалены из Exchange 2003.)
MAPI был первоначально разработан Microsoft. Компания основала свою команду MS Mail в 1987 году, но только в 1991 году, когда она приобрела Consumers Software и приобрела Network Courier, у нее появился продукт для обмена сообщениями. В переработанном виде он продавался как MS PC Mail (или Microsoft Mail for PC Networking). Базовый API для MS PC Mail позже был известен как MAPI версии 0 (или MAPI0 ), чтобы отличать его от «истинного» MAPI.
Полный интерфейс Extended MAPI требуется для взаимодействия служб обмена сообщениями с клиентскими приложениями, такими как Outlook. Например, несколько поставщиков продуктов для серверов электронной почты, не принадлежащих Microsoft, создали «поставщиков услуг MAPI», чтобы обеспечить доступ к своим продуктам через Outlook. Известные примеры включают Axigen Mail Server, Kerio Connect, Scalix, Zimbra, HP OpenMail, IBM Lotus Notes, Zarafa / Kopano и Bynari.
MAPI также имел своего рода интерфейс поставщика услуг. Microsoft использовала это, чтобы связать MS Mail с почтовой системой на базе Xenix для внутреннего использования.
Расширенный MAPI - это основной метод доступа к данным электронной почты, используемый Outlook для взаимодействия с Microsoft Exchange через поставщиков услуг MAPI, поставляемых с Outlook.
Microsoft опубликовала полную информацию о протоколе MAPI / RPC с августа 2007 года.
«Протокол MAPI» - это разговорное название MAPI / RPC. Иногда Microsoft также называла это «Exchange RPC» и «Outlook-Exchange Transport Protocol».
Microsoft предоставляет образец приложения на основе MAPI / RPC под названием MFCMAPI в помощь разработчикам. Он также широко используется в качестве средства диагностики как разработчиками, так и администраторами Microsoft Exchange.
Первоначальная реализация была разработана для использования в локальной сети или LAN.
В Exchange 2003 Microsoft представила RPC через HTTP (позже переименованный в Outlook Anywhere) как способ обмена через Интернет.
В 2014 году в Exchange 2013 с пакетом обновления 1 (SP1) он был заменен более «обычным» стеком на основе HTTP, известным как «MAPI over HTTP».
Несколько проектов программного обеспечения с открытым исходным кодом начали работать над внедрением библиотек MAPI, в том числе: