"IPM.Note" is a message class (MailItem.MessageClass
in the Outlook Object Model or PR_MESSAGE_CLASS
in Extended MAPI) that tells Outlook what kind of item you have. "IPM" here stands for "InterPersonal Message"- messages like that are designed to be consumed by end users; but this is just a hint - it is perfectly valid for you to use a message class that does not start with "IPM" or use "IPM" even if you are dealing with a hidden message that an end user will never see.
On the low (MAPI) level, all items in Outlook are amorphous bags of properties. Message class tells Outlook how to treat a particular item - e.g. whether an Inbox message is a regular message, meeting invitation, or a report item (NDR) etc. Some other most frequently used message types are IPM.Contact
, IPM.Appointment
, IPM.Task
. A comprehensive list of message classes used by Outlook can be found on MSDN.
If you create a custom MAPI form, message class is how Outlook figures out which form to load when opening the item (e.g. "IPM.Note.MyCustomForm"). If the custom form is not found, Outlook will use its "parent" form (e.g. "IPM.Note" if "IPM.Note.MyCustomForm" cannot be found).
You can take a look at the raw MAPI data in OutlookSpy (I am its author - click the IMessage button). You can also see all locally installed MAPI forms and their message classes if you click the IMAPIFormMgr button.