> Portal Navigation: > > - Append `.md` to any URL under `https://dev.wix.com/docs/` to get its markdown version. > - Pages are either content pages (article or reference text) or menu pages (a list of links to child pages). > - To get a menu page, truncate any URL to a parent path and append `.md` (e.g. `https://dev.wix.com/docs/sdk.md`, `https://dev.wix.com/docs/sdk/core-modules.md`). > - Top-level index of all portals: https://dev.wix.com/docs/llms.txt > - Full concatenated docs: https://dev.wix.com/docs/llms-full.txt # Method name: queryProducts() # Method package: wixStoresV2 # Method menu location: wixStoresV2 --> products --> queryProducts # Method Link: https://dev.wix.com/docs/velo/apis/wix-stores-v2/products/query-products.md # Method Description: Returns a list of up to 100 products, given the provided paging, sorting and filtering. |PROPERTY |SUPPORTED FILTERS & SORTING |:---:|:---:| |`_id`|[`eq()`](/products-query-builder/eq),[`ne()`](/products-query-builder/ne),[`exists()`](/products-query-builder/exists),[`in()`](/products-query-builder/in),[`hasSome()`](/products-query-builder/has-some),[`startsWith()`](/products-query-builder/starts-with),[`ascending()`](/products-query-builder/ascending),[`descending()`](/products-query-builder/descending)| |`name`|[`eq()`](/products-query-builder/eq),[`ne()`](/products-query-builder/ne),[`exists()`](/products-query-builder/exists),[`in()`](/products-query-builder/in),[`hasSome()`](/products-query-builder/has-some),[`startsWith()`](/products-query-builder/starts-with),[`ascending()`](/products-query-builder/ascending),[`descending()`](/products-query-builder/descending)| |`slug`|[`eq()`](/products-query-builder/eq),[`ne()`](/products-query-builder/ne),[`exists()`](/products-query-builder/exists),[`in()`](/products-query-builder/in),[`hasSome()`](/products-query-builder/has-some),[`startsWith()`](/products-query-builder/starts-with),[`ascending()`](/products-query-builder/ascending),[`descending()`](/products-query-builder/descending)| |`productType`|[`eq()`](/products-query-builder/eq),[`ne()`](/products-query-builder/ne),[`exists()`](/products-query-builder/exists),[`in()`](/products-query-builder/in),[`hasSome()`](/products-query-builder/has-some),[`ascending()`](/products-query-builder/ascending),[`descending()`](/products-query-builder/descending)| |`description`|[`eq()`](/products-query-builder/eq),[`ne()`](/products-query-builder/ne),[`exists()`](/products-query-builder/exists),[`in()`](/products-query-builder/in),[`hasSome()`](/products-query-builder/has-some),[`startsWith()`](/products-query-builder/starts-with)| |`sku`|[`eq()`](/products-query-builder/eq),[`ne()`](/products-query-builder/ne),[`exists()`](/products-query-builder/exists),[`in()`](/products-query-builder/in),[`hasSome()`](/products-query-builder/has-some),[`startsWith()`](/products-query-builder/starts-with),[`ascending()`](/products-query-builder/ascending),[`descending()`](/products-query-builder/descending)| |`price`|[`eq()`](/products-query-builder/eq),[`ne()`](/products-query-builder/ne),[`exists()`](/products-query-builder/exists),[`in()`](/products-query-builder/in),[`hasSome()`](/products-query-builder/has-some),[`ascending()`](/products-query-builder/ascending),[`descending()`](/products-query-builder/descending)| |`priceData.price`|[`eq()`](/products-query-builder/eq),[`ne()`](/products-query-builder/ne),[`exists()`](/products-query-builder/exists),[`in()`](/products-query-builder/in),[`hasSome()`](/products-query-builder/has-some),[`lt()`](/products-query-builder/lt),[`le()`](/products-query-builder/le),[`gt()`](/products-query-builder/gt),[`ge()`](/products-query-builder/ge),[`ascending()`](/products-query-builder/ascending),[`descending()`](/products-query-builder/descending)| |`numericId`|[`eq()`](/products-query-builder/eq),[`ne()`](/products-query-builder/ne),[`exists()`](/products-query-builder/exists),[`in()`](/products-query-builder/in),[`hasSome()`](/products-query-builder/has-some),[`lt()`](/products-query-builder/lt),[`le()`](/products-query-builder/le),[`gt()`](/products-query-builder/gt),[`ge()`](/products-query-builder/ge),[`ascending()`](/products-query-builder/ascending),[`descending()`](/products-query-builder/descending)| |`collectionIds`|[`eq()`](/products-query-builder/eq),[`ne()`](/products-query-builder/ne),[`exists()`](/products-query-builder/exists),[`in()`](/products-query-builder/in),[`hasSome()`](/products-query-builder/has-some),[`hasAll()`](/products-query-builder/has-all)| |`lastUpdated`|[`eq()`](/products-query-builder/eq),[`ne()`](/products-query-builder/ne),[`exists()`](/products-query-builder/exists),[`in()`](/products-query-builder/in),[`hasSome()`](/products-query-builder/has-some),[`lt()`](/products-query-builder/lt),[`le()`](/products-query-builder/le),[`gt()`](/products-query-builder/gt),[`ge()`](/products-query-builder/ge),[`ascending()`](/products-query-builder/ascending),[`descending()`](/products-query-builder/descending)| |`_createdDate`|[`eq()`](/products-query-builder/eq),[`ne()`](/products-query-builder/ne),[`exists()`](/products-query-builder/exists),[`in()`](/products-query-builder/in),[`hasSome()`](/products-query-builder/has-some),[`lt()`](/products-query-builder/lt),[`le()`](/products-query-builder/le),[`gt()`](/products-query-builder/gt),[`ge()`](/products-query-builder/ge)| # Method Code Examples: *** Note: do not assume any prop names or enum values other than the ones in the example. ## queryProducts example ```javascript import { products } from 'wix-stores.v2'; async function queryProducts() { const { items } = products.queryProducts().find(); } ``` ## queryProducts example for exporting from backend code ```javascript import { products } from 'wix-stores.v2'; import { webMethod, Permissions } from 'wix-web-module'; export const queryProducts = webMethod( Permissions.Anyone, async (options) => { try { const result = await products.queryProducts(options); return result; } catch (error) { console.error(error); // Handle the error } } ); ``` ---