Messaging Application Programming InterfaceMAPI)は、Microsoft Windows の API に基づくメッセージングアーキテクチャであり Component Object Model である。クライアントプログラムは、MAPIを呼び出すことで特定のメッセージングサーバにアクセスし、メッセージング機能を実現することができる。MAPI は Microsoft Outlook が Microsoft Exchange Server との通信に使う独自通信プロトコル MAPI/RPC と密接に関連している。

概要

Extended MAPI は全機能を提供するが、Simple MAPI はそのサブセットである。これにより、メッセージの生成・管理、メールボックスの管理などが可能となる。Simple MAPI は Outlook Express/Windows Mail の一部として Microsoft Windows に含まれているが、Extended MAPI は Microsoft Outlook および Microsoft Exchange Server の一部となっている。

Extended MAPI、Simple MAPI に加えて、Common Messaging Calls (CMC) API インタフェースやオブジェクトベースの CDO Library インタフェースを使うこともできる。これらは Extended MAPI に比べて扱いやすく単純である(Simple MAPI と CMC は Exchange 2003 で削除された)。

MAPI はマイクロソフトが設計した。MS Mail 開発チームが結成されたのは1987年だが、メッセージング製品は1991年に Consumers Coftware Inc を買収して同社の Network Courier を獲得したのが最初である。これを修正して MS PC Mail (Microsoft Mail for PC Networking) として販売した。MS PC Mail の基本APIは MAPI version 0 (MAPI0) と呼ばれていた。MAPI の機能は X.400 XAPIA 規格に緩やかに準拠している。

MAPI にはメール転送エージェントやディレクトリ・サービスへのアクセス機能も含まれている。

サービスプロバイダ・インタフェース

Extended MAPI インタフェースは、Outlook のようなクライアントアプリケーションがメッセージベースのサービスにアクセスするのにも使われる。例えば、マイクロソフト以外の電子メールサーバ製品にも「MAPIサービスプロバイダ」を名のり Outlook によるアクセスを可能とした製品がある。例えば、Zimbra、HP OpenMail、IBM Lotus Notes、Zarafa、Bynari などがある。

MAPI0にも一種のサービスプロバイダ・インタフェースがあった。マイクロソフトはこれを社内でXENIXベースの電子メールシステムに MS Mail がアクセスするのに使っていた。

Extended MAPI は Outlook の主要な電子メールデータアクセス方法であり、Microsoft Exchange Server には Outlook に同梱されている MAPI サービスプロバイダ経由でアクセスする。

MAPI/RPC プロトコルの詳細

マイクロソフトは最近になって、MAPI/RPC プロトコルの完全な詳細を公開した[1]。

「MAPI プロトコル」は MAPI/RPC の別名である。時には、"Exchange RPC" とか "Outlook-Exchange Transport Protocol" とも呼ばれている。

外部リンク

  • Messaging API at MSDN Library
  • OpenChange project - MAPIプロトコルの詳細や関連ツールがある。

API(Application Programming Interface) Technology PUFsecurity

Application Programming Interface (API) Code In Purple

What is Application Programming Interface BotPenguin

Messaging App Interface Design on Behance

Interface and Application Programming Use Arduino for Projects