Getting Started
Basic Concepts
Advanced Concepts
How-to Guides
Building integration flows
Data transformation
Integration patterns
Developing Components
Tenant Management
CRM Components
ERP Components
E-Commerce Components
Basic Components
Utility Components
Component Descriptor
Covered in this article
Related articles
Contracts and Workspaces Understanding credentials Data Sample Overview Creating your first integration flow Getting Started What is an integration component? What is an integration flow? What is a tenant? Take a tour of the product Creating a webhook flow Building a component in Java Building a component in Node.js Content-Based Routing Deploying a component How-to Guides Managing flow history Managing OAuth Clients Managing user roles in a tenant Managing Workspaces Mapping data Building real-time flows Sending data to a list of recipients REST API component Managing your SSH keys Managing your Teams/Components Allmysms component Amazon MWS component AMQP component AppDirect Component AWS Lambda component AWS SNS component Bazaarvoice component ChannelAdvisor component Code component Configuration component CSV component Docusign component Dun-and-bradstreet component Ebay component Edifact-parser component Email component Exact Online component Filter component Google PubSub component Google-shopping component Google-translate component Goto-webinar component Google Spreadsheets component Components JDBC Component JDBC Component JDBC Component Jsonata component Key-value-component component Ldap component Lightspeed-ecom component Lightspeed-retail component Lionbridge-translation component Magento1 component Magento2 component Mailchimp component Mandrillapp component Mapper component Microsoft Dynamics CRM component MsSQL component NetSuite component ODATA component Petstore-nodejs component Pipedrive component Postgresql component Quickbooks-component component Request-reply component Rest API component Router component Salesforce-cpq component Salesfoce Component Sdl-translate component Sftp component Shopify-admin component Shopware component Simple-trigger component Smarty-streets component Soap component Splitter component Stripe component Sugar-crm component Timer component Twitter component Webhook component Xml component Component Descriptor Structure References Sailor compatibility matrix View Classes

Outlook component


An integration component for the Office 365 Outlook REST API


This component uses OAuth 2.0 authentication, so when deploying it to your team you need to supply OAuth App Client ID and Client Secret. You can register your app to obtain a client ID and secret via, for that you would need to sign in with either your Microsoft account (, or your work or school account (Office 365).

Client ID and Secret need to be configured in the environment variables MSAPP_CLIENT_ID and MSAPP_CLIENT_SECRET. When specifying callback URI please use your callback URL in a form


for public cloud default tenant just use https://your-tenant.address/callback/oauth2

Apart from the OAuth 2.0 button you would need to specify the AD tenant ID if you not sure about that just use common.

Before using this component certain Microsoft Graph scopes need to be defined for your application. This can be done via

The list of scopes required by the component is: “ calendars.readwrite mail.send”.

Known issues and limitations

Current implementation uses AD V2.0 OAuth2

Second version of AD protocol has some advantages, see here for more information.

OData output for lastModifiedDateTime has a precision issue

Apparently the lastModifiedDateTime returned by MS Graph has no milliseconds in it is obvious that filter query accept and treat millisecond values correctly there is a workaround for that issue implemented in the code, however you need to keep an eye on it.


Apache-2.0 © GmbH