Federated Search Developer Guide

The Federated Search API connects the Salesforce federated search connector to the external search provider. The API enables data from external repositories be searched and returned within Salesforce. External search providers have partnered with Salesforce to provide a search service that conforms to the Salesforce API.

Use this API only if your company doesn’t have an existing search provider, such as Docurated, Swiftype, or Squirro search. If your company manages its own external data source, developers use this API to create a compliant external search provider.

Important

This API follows the OpenSearch specification with optional Salesforce extensions. The external providers must conform to this API and remain fully compliant to the OpenSearch specification. As long as the external providers are compliant, any OpenSearch clients can query them at the same URL endpoint.

A Salesforce org trusts the target host only when presented with a certificate signed by a root Certification Authority (CA). For more information, including a list of trusted CAs, see the SSL Certificates Salesforce Supports Knowledge article.

Note

The federated search connector sends an HTTPS GET request to the external search provider URL endpoint. The search request is encoded in UTF-8. The request includes the OAuth token in the request header bearer token in the authorization request header.

This request also sets the values of the URL template parameters, as defined by the OpenSearchDescription. The values include the search terms and the user identity. Other parameters can be part of the URL. The values also set the Salesforce ID, login, and email address of the user who issued the search query.

The external search provider is expected to respond within less than 1 second, up to a maximum of 120 seconds. After the time period expires, a timeout message is displayed. The admin can change the maximum delay when configuring the external data source.

The external search provider returns results in Atom or RSS format encoded in UTF-8, as defined by the OpenSearch and Atom and RSS specifications.