Enable external sharing in Office Groups

Office Groups are the center of many team collaboration things. You can add guest to an Office Group and share the OneNote notebook and  document library with the guests. Sometimes you want to share 1 folder or 1 document with an external user. Or you want to share a document with an anonymous link.

You need some PowerShell to do this. All Office Groups live in their own site collection so we need to modify the sharing options of the site collection with these statements:

Connect-SPOService -Url https://tenant-admin.sharepoint.com
Set-SPOSite -Identity https://url-of-the-office-group -SharingCapability ExternalUserAndGuestSharing

The options for ShareCapability are:

  • Disabled
  • ExternalUserSharingOnly
  • ExternalUserAndGuestSharing
  • ExistingExternalUserSharingOnly

More details can be found in this article.

Invite external guests to an Office Group

In Office 365 you can create Office Groups. An Office Group is a solution where each member can participate in conversations, schedule meetings, share files and notes and even initiate a Skype for Business voice and video call for urgent real-time decisions. You can use Office Groups to collaborate with external users. They are called ‘guests’.

To enable guest access in Office Groups you need to set the option in the admin section of your tenant. There is an excellent article that describes these steps.

What happens when you invite a guest?


You add a guest by entering his email address. Then this flows starts:

The guest gets an email in his mailbox:

That email says that the guest is now member of the group and contains a link to the group files and a link to start a conversation. The guest does not have access to the whole list of conversations (so he’s unable to see a historic overview of the conversations in the groups when he is invited later) but he can send an email to the group.

When the guest wants to access the files he must create an account:

He can choose a password and must provide some basic information about himself.

A verification code is send to his email address to make sure he is the right one.

At the end of the process he can access the underlying SharePoint team site of the group where he can access the document library with the files.

The link to the group will not be visible in his Outlook desktop application. The user must bookmark a link to the group (or save his email).

OneDrive for Business – Sync a shared folder

With the new OneDrive for Business sync client you can share a folder with a co-worker. Since the January 2017 update you can also sync the shared folder to your device. This works with the Windows and Mac sync client.

A common use case for this is when you want to collaborate with a few co-workers on some documents. The owner creates a folder on his OneDrive and then can sync the folder with one or more co-workers.



The co-workers now get an e-mail with a link to the folder. When they click on that link they are redirected to the OneDrive for Business web interface. On that page you see a ‘sync’ button. A click on the button starts the OneDrive for Business sync client on the device and syncs the files on your local drive.


Note that this is a 2-way sync. When some of the co-workers delete a file, the file also disappears for the other co-workers. The file is stored in the users recycle bin where it can get restored from.







How to customize the Office 365 app launcher

In Office 365 there is a famous “Waffle icon” at the top left of the window. This is called the “app launcher”.

Via this icon go can browser from application to application within your Office 365 tenant. There are a few ways you can customize the content of the app launcher.

Note that most of the apps cannot be hidden. Apps like Mail, Calendar, People, Office Apps are there to stay. There are only a few buttons you can show or hide. These are the options:

Via the SharePoint administration center you can go to the tenant settings to show or hide the OneDrive for Business button, the Sites (now SharePoint) button and (when you have enabled this) the OneNote Staff and Class Notebook buttons.

Do you want to create your own buttons? There is an interface for that.

Go to the tenant admin and click on Settings > Organization profile.

There you find a “add custom tiles for your organization” section:

When you click on Edit > Add custom tile you can create a new tile:

A tile (button) must have a Title or name, a valid url, a description and a url to an image that will be visible on the tile. Make sure the image is 60px to 60px and available for everyone.

When you don’t see the tile immediately you can log off and on again. The title should be visible in the “new” section of the app launcher:

Security options for OneNote

OneNote is a member of the Office family you already know. With OneNote you can take notes, draw, record audio or video and many more. There are currently two versions of OneNote:

  • A UWP app that comes pre-installed with Windows 10
  • A full desktop app that comes with your Office suite installation.

Both can do more or less the same. The UWP app has a slightly more modern interface.


This is the UWP app modern interface:

This is the interface of the Office desktop application:


By default, a OneNote notebook has one owner but OneNote has excellent collaboration capabilities. Sharing a OneNote notebook is very easy. When you start working with other people you need to start thinking about security. Who will be able to see the content of the shared notebook?


There are a few ways to store and share your OneNote notebooks:


Store your OneNote notebook locally

This is the easiest way to work in OneNote. Nobody will be able to get access to the content but this is very dangerous because when your system crashes you lose all the data. When you store your notebook on a local disk (or even on a removable disk like a USB drive) you can’t share it with other users and collaborate in real time. I would not advice to do this.


Store your OneNote notebook on OneDrive (or OneDrive for Business)

Storing your notebooks on a cloud drive like OneDrive or OneDrive for Business is more secure. You can access your content from any device and you by default the only one that can access it. When you store your notebook on a cloud drive you can easily share it with others. When you use OneDrive or OneDrive for Business, this sharing is fully integrated. This is not the case when you want to use another cloud drive like Google Drive or DropBox.


Store your OneNote notebook in an Office Group or a SharePoint library

When you have an Office 365 subscription you can create SharePoint sites and Office Groups. These two team workspaces use more or less the same technology in the back. When you create a SharePoint team site or an Office Group a notebook is created. In an Office Group all the members of the group have permissions to edit the notebook. From within the notebook you can share it with other co-workers. Depending on the settings you can even share the notebook with external people. This is an option set by the system administrator of the Office 365 tenant.


More options?

There are a few more options the secure the notebook. When you store it in a SharePoint library, an Office Group or a OneDrive folder you can set custom permissions to the notebook. For example, you could set contribute permissions for your team and set read permissions for the manager.



Another way to secure a notebook is by adding a password to a section. Password protection in OneNote is designed to help keep your notes safe from prying eyes. Whether you use OneNote for class notes at school, meeting notes at work, a personal diary or blog at home, or personal information about yourself or your friends and family, passwords play a crucial part in controlling access to those notes. You can find more about using passwords at the Microsoft support website. When you use passwords you must know that a password is stored in an encrypted way and when you forget the password it can’t be recovered in any way. Passwords can only be set a section level, not at notebook or page level.


You can add some layers of security to a OneNote notebook. Starting with storing it on a local, or shared cloud drive and share the notebook from within the UWP or desktop application to adding passwords to certain sections.





Citizen developers or power to the people

The world is changing on a rapid pace and modernization has created the business of today multidimensional. Today we are in a constant competition of accuracy and development towards betterment in our projects which requires a wide range of information management which are by far way too much difficult to be dealt with the traditional management setups.

Today we all need some software assistance in resolving issues being dealt every day and not everyone can afford the long response time required to acquire a software solution neither many of us have the required financial support to get professional solutions. This demand has initiated a new era of ‘’citizen developers’’ where every person in search of a software solution works on the problem to find the required solution which match his needs and is also affordable on his pocket.

What has helped such individuals is the growth of SaaS (software as a service) that helps the solution seeking individuals of today an easy way out of their problems. They do not need to seek complex data management servers and other such multifarious sources to manage their work but instead use already available apps to seek required solutions. These apps are customizable at their end to adjust according to their needs and reduce the time gap of new professional software development which is costly and the availability of which is also limited to many users across the globe. This idea is global in terms of availability and is facilitating users around the company to resolve their issues in time.


Proper help in this regard is being provided by the Office 365 solution. Office 365 has a fast, easy and manageable approach towards issues most likely occurring in teams. Focusing team efforts to gain the desired results through proper planning and distributed work load by proper team guidelines in business setup is what it is best at.

Tools like Office Groups, Planner of Teams are guiding teams though proper communication, proper channeling of information, employment of a shared vision, accountability, division of labor and inculcating a broader vision for adapting changes so proper growth and improving stability. Office 365 is also providing the opportunity to enable citizen developers to interact with each other and give them a chance to build powerful solutions.


This idea has actually transferred the work load from professional level to simple users and such helping apps act as a beacon of light guiding the individuals to find solutions to their problems.


Power Apps, Microsoft Flow and the complete Office365 suite are the main focus of interest in this revolutionizing industry being established at the user end. This idea can and will indeed change the whole perspective of software industry because mostly the problems faced by an individual at micro level are definitely faced by others as well at that same level. This idea of “giving power at User-end” will bring a lot of software solutions that in a short time will end many data management and information technology issues being faced by a lot of people across the company as this idea is fast, affordable and customizable.

A lot of potential lies in this concept of “Citizen Developers” and this idea will have a long term influence on the software industry as it has all what is required to fill in the gaps between problems and their solutions faced by users of today.

Use your custom WebApi with Microsoft Flow

Microsoft Flow is the new workflow engine from Microsoft. With flow you can create automated workflows between your favorite apps and services to get notifications, synchronize files, collect data, and more.

You can find Microsoft Flow at: http://flow.microsoft.com

Flow contains many predefined templates to use: https://flow.microsoft.com/en-us/templates/. Things like send reminders via the Flow mobile app to you phone when you get a mail or sync your Dropbox files with OneDrive, …

The real power of Microsoft flow is the fact that you can use you own services and extend your flows with custom data. In the following demo I will create a flow to send a notification email to users from a custom REST web service.

To start I create a custom C# ASP.NET WebApi application in Visual Studio 2015. I called the application “SwaggerDemo“.

If you don’t want to create it yourself, you can download the solution from my GitHub account.

The Api contains the following code:

In the old days we created soap based web services that used WSDL to describe the service. Nowadays we use Swagger.io to do this. It is pretty easy to implement Swagger to an existing WebApi.

Use NuGet to add the Swashbuckle package to you project.

To know more about this, check this page: http://devcenter.wintellect.com/paulballard/give-your-rest-apis-some-metadata-swagger!

When you run your project now you get to see the “Swagger” output:


Now you can deploy your server to a public webserver and we can start using it with Flow.

To start using the Api we need to create a new service in Flow. Services are used to provide you the data and do operations.

To add your custom API, go to the Flow dashboard via http://flow.microsoft.com and click the settings icon in the top right corner:

Select “Custom API’s” and click the “Create custom API” button in the next screen.

To add an API you need a Swagger file, a JSON file that describes you service. To get the Swagger file for you WebApi go to http://editor.swagger.io, click “File” and “Import URL…”. Enter the url of you webapi in the next screen.

Click on “Import”.

Now you click “Download JSON” in the “File” menu:

Save that file because we’ll need it in a moment.

We go back to our Flow – Create Api screen and upload our Swagger JSON file and enter the details for our custom API:

That is pretty much all we need to do to register our Api in Flow.

No we can start creating our first custom flow in Microsoft Flow. Click on “My flows” in the top menu bar and click on the “Create from blank” button.

Start with giving you flow a name on top of the screen and add the first action. I added the “Recurrence” action to run my flow every 10 minutes for example.

In the next step I will call my custom service. Click on “Add action” and select your service. Mine was called Swagger DEMO:

You don’t need to do a lot of things here. The API will be called and the results will be stored in a some variables that we will use in the next step.

In this example I’ll send an email to each user I get from the service. I use the “Apply to each” action to iterate the results:

The output of the REST call to my custom service is stored in the “body” variable. The “Apply to each action will loop all the results and will execute each action in the container. I add a “Send an email” action to it.

The Swagger file that I uploaded while creating my custom service will provide me the objects and properties that I can use in my action. In this example I get an email address and a name for each user that the service call returns.

Now my flow is ready. All I need to do is save and publish it!