The queryType parameter controls if and how Algolia considers matches at the beginning of query words.
For more information, see Prefix searching .
Options
Only the last word in the query is treated as a prefix.
All preceding words must match in full.
All words in the query are treated as prefixes.With prefixAll, removeStopWords has no effect: stop words are never removed from words interpreted as prefixes, and prefixAll treats every word as a prefix.
Prefix search is turned off.
All query words must match completely.
Example
C#
Dart
Go
Java
JavaScript
Kotlin
PHP
Python
Ruby
Scala
Swift
var response = await client . SetSettingsAsync (
"INDEX_NAME" ,
new IndexSettings { QueryType = Enum . Parse < QueryType >( "PrefixLast" ) }
);
final response = await client. setSettings (
indexName : "INDEX_NAME" ,
indexSettings : IndexSettings (
queryType : QueryType . fromJson ( "prefixLast" ),
),
);
response , err := client . SetSettings ( client . NewApiSetSettingsRequest (
"INDEX_NAME" ,
search . NewEmptyIndexSettings (). SetQueryType ( search . QueryType ( "prefixLast" ))))
if err != nil {
// handle the eventual error
panic ( err )
}
UpdatedAtResponse response = client . setSettings ( "INDEX_NAME" , new IndexSettings (). setQueryType ( QueryType . PREFIX_LAST ));
const response = await client . setSettings ({ indexName: 'theIndexName' , indexSettings: { queryType: 'prefixLast' } });
var response =
client. setSettings (
indexName = "INDEX_NAME" ,
indexSettings =
IndexSettings (queryType = QueryType.entries. first { it. value == "prefixLast" }),
)
$response = $client -> setSettings (
'INDEX_NAME' ,
[ 'queryType' => 'prefixLast' ,
],
);
response = client.set_settings(
index_name = "INDEX_NAME" ,
index_settings = {
"queryType" : "prefixLast" ,
},
)
response = client. set_settings ( "INDEX_NAME" , Algolia :: Search :: IndexSettings . new ( query_type: "prefixLast" ))
val response = Await .result(
client.setSettings(
indexName = "INDEX_NAME" ,
indexSettings = IndexSettings (
queryType = Some ( QueryType .withName( "prefixLast" ))
)
),
Duration ( 100 , "sec" )
)
let response = try await client. setSettings (
indexName : "INDEX_NAME" ,
indexSettings : IndexSettings ( queryType : SearchQueryType. prefixLast )
)
C#
Go
Java
JavaScript
Kotlin
PHP
Python
Ruby
Scala
Swift
IndexSettings settings = new IndexSettings ();
settings . QueryType = "prefixLast" ;
// settings.QueryType = "prefixAll";
// settings.QueryType = "prefixNone";
index . SetSettings ( settings );
res , err := index . SetSettings ( search . Settings {
QueryType : opt . QueryType (
"prefixLast" ,
// "prefixAll",
// "prefixNone",
),
})
index . setSettings (
new IndexSettings (). setQueryType ( "prefixLast" )
// new IndexSettings().setQueryType("prefixAll")
// new IndexSettings().setQueryType("prefixNone")
);
index
. setSettings ({
queryType: "prefixLast" ,
// queryType: 'prefixAll'
// queryType: 'prefixNone'
})
. then (() => {
// done
});
val settings = settings {
queryType = QueryType.PrefixLast
// queryType = QueryType.PrefixAll
// queryType = QueryType.PrefixNone
}
index. setSettings (settings)
$index -> setSettings ([
'queryType' => 'prefixLast'
// 'queryType' => 'prefixAll'
// 'queryType' => 'prefixNone'
]);
index.set_settings(
{
"queryType" : "prefixLast"
# 'queryType': 'prefixAll'
# 'queryType': 'prefixNone'
}
)
index. set_settings (
{
queryType: "prefixLast"
# queryType: 'prefixAll'
# queryType: 'prefixNone'
}
)
client.execute {
setSettings of "myIndex" `with` IndexSettings (
queryType = Some ( QueryType .prefixLast)
// queryType = Some(QueryType.prefixAll)
// queryType = Some(QueryType.prefixNone)
)
}
let settings = Settings ()
. set (\. queryType , to : . prefixLast )
//.set(\.queryType, to: .prefixAll)
//.set(\.queryType, to: .prefixNone)
index. setSettings (settings) { result in
if case . success ( let response) = result {
print ( "Response: \( response ) " )
}
}