Revision Summary Date Revision History Revision Class Comments 4/4/2008 0.1 New Initial Availability. 4/25/2008 0.2 Minor Revised and updated property names and other technical content. 6/27/2008 1.0 Major Initial Release. 8/6/2008 1.01 Minor Updated references to reflect date of initial release. 9/3/2008 1.02 Minor Changed title of document. 12/3/2008 1.03 Minor Revised and edited technical content. 2/4/2009 1.04 Minor Revised and edited technical content. 3/4/2009 1.05 Revised and edited technical content. 4/10/2009 2.0 Major Updated technical content for new product releases. 7/15/2009 3.0 Major Revised and edited for technical content. 11/4/2009 4.0.0 Major Updated and revised the technical content.
technical content. 2/11/2013 12.0 Major Significantly changed the technical content. 7/26/2013 12.1 Minor Clarified the meaning of the technical content. 11/18/2013 13.0 Major Significantly changed the technical content. 2/10/2014 13.0 None No changes to the meaning, language, or formatting of the technical content. 4/30/2014 13.0 None No changes to the meaning, language, or formatting of the technical content. 7/31/2014 13.0 None No changes to the meaning, language, or formatting of the technical content. 10/30/2014 13.1 Minor Clarified the meaning of the technical content. 3/30/2015 13.1 None No changes to the meaning, language, or
Between a Messaging Client and Exchange Servers In the context of communication between a messaging client and Exchange servers, "messaging client" refers to any generic client that uses the Microsoft Exchange messaging system. A messaging client does not necessarily have to be an e-mail client. As illustrated in the figure in section , messaging clients have a variety of protocol options to communicate with Exchange servers: RPC, MAPI extensions for HTTP, POP3, WebDAV, Web Services, NSPI, and . Between a Mobile Client Device and Exchange Servers Mobile client devices communicate with Exchange servers via the Exchange ActiveSync protocols. Between a Messaging Client and Directory Service Messaging clients communicate with the directory service to locate Autodiscover sites, as described in . This communication uses the . Between a Messaging Client and DNS Messaging clients communicate with servers to locate alternate Autodiscover sites. For information about Autodiscover, see . Protocol Summary The tables in the following sections provide a comprehensive list of the Member Protocols of the Microsoft Exchange System. The Member Protocols are grouped according to primary purpose. Microsoft Exchange Supplemental Documents Protocols in this table enable consistency throughout the open specifications by providing data structures, terms, properties, and reference information that is broadly useful. Protocol name Description name Data Structures Describes common data structures that are used in remote operations. Exchange Server Protocols Master Property List Lists all properties used for communication between clients and servers, provides summary information about each property, and provides links to the documents in which the
property value ranges and semantics are specified. ROP Primer/Storage and Retrieval Protocols The ROP primer protocols enable the packaging and transmitting of data between clients and servers. The storage and retrieval protocols enable the storage and retrieval of messages related to calendars, tasks, and personal . The hierarchical relationships between the ROP storage and retrieval protocols are illustrated in the following figure, in which each protocol is represented by its specification short name. Figure 3: ROP primer/storage and retrieval protocols ROP Primer Protocols Protocols in this table enable the packaging and transmitting of messaging data between clients and servers. Protocol name Description name Messaging Application Programming Interface (MAPI) Extensions for HTTP Enables a client to access personal messaging data on a server by sending HTTP requests and receiving responses returned on the same HTTP connection. This protocol extends HTTP and HTTPS. Wire Format Protocol Serves as the transport basis for client/server communications over RPC. Remote Operations (ROP) List and Encoding Protocol Provides the remote operations used to access and modify information on the server.
properties of an object. Appointment and Meeting Object Protocol Extends the Message and Attachment Object Protocol, as described in , for use with calendaring. Configuration Information Protocol Allows a client to share overlapping application settings with a server. Where appropriate, it can also be used to change the configuration of a feature on the client from the server or vice versa. Contact Object Protocol Enables the handling of contacts (2) and personal distribution lists. Delegate Access Configuration Protocol Enables a user to delegate the responsibility for his or her mailbox to another user. Document Object Protocol Enables representation of an ordinary file, such as a document generated by a application, in a mail folder for later retrieval. Extends the Message and Attachment Object
Protocol, which is described in Public Folder-Based Free/Busy Protocol Publishes the availability of a user or resource. Post Object Protocol Enables the representation of a bulletin board post in a message store. Reminder Settings Protocol Enables a user to discover and act upon appointments, tasks, messages, or contacts (2) that have a deadline or for which is necessary. Object Protocol Used by clients to create and consume . RSS Object Protocol Enables the representation of an item that is from a news feed. Extends the Message and Attachment Object Protocol, which is described in Email Rules Protocol Enables the manipulation of incoming messages on a server. Short Message Service Enables clients to create, mail up
(SMS) and Multimedia Messaging Service (MMS) Object Protocol modify, and delete and messages. Extends the Message and Attachment Object Protocol, which is described in Search Folder List Configuration Protocol Enables clients to persist a user's search folders on the server. Task-Related Objects Protocol Enables the representation of task-related Message objects in a message store. Voice Mail and Fax Objects Protocol Enables servers to create and send Unified Messaging objects. Offline Address Book (OAB) Public Folder Retrieval Protocol Provides a method for delivering data from server to client. Sharing Message Object Protocol Shares mailbox folders between clients. Content Conversion Protocols Protocols and technologies listed in this table enable clients and servers to convert from the standard-based formats into one or more of the Microsoft Exchange-supported formats. Protocol or Description Short name
technology name iCalendar to Appointment Object Conversion Algorithm Converts data between iCalendar services, as described in , , , and and . RFC 2822 and MIME to Email Object Conversion Algorithm Converts data between the Internet standard format, as described in , and the Message object format. S/MIME Email Object Algorithm Handles the conversion of arbitrary messages and of and encrypted messages. Rich Text Format (RTF) Compression Algorithm Compresses and decompresses data, as described in , to or from one of the supported compression formats. Rich Text Format (RTF) Extensions Algorithm Encapsulates additional content formats (such as ) within the RTF body property of messages and attachments. Transport Neutral Encapsulation Format (TNEF) Data Algorithm Encodes and decodes Message objects and to an efficient stream representation. vCard to Contact Object Converts data between a and an object mail
Figure 4: Exchange ActiveSync specifications The Exchange ActiveSync protocols are listed in the following Protocol or other technology name Description Short name Exchange ActiveSync: AirSyncBase Namespace Protocol Used by the Exchange ActiveSync commands to identify the size, type, and content of the data sent by and returned to the client. Exchange ActiveSync: Calendar Class Protocol Enables the interchange of calendar data between a server and a client device. Exchange ActiveSync: Command Reference Protocol Enables the synchronization of e-mail, Short Message Service (SMS) messages, attachments, folders, contact (2) information, meetings, calendar data, tasks, notes, and documents. Exchange ActiveSync: Contact Class Protocol Enables the interchange of contact (1) data between a server and a client device. Exchange ActiveSync: Conversations Protocol Improves the ways in which e-mails are displayed in the conversation view. Exchange ActiveSync: Document Class Protocol Communicates document data from the server to the client.
Exchange ActiveSync: Data Types Data types used by the Exchange ActiveSync . Exchange ActiveSync: Class Protocol An XML representation of e-mail data sent or received on mobile devices that communicate by using the Exchange ActiveSync protocols. Exchange ActiveSync: HTTP Protocol Enables a client device to synchronize data with the data that is stored on the server. Exchange ActiveSync: Short Message Service (SMS) Protocol Provides the mechanisms for a mobile device to synchronize SMS messages with the server and for the server to send SMS messages through the mobile device. Exchange ActiveSync: Notes Class Protocol Provides the mechanisms that allow a mobile client to synchronize user notes with a server. Exchange ActiveSync: Provisioning Protocol Enables servers to communicate security policy settings to client devices. Exchange ActiveSync: Rights Management Protocol Describes the actions allowed on an e-mail message and
Service Provider Interface (NSPI) Referral Protocol address book requests to an appropriate address book server. Messaging Application Programming Interface (MAPI) Extensions for HTTP Enables a client to access directory services on a server by sending HTTP requests and receiving responses returned on the same HTTP connection. This protocol extends HTTP and HTTPS. Exchange Server Name Service Provider Interface (NSPI) Protocol Enables Messaging API (MAPI) clients to access the directory service. Address Book Object Protocol Describes the properties of various Address Book objects, and how the properties of Address Book objects interrelate. Address Book User Interface Templates Protocol Describes the properties and operations that are permissible for address book templates.
Interoperability Protocol (iMIP). Outlook Internet Message Access Protocol (IMAP) Standards Support The level of support provided by Office Outlook 2007, Outlook 2010, Outlook 2013, and Outlook 2016 for the Internet Message Access Protocol (IMAP). Outlook Post Office Protocol Version 3 (POP3) Standards Support The level of support provided by Office Outlook 2007, Outlook 2010, Outlook 2013, and Outlook 2016 for POP3 service. Exchange iCalendar Standards Support The level of support provided by Microsoft Exchange Server 2007, Microsoft Exchange Server 2010, Microsoft Exchange Server 2013, and Microsoft Exchange Server 2016 for the Internet iCalendar Protocol (iCalendar), the iCalendar Interoperability Protocol (iTIP), and the iCalendar Interoperability Protocol (iMIP). Based Based
Exchange Internet Message Access Protocol (IMAP) Standards Support The level of support provided by Exchange 2007, Exchange 2010, Exchange 2013, and Exchange 2016 for the Internet Message Access Protocol (IMAP). Exchange Post Office Protocol Version 3 (POP3) Standards Support The level of support provided by Exchange 2007, Exchange 2010, Exchange 2013, and Exchange 2016 for POP3 service. Message Processing Protocols Journal Message Processing File Format The file format in this table enables clients and servers to interpret metadata required to journal or archive e-mail messages. File format name Description Short name Journal Record Message File Format Extends the protocols described in and to enable the formatting of information about an message that is sent through the server. mail
The Web Services protocols are listed in the following table. Protocol or other technology name Description Short name Availability Web Service Protocol Enables clients to request availability information for users and/or resources. Web Service Configuration Protocol Enables clients to retrieve organization policy configuration information for a mailbox. Mail Tips Web Service Extensions Extends the Mail Tips Web Service protocol, which enables clients to retrieve tips for a mailbox. Mail Settings Web Service Protocol Enables clients to read and change information about Unified Messaging properties, play voice mail, or record greetings over the telephone. Out of Office (OOF) Web Service Protocol Enables clients to configure server-based automatic responses. Autodiscover Publishing and Lookup Web Service Protocol Enables clients to retrieve user configuration settings information. Based mail
can be used to locate items stored on the server. Delegate Access Management Web Service Protocol Enables clients to manage delegate access to mailbox information that is stored on a server. Distribution List Creation and Usage Web Service Protocol Enables clients to query the server for distribution lists; expand a distribution list into the constituent addresses; and create, delete, get, move, update, and copy distribution lists. Folders and Folder Permissions Web Service Protocol Enables clients to create, copy, move, delete, get, or empty folders and to modify folder permissions that are stored on the server. Get List Web Service Protocol Enables clients to retrieve information about meeting rooms from the server. Get Server Time Zone Web Service Protocol Enables clients to retrieve time zone information mail
Service Protocol information about message delivery by the server. Notifications Web Service Protocol Enables clients to receive pull notifications from the server. Online Personal Search Web Service Protocol Enables a client to search a collection of and return information about those items (if any) that match. Password Expiration Date Web Service Protocol Enables client applications to query a server to determine when the password for an account will expire so that the application can warn that the password needs to be changed. Post Items Web Service Protocol Enables clients to create, retrieve, update, move, copy, and delete on the server. Push Notifications Web Service Protocol Enables clients to receive subscribed event updates that are sent by the server. Resolve Recipient Names Web Enables clients with incomplete
Service Protocol recipient identifying information to retrieve a list of matching and similar recipients that are known to the server. Inbox Rules Web Service Protocol Enables clients to get Inbox rules and update Inbox rules for messages on the server. Mailbox Search Web Service Protocol Enables clients to search the contents of a mailbox and retrieve the specified folders or items. Mailbox Contents Synchronization Web Service Protocol Enables clients to keep a local mailbox synchronized with the server mailbox. Tasks Web Service Protocol Enables clients to create, update, and delete task items on the server. User Configuration Web Service Protocol Enables clients to create, get, update, and delete user configuration objects. Extended Properties Structure Enables clients to access custom properties on items and folders in a
Requirements The client is able to create a message, as described in section , and resolve a recipient, as described in section . Protocol-Specific Details Using remote operations (ROPs) Figure 22: Sending a message by ROPs Note The ROPs are sent via RPC or MAPI extensions for HTTP. Several ROPs can be batched into a single request, as described in . The client creates a message per the use case described in section . The client resolves a recipient per the use case described in section . The client issues a RopModifyRecipients ROP request ([MS-OXCROPS] section 2.2.6.5) to add the recipient to the recipient table for the message. The Exchange server returns the success or failure of the operation. The client issues a RopSaveChangesMessage ROP request ([MS-OXCROPS] section 2.2.6.3) to save the new recipient The Exchange server returns the success or failure of the operation. The client issues a RopSubmitMessage ROP request ([MS-OXCROPS] section 2.2.7.1) to submit the message for delivery. The Exchange server returns the success or failure of the operation. Exchange Web Services Figure 23: Sending a message by using Exchange Web Services The client uses the HTTPS/SOAP SendItemSoapIn request WSDL message, as described in section 3.1.4.8.1.1, to specify a list of messages in the ItemIds element. It is assumed that that each item specified in the ItemIds element already contains the necessary sender and recipient information. The Exchange Client Access server responds with a SendItemSoapOut response WSDL message, as described in [MS-OXWSCORE] section 3.1.4.8.1.2, which includes the ResponseCode element specifying the status of the operation. Send a Message to a Remote Recipient Synopsis The send a message to a remote recipient use case describes how a messaging client sends a message to a recipient that is stored on a remote server. One of the intentions of this use case is to highlight how content conversion-related protocols are used in message processing.
Index A Add an attachment 46 46 46 46 46 72 22 30 26 28 27 31 30 31 22 28 22 29 31 31 20 36 C 70 83 72 35 36 35 30 36 Compose and send an e-mail message with an attachment 75 75 75 75 75 20 Considerations 72 72 26 Create a message 41 41 41 41 40 Create a strongly typed message 43 44 43 44 43 Create an appointment request free-busy data 78 78 78 78 D Delete message(s) 59 60 60 60 59 Dependencies 36 35 Design intent 37 Design intent – add an attachment 46 46 46 46 46 Design intent – create a message 41 41 41 41 40 Design intent – create a strongly typed message 43 44 43 44 43 Design intent – delete message(s) 59 60 60 60 59 Design intent – find in a folder that match search criteria 56 57 56 57 56 Design intent – log on to a mailbox 39 39 39 38 Design intent – open a folder 55 56 55 56 55 Design intent – provision a mobile client device
68 68 68 68 67 Design intent – register for and receive notifications 64 65 65 65 64 Design intent – resolve a recipient from an address book 49 49 49 49 49 Design intent – send a message 52 52 52 52 Design intent – send a message to a remote recipient 54 55 54 54 54 Design intent – server information discovery 37 37 37 37 37 Design intent – synchronize item(s) 61 62 62 62 61 28 Display the most recent message in the example 74 73 73 73 73 E 35 71 72 72 72 71 71 71 71 71 71 71 71 Examples 75 75 75 75 75 78 78 78 78 74 73 73 73 73 73 81 80 80 80 80 77 76 76 76 76 27 Extensibility 82 70 70 version negotiation using RPC ( 70, 70) 70 35 F Find items in a folder that match search criteria 56 57 56 57 56 20 20 21 21 G 9 H 71 72 72 72 71 71 71 71 71 71 71
71 I 82 72 14 36 8 L Log on to a mailbox 39 39 39 38 M Message processing protocols 31 30 31 22 82 N 28 O Open a folder 55 56 55 56 55 Overview 21 21 22 20 P 36 Provision a mobile client device 68 68 68 68 67 Provision and synchronize a mobile client device for the first time 81 80 80 80 80 R 14 Register for and receive notifications 64 65 65 65 64 Requirements 72 71 20 36 Requirements - error handling 72 72 72 71 71 71 71 71 71 71 71 Resolve a recipient from an address book 49 49 49 49 49 22 S 72 Send a message 52 52 52 52 Send a message to a remote recipient 54 55 54 54 54 Server information discovery 37 37 37 37 37 Set up and display new notifications 77 76 76 76 76 29 Synchronize item(s) 61 62 62 62 61
20 35 36 35 71 72 72 72 71 71 71 71 71 71 71 71 22 30 26 28 27 31 30 31 22 28 22 29 31 31 20 System use cases 37 System use cases – add an attachment 46 46 46 46 synopsis ( 46, 46) System use cases – create a message 41 41 41 41 40 System use – create a strongly typed message 43 44 43 44 43 System use cases – delete messages 59 60 60 60 59 System use cases – find items in a folder that match search criteria 56 57 56 57 56 System use cases – log on to a mailbox 39 39 39 38 System use – open a folder 55 56 55 56 55 System use cases – provision a mobile client device 68 68 68 68 67 System use cases – register for and receive notifications 64 65 65 65 64 System use cases – resolve a recipient from an address book 49 49 49 49 System use cases – send a message 52 52 52 52 System use – send a message to a remote recipient 54 55 54 54 54 System use cases – server information discovery 37 37 37 37 37 System use cases – synchronize item(s) 61 62 62 62 61 T 22 30 26 28 27 31 30 31 22
28 22 29 31 31 83 U 37 Use cases – add an attachment 46 46 46 46 46 Use – create a message 41 41 41 41 40 Use – create a strongly typed message 43 44 43 44 43 Use – delete message(s) 59 60 60 60 59 Use cases – find items in a folder that match search criteria 56 57 56 57 56 Use cases – log on to a mailbox 39 39 39 38 Use cases – open a folder 55 56 55 56 55 Use cases – provision a mobile client device 68 68 68 68 67 Use cases – register for and receive notifications 64 65 65 65 64 Use cases – resolve a recipient from an address book 49 49 49 49 49 Use cases – send a message 52 52 52 52 Use cases – send a message to a remote recipient 54 55 54 54 54 Use cases – server information discovery 37 37 37 37 37 Use cases – synchronize item(s) 61 62 62 62 61 V Versioning 82 70 70 version negotiation RPC ( 70, 70) 70 W 31 31