loading

Vertical Searchable Fields| Hitchhikers Platform

What You’ll Learn

In this section, you will learn:

  • Searchable Field Types
  • Configuring via UI vs. JSON
  • Searchable Field Examples and Use Cases

Searchable Field Types

Within each vertical, you will determine which fields can searched on the Answers backend. This is what’s called a searchable field.

Searchable fields control which fields are indexed by the Answers algorithm in each vertical and therefore how results (think: entities and verticals) are returned to the user. Each entity type that you set up in your Knowledge Graph has both profile and custom fields associated to it. In the Search Configuration, you can set each field as Searchable by configuring it as such and selecting one of the following searchable field types in the below table. We will dive into each type and walk through examples of each one in the following units!

Searchable Field Description Common Use Cases (Fields)
Text Search Text Search allows each token of the query to be searched within the fields you specify. This is best for short text fields that might contain unstructured or varied data. Name, Keywords
NLP Filter NLP Filter enables each term in the search query to be parsed with Natural Language Processing (NLP) and used as a filter. This is best for structured enum/option fields where there are a finite number of variations across entities. builtin.location, builtin.entityType, builtin.hours, linkedEntity.name, Department, Category, Vertical, Industry
Facet Facets allow a field to be used as a type of dynamic filter that a user can interact with in the search experience to narrow their search. This is best for structured enum/option fields where there are a finite number of variations across entities. Department, Category, Vertical, Industry, Department, Insurance, Services, Payment Methods
Sortable Sortable allows a field to be used as a sorting method that is controlled by the algorithm or by the user. Name, Date, Popularity, Accepting New Patients
Direct Answer Direct Answer allows a field to be surfaced in a prioritized direct answer card within the search experience. Address, phone, title, calories, allergens
Phrase Match Phrase Match allows an entity to be surfaced only when there is an exact phrase match contained in the query. Keywords, First Name, Last Name
Semantic Text Search This turns on our Semantic Text Search algorithm, which will match a user’s query to an entity name that semantically similar (not available for Location entities). Name, especially FAQ Name and Help Article Name
Document Search This turns on our Document Search algorithm, which searches long, unstructured content from a Knowledge Graph entity and returns featured snippets. Description and Body fields from Help Articles, Blogs, Product Descriptions, and much more


Configuring via UI vs. JSON

Searchable Field Configuration via UI

As you configure each vertical in the UI, you will be presented with a Searchable Fields section. Simply add a field in the top right to enable another field for Answers indexing. Once you select the field, you can designate which type of Searchable field type to apply to the given field. In the example below within the Community Stories vertical, we have builtin.entityType set as a NLP filter, name set as Text Search, and c_theme set as both NLP Filter and Facet Filter.

Searchable fields UI

light bulb
Tip
As you test out various scenarios in your configuration, you can use Test Search on the right side of your screen to see how various searches are impacted by your backend changes. It’s a quick and easy way to test out out your configuration in real-time!

Searchable Field Configuration via JSON

To access the Search Configuration in the JSON editor, simply click the “Edit in JSON’ link in the left pane.

navigating to search configuration

In the JSON instance of the Search Configuration, Searchable Fields are referenced by their API Name. This can be found in the Searchable Fields section of the UI, API documentation, or on the View Entity Type page found by navigating to Account Settings > Manage Entity Types and clicking on a type. Any custom fields will have a prefix of c_ and any built-in fields will not. Both profile fields and custom fields can be marked as searchable.

To set a field as Searchable, specify the API Name of the field you are setting along with the filter type(s) you’d like to set it as. A filter can be set as one of all of the available filter types mentioned above.

”name”: {
  "textSearch": true
}

Within the greater community_stories vertical object in the JSON Configuration, the format would be:

"community_stories": {
   "entityTypes": [
      "ce_communityStory"
     ],
      "name": "Community Stories",
      "searchableFields": {
        "builtin.entityType": {
          "nlpFilter": true,
          "textSearch": false
        },
        "c_theme": {
          "facet": true,
          "nlpFilter": true
        },
        "name": {
          "nlpFilter": false,
          "phraseMatch": false,
          "textSearch": true
        }
      },
   "sortBys": [],
   "source": "KNOWLEDGE_MANAGER"
},

Throughout this module, you’ll learn about Searchable Fields and their use cases. Searchable fields can simply be set through the UI. However, if you choose to make edits directly in the JSON editor, this module also provides JSON formatting for each Searchable Field type.


unit Quiz
+20 points
Daily Quiz Streak Daily Quiz Streak: 0
Quiz Accuracy Streak Quiz Accuracy Streak: 0
    Error Success Question 1 of 2

    Which of the following are searchable field options? (select all that apply)

    Error Success Question 2 of 2

    Which searchable field matches a user’s query to an FAQ that is semantically similar?

    You're out of this world! 🌎

    You've already completed this quiz, so you can't earn more points.You completed this quiz in 1 attempt and earned 0 points! Feel free to review your answers and move on when you're ready.
1st attempt
0 incorrect
Splash Loading