Help center federated search lets your end users see content in your help center search results that is external to your help center. This means that when an end user searches in your help center, the search results are not just limited to your help center articles or community posts. Federated search can extend its search to, for example: external knowledge bases, learning management software, blogs, and pages of your website. Your end users can also filter their search by type (for example by blog posts).
You can use either of the following methods to implement federated search in your help center:
- Federated Search API - REST API that lets you ingest records of your external content into the Zendesk search indexes. This method requires that your developers build and maintain a middleware layer to integrate the site that hosts the external content with the help center.
- Search crawler - Configurable in the Search settings in Guide, the search crawler lets you implement federated search in your help center without developer resources. You can set up multiple crawlers in your help center search settings to crawl and index different content in the same or different websites.
You can use the API and the crawler simultaneously. However, if you delete a source or a type via the API, then any crawler that is creating or updating records for the deleted source or type will stop working.
This article covers the following topics:
How the search crawler works
You can set up one or more search crawlers to crawl and index external content that you want to make available to users performing a search in your help center. External sites that you want to crawl must have a sitemap that lists the pages for the search crawler. In addition, the pages you want to crawl must be public (non-authenticated). If you want to add authenticated content to help center search, you must use the external content API.
When they are configured, crawlers run once every 12 to 24 hours, visiting the pages in the sitemap you specified during setup and ingesting content from those sources into the help center search indexes. Search crawlers index content that is in the page source on the initial page load, even if it's hidden by a UI element, such as an accordion. However, since crawlers do not run JavaScript, they do not crawl content that is rendered by JavaScript or other content that is dynamically rendered after the initial page load. Crawlers also don't crawl links on the pages they visit; they only visit the pages in the sitemap that they are configured to use.
You can set up multiple crawlers to crawl and index different content in the same website, or in different websites. See Setting up the search crawler.
When users perform a search, relevant external content discovered by the crawler is ranked and presented on the search results page, where users can filter the results and click the links to view the external content link in another browser tab. For more information about filters, see Help center guide for end users.
How the Federated Search API works
Zendesk provides a REST API that lets your developers build custom integrations to ingest external content records into your help center search indexes. To ingest external content for search, developers must integrate the application hosting your external content with the external content API.
Once configured, the API ingests external content records and adds them to the help center search indexes. Indexed records can then be made available to the help center search engine when responding to user search queries.
For more information, see Setting up the Zendesk Federated Search API.
External content sources and types
Regardless of the setup method you use, each content record ingested by federated search is associated with a content source and a content type, which are used to filter search results by your end user. See Edit search filters.
You can define sources and types either using the Federated Search API or when setting up the search crawler in Guide. If you define sources and types using the API, they will be available for selection during the search crawler setup. Similarly, if you create a content source and type when you set up the search crawler, they will be reflected in the external_content_type and external_content_source API. See Zendesk Federated Search API Reference.
You can configure your search results to include or exclude external content sources. When external content is included in a help center search, search filters group content by source and type names, making it easier for users to find the information they are looking for. “Source” groups content by point of origin (for example blog) and “Type” groups content by the kind of content it is (for example developer documentation).
Consider useful groupings and names for your external content sources and types when creating them, as that will help your end users easily filter and locate the content that they are searching for in your help center. See Edit search filters.
Known limitations for federated search
At present, the following are all known limitations for federated search:
- External content search results appear in help center searches, in the knowledge section of the context panel, and in Unified Search API responses. They do not appear in other Guide search-powered interfaces such as Instant Search or the Article Search API.
- The search crawler does not work with websites that use gzip file compression encoding. You will not see search results from these sites.
- A crawl-delay will not be respected by the search crawler when set on external site robots.txt records.