searchProducts( )


Developer Preview

This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.

Retrieves a list of up to 100 products, given the provided filtering, search expression, sorting, and cursor paging. Pass supported values to the fields array in the request to include those fields in the response.

To learn about working with Search endpoints, see API Query Language, and Sorting and Paging.

Notes:

  • This method does not return variantsInfo. To retrieve product variants, use the Get Product method.
  • To retrieve a non-visible product (visible: false), your app must have the required SCOPE.STORES.PRODUCT_READ_ADMIN permission scope.
PropertyCapabilitiesFilters
allCategoriesInfo.categoriesSearch: ✗
Aggregate:
Sort: ✗
$matchItems
directCategoriesInfo.categoriesSearch: ✗
Aggregate:
Sort: ✗
$matchItems
variantsInfo.variantsSearch: ✗
Aggregate:
Sort: ✗
$matchItems
infoSections._idSearch: ✗
Aggregate:
Sort: ✗
$hasAll, $hasSome
infoSections.uniqueNameSearch: ✗
Aggregate:
Sort: ✗
$hasAll, $hasSome
modifiers._idSearch: ✗
Aggregate:
Sort: ✗
$hasAll, $hasSome
modifiers.choicesSettings.choices.choiceIdSearch: ✗
Aggregate:
Sort: ✗
$hasAll, $hasSome
modifiers.choicesSettings.choices.nameSearch: ✗
Aggregate:
Sort: ✗
$hasAll, $hasSome
modifiers.nameSearch: ✗
Aggregate:
Sort: ✗
$hasAll, $hasSome
options._idSearch: ✗
Aggregate:
Sort: ✗
$hasAll, $hasSome
options.choicesSettings.choices.choiceIdSearch: ✗
Aggregate:
Sort: ✗
$hasAll, $hasSome
options.choicesSettings.choices.nameSearch: ✗
Aggregate:
Sort: ✗
$hasAll, $hasSome
options.nameSearch: ✗
Aggregate:
Sort: ✗
$hasAll, $hasSome
_idSearch: ✗
Aggregate:
Sort: ✗
$eq, $ne, $exists, $in, $any, $begins, $gt, $lt, $lte, $gte
brand._idSearch: ✗
Aggregate:
Sort: ✗
$eq, $ne, $exists, $in, $any, $begins, $gt, $lt, $lte, $gte
brand.nameSearch: ✗
Aggregate:
Sort: ✗
$eq, $ne, $exists, $in, $any, $begins, $gt, $lt, $lte, $gte
flattenModifiersSearch: ✗
Aggregate:
Sort: ✗
$eq, $ne, $exists, $in, $any, $all
flattenOptionsSearch: ✗
Aggregate:
Sort: ✗
$eq, $ne, $exists, $in, $any, $all
handleSearch: ✗
Aggregate:
Sort: ✗
$eq, $ne, $exists, $in, $any, $begins, $gt, $lt, $lte, $gte
importIdSearch: ✗
Aggregate:
Sort: ✗
$eq, $ne, $exists, $in, $any, $begins, $gt, $lt, $lte, $gte
inventory.availabilityStatusSearch: ✗
Aggregate:
Sort: ✗
$eq, $ne, $exists, $in, $any
inventory.preorderAvailabilitySearch: ✗
Aggregate:
Sort: ✗
$eq, $ne, $exists, $in, $any
inventory.preorderStatusSearch: ✗
Aggregate:
Sort: ✗
$eq, $ne, $exists, $in, $any
physicalProperties.deliveryProfileIdSearch:
Aggregate:
Sort: ✗
$eq, $ne, $exists, $in, $any, $begins, $gt, $lt, $lte, $gte
physicalProperties.fulfillerIdSearch: ✗
Aggregate:
Sort: ✗
$eq, $ne, $exists, $in, $any, $begins, $gt, $lt, $lte, $gte
physicalProperties.shippingGroupIdSearch:
Aggregate:
Sort: ✗
$eq, $ne, $exists, $in, $any, $begins, $gt, $lt, $lte, $gte
productTypeSearch: ✗
Aggregate:
Sort: ✗
$eq, $ne, $exists, $in, $any
ribbon._idSearch: ✗
Aggregate:
Sort: ✗
$eq, $ne, $exists, $in, $any, $begins, $gt, $lt, $lte, $gte
ribbon.nameSearch: ✗
Aggregate:
Sort: ✗
$eq, $ne, $exists, $in, $any, $begins, $gt, $lt, $lte, $gte
slugSearch: ✗
Aggregate:
Sort: ✗
$eq, $ne, $exists, $in, $any, $begins, $gt, $lt, $lte, $gte
subscriptionDetails.allowOneTimePurchasesSearch: ✗
Aggregate:
Sort: ✗
$eq, $ne, $exists, $in, $any
taxGroupIdSearch: ✗
Aggregate:
Sort: ✗
$eq, $ne, $exists, $in, $any, $begins, $gt, $lt, $lte, $gte
visibleSearch: ✗
Aggregate:
Sort: ✗
$eq, $ne, $exists, $in, $any
visibleInPosSearch: ✗
Aggregate:
Sort: ✗
$eq, $ne, $exists, $in, $any
_createdDateSearch: ✗
Aggregate:
Sort: ASC, DESC
$eq, $ne, $exists, $in, $any, $lt, $lte, $gt, $gte
_updatedDateSearch: ✗
Aggregate:
Sort: ASC, DESC
$eq, $ne, $exists, $in, $any, $lt, $lte, $gt, $gte
actualPriceRange.maxValue.amountSearch: ✗
Aggregate:
Sort: ASC, DESC
$eq, $ne, $exists, $in, $any, $begins, $gt, $lt, $lte, $gte
actualPriceRange.minValue.amountSearch: ✗
Aggregate:
Sort: ASC, DESC
$eq, $ne, $exists, $in, $any, $begins, $gt, $lt, $lte, $gte
compareAtPriceRange.maxValue.amountSearch: ✗
Aggregate:
Sort: ASC, DESC
$eq, $ne, $exists, $in, $any, $begins, $gt, $lt, $lte, $gte
compareAtPriceRange.minValue.amountSearch: ✗
Aggregate:
Sort: ASC, DESC
$eq, $ne, $exists, $in, $any, $begins, $gt, $lt, $lte, $gte
minVariantPriceInfo.skuSearch:
Aggregate:
Sort: ASC, DESC
$eq, $ne, $exists, $in, $any, $begins, $gt, $lt, $lte, $gte
nameSearch:
Aggregate:
Sort: ASC, DESC
$eq, $ne, $exists, $in, $any, $begins, $gt, $lt, $lte, $gte
numericIdSearch: ✗
Aggregate:
Sort: ASC, DESC
$eq, $ne, $exists, $in, $any, $lt, $lte, $gt, $gte
physicalProperties.shippingWeightRange.maxValueSearch: ✗
Aggregate:
Sort: ASC, DESC
$eq, $ne, $exists, $in, $any, $lt, $lte, $gt, $gte
physicalProperties.shippingWeightRange.minValueSearch: ✗
Aggregate:
Sort: ASC, DESC
$eq, $ne, $exists, $in, $any, $lt, $lte, $gt, $gte
Authentication
  • When developing websites or building an app with Blocks, this method may require elevated permissions, depending on the identity of the user calling it and the calling user's permissions.
  • When building apps without Blocks or for headless projects, you can only call this method directly when authenticated as a Wix app or Wix user identity. When authenticated as a different identity, you can call this method using elevation.
  • Elevation permits users to call methods they typically cannot access. Therefore, you should only use it intentionally and securely.
Permissions
Manage Stores - all permissions
Read Stores - all read permissions
Manage Orders
Manage Products
Read Products
Manage Restaurants - all permissions
Read v3 catalog
Manage v3 catalog
Manage Stores
Read products in v3 catalog
Product v3 read admin
Learn more about app permissions.
Method Declaration
Copy
Method Parameters
searchCommonCursorSearchRequired

Search options.


optionsSearchProductsOptions
Returns
Return Type:Promise<V3SearchProductsResponse>
Errors

This method doesn't return any custom errors, but may return standard errors. Learn more about standard Wix errors.

Did this help?