Overview of Outlook add-ins architecture and features
When a user or administrator acquires an add-in, the add-in's manifest is saved to the user's mailbox or into the organization. When Outlook starts up, it loads all manifests the user has installed, processes them and sets up all the extension points for the add-in (for example, display buttons in command surfaces, run regular expression against currently selected message, and so forth). The user can now use the add-in.
Add-ins use the Office.js API to access the Outlook Add-in API and interact with Outlook.
Interaction of typical components when the user starts Outlook
As we evolve Outlook clients and the add-in platform and add new ways for add-ins to integrate, sometimes we're unable to implement a feature at the same time across all clients (Mac, Windows, web, mobile). To handle this situation, we version both the manifest and the APIs. In this way the platform supports backwards compatibility at all times, meaning that developers can build an add-in which works in a down-level way in older clients, but also lets you take advantage of new features in newer clients. You can read more about how versioning works in Outlook add-in manifests.
Outlook add-in features
Outlook add-ins offer many rich features that can be used to support various scenarios.
|Contextual activation||Outlook contextual add-ins can activate based on the following criteria:
|Module extensions||An Outlook module extension integrates your add-in with the Outlook navigation bar. For more information see Integrate your Outlook add-in with Outlook's navigation bar. Module extensions are only available in Outlook 2016 for Windows.|
|Add-in commands||Outlook add-in commands provide ways to initiate specific add-in actions from the ribbon. They are only available for module extensions and add-ins that apply to all emails or events. For more information see Add-in commands for Outlook.|
|Roaming settings||An Outlook add-in can save data that is specific to the user's mailbox that you can access in a subsequent Outlook session. For more information see Get and set add-in metadata for an Outlook add-in.|
|Custom properties||An Outlook add-in can save data that is specific to an item in the user's mailbox that you can access in a subsequent Outlook session. For more information see Get and set add-in metadata for an Outlook add-in.|
|Getting attachments or the entire selected item||A contextual Outlook add-in can access attachments and the entire selected item from the server-side. See the following:
|User profile||A mail add-in can access the display name, email address, and time zone in the user's profile. For more information see the UserProfile object.|
Get started building Outlook add-ins
To get started building Outlook add-ins, see Get Started with Outlook add-ins for Office 365 or Integrate your Outlook add-in with Outlook's navigation bar.
For concepts that are applicable to developing Office add-ins in general, see the following: