Search has always been a powerful part of the SharePoint story and as Office 365 became Microsoft 365, the potential for search became wider and wider. This eBook will cover what Microsoft Search is, then why you would use it over some of the more specific search elements, such as SharePoint search before showing how you can use it, including a little bit of the extensible story with Graph.
Search has always been a powerful part of the SharePoint story, and as Office 365 became Microsoft 365, the potential for search became wider and wider. This eBook will cover what Microsoft Search is, then why you would use it over some of the more specific search elements, such as SharePoint search before showing how you can use it, including a little bit of the extensible story with Graph.
What do people understand about SharePoint Search?
I decided to ask 40 people what they understood about SharePoint Search. Most of them were outside of the SharePoint community as they would know a definitive answer (or at least they should). I should have asked Microsoft Search but was pretty sure no one would have known that! Here are the most common phrases they came back with.
Content and find were common words along with the more obvious SharePoint and Search replies. It was interesting that management, people, queries, and search appeared. The actual responses were just as interesting; here are a few of the relevant ones.
The answers ranged from the obvious to the more abstract. Some people hadn’t heard from me for a while and were worried about my mental state. Sharon Summer (who was happy to be quoted) came up with the great phrase of Clutter Management which I personally love!
Ultimately it showed that there’s a little understanding of what SharePoint search should be. What about Microsoft Search though?
This slide came from the Ignite in 2019. It shows that Microsoft Search is all about that same search experience across Microsoft 365. The vision is to be able to use the same index, the same service, the same AI services for all Microsoft 365 services.
In PowerPoint and looking for content? See the same from Word or SharePoint.
Looking to get your emails from Bing? That too.
Want to find the last Teams message from within Windows? That’s the plan.
So, is it just SharePoint Search extended? Many of you will have come from the SharePoint world and know how powerful SharePoint Search can be. However, it’s built on top of the Bing technology. Does that mean that SharePoint Search disappears? Actually, far from it.
Instead, SharePoint Search becomes one of the sources for the search service. It is then indexed to the central service along with Office.com, Outlook, Teams, Bing, etc. But it doesn’t stop there. As announced at Ignite, you can now bring non-Microsoft content onboard using Graph Connectors Ingestion Service. More on that later.
This is what helps to drive that consistent search across all services, by pulling all the different elements into one place. So what does that look like?
Searching in SharePoint
The start point for many in Office 365 is the SharePoint Landing Page from where you can see your latest content easily. You can also search your content from here with the main search box in the top navigation bar, searching across all content in your tenant that you have access to.
The screenshot above shows a search for the word “Project,” the results returned the Project App as well as two Project sites. If you then search for the Mark 8 Project, you return more results, including the files in the project site mentioned. You may also want to see more results with additional detail, which you can see by clicking on “Show more results.”
You can expand the details for these results by hovering over the results and also clicking on the Filters to filter based on certain fields such as date range. The verticals along the top allow results to come back for different types such as just Files, just Sites, and just People. The screenshot below shows results for searching for marketing where it returns people with marketing in their role or even where they have logged it as a project they were working on or skills they had.
People results will also appear in the main results with a separate card view.
What do things look like on the main SharePoint site? The answer is much the same but with the one exception – by default, the content will be filtered to just be from that site. For example, if we do the same search for Mark 8 in the Mark 8 Project Site below:
You will see that all the results show in the Mark 8 site, not any other areas. It has also included more of the news results as well. The user can click on the breadcrumb trail at the top to see all results, but the default is just to show that site.
What if you want to change this and search across the whole organisation? Well, you can, but you will need a bit of PowerShell. The best way is using PnP PowerShell and you can read more at https://docs.microsoft.com/en-us/powershell/module/sharepoint-pnp/set-pnpsearchsettings?view=sharepoint-ps but the main command would be:
Set-PnPSearchSettings -SearchScope Tenant
The scope will change by default if you select a library and it will then search just that library, giving you an easy way to focus on that library’s contents.
All of this is great functionality but does it stand out as being different to many of the things you could do in SharePoint Search. It may look a little more modern and be more targeted but is it any different? Let’s find out.
New Microsoft Search Tools
While many of these items are related to just SharePoint, Microsoft Search now provides so much more.
- Floor Plans
These allow you to bring more engaging content into your search results and make it easier for users to find specific content. All these can be found in the Office 365 Admin Centre where it can be accessed from the Microsoft Search section under Settings.
The acronyms allow administrators to define a list of acronyms that can be searched for. There are often many common terms used in organisations that slowly become part of the standard language but for new joiners, these can be very confusing. By integrating these into search, it makes it very easy to find answers to what they mean.
Items can be added manually or through an import from a script. You can even save them as draft if you are waiting for things to be agreed.
The results show in the search with the URL and the description showing.
Bookmarks will be familiar to users from previous SharePoint Search administrators who would be used to creating Best Bets. The bookmark allows you to define an URL that is returned based on a specific result or a set of related keywords linked to that bookmark. As well as the ability to save items as drafts, it will also allow you to schedule bookmarks so that they can be tailored to specific events.
The truly innovative part of the bookmarks is that it makes suggested bookmarks. Initially, these are built on regular bookmarks used in many different areas, but over time, these will be related to topics that people are searching for and not finding results.
This means that you will be able to react to what the users want and provide useful content directly to the search results.
If you have many offices in your organisation or perhaps work with regular clients, it can be very useful to have a set of places defined in your search along with a guide to get there. The Locations section in Microsoft Search offers that.
You can add locations along with an address and a set of keywords in a similar way to the bookmarks except that the results will show the location using Bing Maps. When you edit these values, as with the other configurable elements, you also get a view of how it will look in the results shown at the top of the edit window.
Below shows the values you can edit for the Location.
Floor Plans allow you to create maps of your office where people sit and link those to their Azure AD profiles. It is not a simple process and requires AutoCAD files with the map of the floor plans, including elements in those for the desks. You will also need to first set up your Locations as in the previous section at least 24 hours before.
First, select the building that you are uploading the plan for.
Next, upload your AutoCAD file as a *.dwg file, setting the floor it is related to and, if required, the wing or zone as well. You can upload multiple floor plans to this as well.
Then link the office to your office in Azure AD.
The last step is to set the pattern for users’ location and room as taken from Azure AD.
Once you have done all these correctly with the mapping to the file (no mean feat), then the mapping to users will work. Getting a sample together has been very hard without AutoCAD so the screenshot below gives an example where it could not map but shows a list of the offices.
Further details on the best practices can be found at https://docs.microsoft.com/en-us/microsoftsearch/floorplans-bestpractices.
The most powerful of these for modern Intranets is the ability to answer questions that people ask. If the user adds a question mark to their search, then it will query this list of questions that are saved. “How do I log expenses?” is a great query that is often asked and now you can provide links to either where they can log them or to a guide on how to do it.
The admin screens allow you to define the question, a URL to a page and a rich text description to be displayed, as you can see in the sample that would be shown to the user at the top of the edit screen below.
For these questions, there are also some more settings you can configure.
As you can see above, you can set keywords as well as reserved keywords which means that no other Q&A can use them. There are also more settings that define when the results will be published such as the dates, specific countries or regions, Azure AD groups, devices, and targeted variations. What are those last ones, I hear you ask? They are a combination of device and region. These give you some powerful ways to tailor responses so that users could be directed to a mobile app when accessing out on the road or the web-based version when on their usual desk. All these settings are available in Bookmarks which brings me neatly on to the next section.
The great thing about the Modern Workplace is that you can build functionality into where people work, and Microsoft Search is no different. One of the options for Bookmarks is to embed a Power App into results. For example, if you have a helpdesk Power App, you can embed that direct into the search so that for people who are searching for how to log a fault, the results will come up straight away.
The Power App that is created is fully usable in the results or you can click on Launch App and see it as a modal window within that page.
Configuration and Bing Search
The final section in the Microsoft Search settings is the ability to configure search results in Bing. This mean that people searching Bing for results will also be returned with internal results.
The results are grouped by people, sites, files and teams in good looking cards.
One area that is a little underpowered at the moment is the ability to get some analytics from the search. It is good to know what the top searches are and how many are being made but that is about all you get. There is no breakdown by person, group or department at all and you won’t even see within specific sites or other areas. My current experience with this has also been that the results are very slow to update and don’t seem to fit what I have actually been doing but this should improve.
Another key area is that the Microsoft Graph will now power extensions to your search. You can pull your own content into Microsoft Search and add it to your own area. At the time of writing, it is still in preview. You can request to be on the preview so the images shown below are from the Ignite presentations on the topic which you can see at https://myignite.techcommunity.microsoft.com/sessions/81165?source=sessions.
There are three types of Connector:
- Microsoft-built connectors
- Ecosystem Partner connectors
- Microsoft Graph Search API
There are six Microsoft-built connectors that give you access to some of the standard data that you would expect, although with a couple of surprises.
Microsoft has created indexes for each of the standard areas below that allow you to include the results of files and even websites within your search results
- File Shares
- Azure Data Lake Storage Gen2
- Enterprise Websites
There are two others that are more interesting. The first is Microsoft SQL so if you hold your custom data in SQL, you can format the results, along with relevant permissions, and transform them into your search results. This gives even more access to custom applications that you may have developed in-house.
The other interesting connector is ServiceNow where Microsoft has made the most of their partnership with ServiceNow which many organisations are using for IT Management, HR systems and general knowledge management. The combination of Microsoft 365 and ServiceNow gives a powerful range of systems that become tightly integrated through search.
The ServiceNow connector shown below displays the results from an organisations knowledge base as a vertical along the top and rendered with useful information like when it was last modified so you know how relevant it is likely to be.
You can also bring results from your ServiceNow issues and integrate those with guides as well. The example below shows different formatting with different pieces of metadata rendered like severity and assignee as well as the breadcrumb trail to know where the issue sits easily.
Ecosystem Partner connectors
The Connector’s do not need to stop with those six from Microsoft though. A set of partners have already created over 100 connectors to other systems like Atlassian Confluence, Documentum and SMTP among others, giving you plenty of other options, albeit at a price. You can see a full list with details at https://docs.microsoft.com/en-us/microsoftsearch/connectors-gallery.
Microsoft Graph Search API aka Build your own connector
Still not seeing things that meet your needs or just not sure you want to pay the money for a pre-built connector that doesn’t precisely meet your needs? If you are on the preview, then you can still create your own connector. You can find out more details on how to do this at https://docs.microsoft.com/en-us/graph/search-concept-overview. This uses the Microsoft Graph which brings us neatly to the next section.
The developer story
So, are you stuck with using all these great things to just being in Microsoft 365? What about custom apps? The answer is you can still access Microsoft Search through an API and naturally, the Microsoft Graph is the place to do it. The results can then be rendered as you want them using Adaptive Cards, offering a cross-function way of rendering content in the same way. One problem is currently that the new Microsoft Search features like Q&A are not returned from the graph but you can still gain similar functionality with QnA Maker. More on all three of these in this chapter.
Microsoft Graph provides five different resource types for the Search endpoint (below with links to the REST documentation):
- Messages aka emails in a mailbox – link
- Events aka an event in a user calendar or O365 group calendar – link
- DriveItems aka a file or folder in OneDrive or SharePoint – link
- External items aka an item indexed by a Search connector – link
- External files aka a file indexed by a Search Connector – link
These endpoints allow you to return results through code from your same Search and then build those into your web, mobile or desktop apps, extending the functionality of Search even further. Note that these are in beta at the time of writing so should be used with caution in production systems as the APIs are subject to change.
The best way to investigate these is to use Graph Explorer where you can connect to your tenant and return results.
- Sign in with your account to see real details
- Select the Search (beta) endpoints
- Change the default “test” value in the Request Body with “Mark 8” or whatever you want to search for
- Select Run Query
- View the results in JSON format
Using Graph Explorer, you can easily work out the queries that you need and then translate that into your app. You may have noticed in the last screenshot that one of the header buttons mentions Adaptive Cards. Sadly, the Search Results do not get rendered at the moment but for other queries in the graph, this is a great way of viewing the results in a less technical way. But what are Adaptive Cards?
Adaptive Cards are a great way to use simpler rendering to create views of your JSON data that are designed to work in a responsive way for mobile and desktop devices as well as working across services. This means that a card designed to work in search results will also render in Microsoft Teams, Bots or even in Outlook emails. These templates become very easy to re-use.
To build your templates, Microsoft has created a similar website to the Graph Explorer at https://www.adaptivecards.io. Here, you can not only view some of the samples but you can also use the Designer to create your own adaptive cards that you can then use in your applications.
Examples of adaptive cards:
As well as rendering text, you can include images and icons in the response. The cards can also include action buttons so that users can interact as well.
The designer allows you to use a GUI driven approach as below, or edit the template and data JSON directly if you are more comfortable with that.
These cards can be used with custom connectors to render how the results are displayed. I would hope that this functionality will be extended in the future to also customise the default results from SharePoint and others but it is not there yet.
QnA Maker gives a great Azure Cognitive Services way of processing sets of knowledge that can be queried using natural knowledge and returned to a user. For custom apps with Microsoft Search, this can be a useful way to consume FAQs, whether in document format or on web pages and make it easy to ask questions without needing a direct match.
For example, “How do I log a ticket?” can be held in a large word document with an FAQ and then if the user asked “Where do I log tickets?” or “Can I create a ticket?”, the QnA service will recognise the similar intent and return the same result.
You can read more on QnA Maker at https://docs.microsoft.com/en-us/azure/cognitive-services/QnAMaker/Overview/overview.
To help demonstrate some of these in a custom application, I have created a sample at https://github.com/kevmcdonk/ms-search-spa which acts as a custom landing page. It helps in those classic scenarios where you demonstrate Microsoft Search in SharePoint and someone says “I love all the functionality but can we get it without looking like SharePoint?” which happens too often still.
The web app returns the latest news and documents using the Microsoft Graph as well as rendering search results. The GitHub repo should have installation instructions by the time this is published but if not, feel free to log an issue or drop me a note on Twitter.
What does the future hold?
Microsoft Search has evolved a lot since first being announced but there is still plenty to come. For a starter, it needs to complete the rollout so it works across all services in Microsoft 365, including integration to Windows itself. You can keep an eye on the roadmap on the Microsoft 365 roadmap by looking for a search (https://www.microsoft.com/en-us/microsoft-365/roadmap?filters=&searchterms=search) but the big items to keep an eye out for are below.
Search has improved greatly in recent years through greater integration of AI and Semantic Search will take that even further. It allows the user to make searches in natural language and then determines what their intent is, reducing the need to tailor messages for specific formats as people often have to do now. The natural way of language processing means that it can be better integrated, not only into the way people type but also into more natural interfaces such as voice and Bots, offering even more ways to get to search results.
Wider availability for external connectors
The connectors that were talked about earlier in the eBook are currently in preview, but they should soon hit GA. This will open up new functionality and wider access for people and even more partner connectors to become available, hopefully also included open-source ones for common areas.
The most exciting future area is not directly related to Microsoft Search but will make a lot of use of Search. Project Cortex is a suite of tools that will help with managing knowledge within your Microsoft 365 environment. It will use AI to help tag content with relevant metadata while weighting towards content set by experts in the organisation. Knowledge Centres will be created to help navigate content on particular topics across all sites and the entities identified will be flagged in emails and many other Microsoft 365 services to help others understand.
There is a huge amount to cover with what has already been announced of the private preview, but I think that there will be even more to come. To find out more, you can either watch Erica Toelle’s session on Project Cortex from GlobalCon1 or you can navigate to https://aka.ms/ProjectCortex. Details on licensing and dates are still pretty vague at the time of writing but the buzz and excitement are very clear from across the community.
This eBook has covered the What, the Why and the How of Microsoft Search:
You have learnt what you can do with Microsoft Search with content from across all the different areas of Microsoft 365 backed up with some great AI to help get the most from the results.
You have learnt why you should use Microsoft Search to get all your results in one place from everything instead of managing lots of different types of search from each service.
You have learnt how to access results from the different SharePoint Search boxes, configure all sorts of new search content like floor plans and Q&A as well as be able to use the Microsoft Graph to pull results into your own applications.
Things are moving very quickly now with Microsoft Search and the vision of one search across absolutely everything will soon be true. Now is the time to learn more and try it out, ready for the day when it becomes the only way to search.