Skip to main content

Using Search in Outcomes

Along with standard keyword searches, the search boxes in the Applications and Contacts views in Outcomes support Lucene query syntax. With this functionality, you can quickly perform powerful searches using any data point available to you in Outcomes.


Forming a Keyword Search

Keyword searches can be between two and ten characters long, using properties like:

  • Applicant name
  • Applicant email address
  • Program Name
  • Current Stage
  • Current Phase
  • Current Decision

To clear your search, click back into the search field and delete your entry.

Forming a Lucene Search

Searches written in the Lucene query language are made of the following parts:

  • Field: the name or ID of a specific data point within your Outcomes database.
  • Terms: the item(s) you're searching for.
  • Operators: the symbol or keyword used to represent an action or process.

Using these principles, you can develop queries to find anything you need to locate. Once you've formed a query, you can enter it into the search bar to see the results.

Tips for Searching with Lucene Query Syntax

Use the following tips when developing and experimenting with Lucene searches:

  • To search for a value in a specific field, prefix the value with the name of the field. For example, you could enter CN to find all applications where an applicant entered CN as their birth country.
  • To search for a range of values, you can use the bracketed range syntax, [START_VALUE TO END_VALUE]. For example, entering applicant.familyName: [alvarez TO anderson] returns all applications where the last name is within the specified range alphabetically.
  • To specify more complex search criteria, you can use the Boolean operators AND, OR, and NOT. 
  • Use * as a wildcard for multiple characters in the middle or at the end of string. For this to work, the string should also end with *. For example, tony.*@avengers.** is a valid query.
  • Use ? as a wildcard for single characters. In Outcomes, this can only be used when the string ends with *. For example,* is a valid query, while is not.
  • Use “_exists_:” to find if a field has a value (similar to *).
  • Many queries are case sensitive. For example,  _exists_:first_name will generate results, but _exists_:First_Name will not.
  • You can reference other objects using @. For example, _include:@134584954395 would include everyone in that segment ID.
  • You can use any special characters that are part of the query syntax. The current list of special characters are: + - && || ! ( ) { } [ ] ^ " ~ * ? : \
  • To escape these characters, use \ before the character. For example, to search for (1+1):2 use the query:  \(1\+1\)\:2
  • Was this article helpful?