@attraqt/search
Use @attraqt/search
to search through items using the XO platform.
Installation and Usage
npm install --save @attraqt/search
import { search } from '@attraqt/search';
search.init({
token: 'SEARCH_API_TOKEN'
});
const searchResponse = await search.query('T-Shirt', {
offset: 10,
limit: 30,
filter: 'price < 50'
});
console.log(searchResponse.items);
console.log(searchResponse.metadata);
const suggestResponse = await xo.search.suggest('T-Shirt', {
filter: 'price < 50',
groupBy: {
attribute: 'kind',
count: 10,
values: ['product', 'shops', 'ads']
}
});
console.log(suggestResponse.items);
console.log(suggestResponse.metadata);
const autocompleteResponse = await xo.search.autocomplete('T-Shirt', {
numberOfSuggestions: 5
});
console.log(autocompleteResponse.suggestions);
console.log(autocompleteResponse.metadata);
Methods
Method | Argument(s) | Result | Description |
---|---|---|---|
init | options: SearchInitOptions
|
void |
Initializes the search client |
query | query: string , options?: SearchItemOptions , requestOptions?: SearchRequestOptions
|
Promise<SearchResponse> |
Searches for items |
suggest | query: string , options?: SearchGroupOptions , requestOptions?: SearchRequestOptions
|
Promise<SearchResponse> |
Suggest and group a selection of items |
autocomplete | query: string , options?: AutocompleteOptions , requestOptions?: SearchRequestOptions
|
Promise<AutocompleteResponse> |
Autocomplete a query, and get suggestions |
Search Init Options
Properties to initialize the search component.
Option | Type | Description |
---|---|---|
token |
string |
Required: Your unique token provided by Attraqt |
region ? |
Region |
Optional: Region where you need to use the service. If an invalid or no region is selected then EU will be used. |
Search options
All options are optional.
Option | Type | Description |
---|---|---|
limit |
number |
Pagination: Size of a page |
offset |
number |
Pagination: Index of the first item to fetch |
filter |
string |
Filter query string |
sortBy |
SortOptions[] |
Sort options, evaluated in order of appearance |
facets |
FacetRequestOptions[] |
Facets filters to apply to the query |
customResponseMask |
string |
Custom response mask. Allows to fetch only specific field from the catalog |
disable |
DisableOptions[] |
Features to disable for this query |
Suggest options
All options are optional.
Option | Type | Description |
---|---|---|
filter |
string |
Filter query string |
sortBy |
SortOptions[] |
Sort options, evaluated in order of appearance |
customResponseMask |
string |
Custom response mask. Allows to fetch only specific field from the catalog |
groupBy |
GroupOptions |
Group result by an attribute and its specified values |
Autocomplete options
All options are optional.
Option | Type | Description |
---|---|---|
numberOfSuggestions |
number |
Number of suggestions to get. Default is 10 |
Regions
The following table lists the name and code of each Region.
Region name | Code |
---|---|
Australia | AU |
Europe | EU |
United States | US |