Search
Perform a personalized, typo-correcting, semantic search.
Syntax
const response = await client.api.search.search(payload, options);
Payload
The payload
parameter is an object with the following properties:
Name | Type | Description |
---|---|---|
engine_id |
string | The engine you want to get results from. If not specified, the default engine will be used. |
q |
string | Required. The search query the user has entered. Must be non-empty. |
fq |
string | A query string in Solr syntax which restricts the superset of products to return, without influencing the overall ranking. |
fl |
array of strings | List of fields to retrieve. The field product_id is always included.
When not specified, only product_id will be retrieved.
You can retrieve all fields with ["*"] . Default: ["*"] .
|
type |
string | Specify the type of product to return. |
start |
integer | The offset of records to retrieve.
Default: 0 .
|
rows |
integer | Number of records to retrieve.
Default: 5 .
|
Return value
A Promise
of response object with the following properties:
Name | Type | Description |
---|---|---|
products |
array of objects | An array of Product records. Use fl parameter to specify what fields are returned.
|
start |
integer | The offset of records to retrieve.
Default: 0 .
|
total |
integer | The total number of matched records. |
Examples
const payload = {
user_id: '...',
user_hash: '...',
q: 'doge',
fl: ['title', 'sale_price', 'custom_attributes.*']
};
const { products } = await client.api.search.search(payload);
Learn more
For advanced usage, see REST API.