Please visit our website: Web Portals for Office 365 - Drupal!


We were inspired by:

  1. Office 365 will be deprecating the SharePoint public-facing website option, so we thought Drupal would be a great fit as a public facing website option, having a large community of developers and end-users, numerous themes and modules. Unfortunately, there was no solution that integrated both systems together. We saw this as an opportunity.

  2. Office 365 system offers a very rich set of APIs for it's numerous enterprise-level applications. We wanted to leverage those API's as best a possible to create a compelling suite of Drupal modules that provided a comprehensive cloud first experience to a website owner/ administrator, with a holistic view of their data and users.(registration via azure, outlook calendar integration, power bi for data analytic etc)

  3. The large Drupal community, and all the other third-party systems (Salesforce, odoo, google apps etc) that it is connected with, but nothing was available for office 365. With our knowledge of both systems' APIs Drupal and office 365 (SharePoint, outlook, and Azure) we thought it would be a great match.

  4. Office 365 has several native mobile applications for Android, IOS and windows that can be leveraged out of the box. These include outlook, sharepoint, yammer, powerbi, powerapps, dynamics CRM and skype.

What it does

A suite of solutions connecting Drupal to Office 365 services(Azure, outlook contacts, outlook calendar, SharePoint, skype).

Having Drupal, with its ease of use and many beautiful themes serve as your main public facing website or campaign website, meanwhile office 365 with includes SharePoint list support which comes with enterprise workflow and line of business application development possibilities. Intranets and extranets portal creation for staff, customers, and partner.

Connect to office 365 data sources using this module. Additional solutions support form submission, SharePoint list sync, calendar sync, contact sync and Azure AD single sign-on.

Our Solutions:

Office 365 Sharepoint

Mapping Drupal data with SharePoint List Items, Document Libraries and Calendar items.

Office 365 Calendar

Synchronize Drupal data with outlook calendar events.

Office 365 Contacts

Synchronize Drupal data with outlook contacts.

Office 365 Dynamics CRM

Synchronize Drupal data with Dynamic CRM entity types.

Office 365 Forms

Send submitted data from Drupal Web Forms, Entity Forms and Forms API modules to SharePoint list, Outlook Contacts, Outlook Calendar and Dynamics CRM entities.

Office 365 OneDrive for Business

Synchronize Drupal media files, any file system folders to OneDrive for Business.

Office 365 User Synchronization and Registration

Create and register Drupal Users to a specific Azure Active Directory(AAD) Group, these Drupal Users will now have an account in AAD having possible access as external users to varying Office 365 services.

Office 365 User Authentication

Authenticates a Drupal Users against Azure Active directory (AAD) and logs that user into Drupal.

Office 365 Power BI

Build integrated reports that mash up/data from a multiple organizational data source including Drupal and Drupal Commerce, to show an accurate picture of the organization’s performance in one dashboard.Embed varying reports or dashboards in the context of Drupal.

Office 365 Powerapps

Build and integrate Powerapps based on Drupal and Drupal Commerce data, Embed Powerapps with complex business logic based on multi sources into Drupal.

Office 365 and Xamarin

Build mobile applications that uses Drupal as a database/data source. Enhance the experience of your user by offering an intuitive and robust mobile application.

Solution Features:

  • Unlimited Connections
  • Easily Add workflows from Office 365 using powerapps, logic flow, sharepoint designer and visual studio
  • Error logging
  • Intuitive user interface for the creation of connections and the associating field mapping process
  • Drag and Drop to sort mapping columns
  • Secure using SSL
  • Drupal Commerce Support
  • Custom Content Type Support
  • Support for Drupal Web forms, Entity Forms and Forms Api
  • Collect user generated content or surveys data for analysis via PowerBI

What does Drupal to Office365 and SharePoint Integration provide access too:

  • Powerapps and Logic Flow support
  • Search Integration (people, documents)
  • Social, Yammer
  • Container level permissions
  • Outlook Calendar Sync
  • Outlook Task Sync
  • Outlook Contact Sync
  • Versioning
  • eDiscovery
  • Adaptive Video Streaming
  • Disaster Recovery
  • Related Documents
  • Power BI - Data analysis
  • Task Focused
  • Review/Approval Workflow
  • Aggregation Portal
  • Scheduling
  • Delve
  • First class mobile application via Microsoft.
  • Access to our add-on modules for contacts, event, authentication, group and roles sync
  • Integration with legacy / non Drupal tables in your database

How we built it

This has built over a 7-8 month period, where it was a full time and dedicated effort.

The system leverages a user's AAD tenant, where a web application is created and a App ID and App secret key are generated.

The office 365 apis, azure users, outlook contact, outlook calendar and sharepoint api's are leveraged by the Drupal module to synchronize and map Drupal user, node and form data into office 365.

The synchronization options are bi-directional, Drupal to office365 and office 365 to Drupal.

Synchronization can also be timed based on an internal 5 minutes, 1 hour etc.

Challenges we ran into

There was not a lot of sample code or direction as to connecting php/Drupal with the azure and office 365 apis, so a lot of research and proof of concepts had to be done initially, which took some time.

Accomplishments that we're proud of

The final product looks and works great. The application is very robust and can be leveraged for every type of website large or small and any vertical or industry that wants to connect their Drupal website with their office 365 services.

What's next for Drupal To Office365 Sync

More support for other office 365 apis. Add multi-lingual support.

Built With

Share this project: