Skip to main content
Since May 1st, 2024, Apple requires all iOS apps to include a privacy manifest. For more details, see Privacy Manifest.
Redirects can enhance the search experience. For example:
  • Searching for “help” redirects users to a support page
  • Searching for a category, such as, “TV” redirects users to a category page
  • Searching for a specific product or brand redirects users to a seasonal promotional page for it
  • Searching for specific keywords related to an ongoing event, such as, “masks”, redirects users to a more specific landing page
This guide explains how to add redirects to InstantSearch through Rules and using custom data. Redirects are handled by Autocomplete’s redirect plugin. However, if you don’t use Autocomplete, you must handle redirects in InstantSearch:

Handle a Manual Editor rule redirect

If a redirect was created in the Manual Editor, handle it with InstantSearch’s QueryRuleCustomData widget.

Configure a rule

To set up a rule that returns custom data whenever the query matches specific keywords, see Create a rule for returning custom data.

Configure the queryRuleCustomData widget

After setting up a rule that returns the custom redirect data, you can use the QueryRuleCustomData widget to update the page location when userData contains a redirect.
Swift
let searcher = HitsSearcher(appID: "ALGOLIA_APPLICATION_ID",
                          apiKey: "ALGOLIA_SEARCH_API_KEY",
                          indexName: "YourIndexName")

let queryRuleCustomDataConnector = QueryRuleCustomDataConnector<Redirect>(searcher: searcher)

queryRuleCustomDataConnector.interactor.onItemChanged.subscribe(with: self) { (_, redirect) in
  if let redirectURL = redirect?.url {
    // perform redirect with URL
  }
}