This protocol consists of a set of XML-based commands that are used by a client device to synchronize and exchange its email, files, and data with a server.
The client first uses the Autodiscover command (section 18.104.22.168) to get a user's account configuration. The client can then view and modify server data related to that account, including email messages and attachments, folders, contacts, and calendar requests.
The client then uses the Provision command (section 22.214.171.124) to send device information to the server and to get and subsequently acknowledge security policy settings from the server. Next, the client uses the FolderSync command (section 126.96.36.199) to retrieve the folder hierarchy of the user.
Next, the client typically uses the GetItemEstimate command (section 188.8.131.52) to retrieve the number of changes that need to be downloaded to the client via the first Sync command (section 184.108.40.206) request. This is immediately followed by the Sync command, to get a synchronization key and then messages from the server. Optionally, the Ping command (section 220.127.116.11) or Sync command can then be issued to keep the device up-to-date on any server changes.
The client processes outgoing email using the SendMail (section 18.104.22.168), SmartReply (section 22.214.171.124), and SmartForward (section 126.96.36.199) commands. For incoming messages, the client can call the ItemOperations command (section 188.8.131.52) to fetch the message, and then use the MoveItems command (section 184.108.40.206). S/MIME messages are processed with the ResolveRecipients (section 220.127.116.11) and ValidateCert (section 18.104.22.168) commands.
The client uses the FolderSync, FolderCreate (section 22.214.171.124), FolderUpdate (section 126.96.36.199), and FolderDelete (section 188.8.131.52) commands to update, create, and delete mailbox folders on the server.
The client can set and request server parameters by using the Settings command (section 184.108.40.206).