> 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 # QuerySuppliers # Package: suppliersHub # Namespace: MarketplaceSupplier # Method link: https://dev.wix.com/docs/api-reference/business-solutions/suppliers-hub/suppliers/query-suppliers.md ## Permission Scopes: Read Marketplace: SCOPE.SUPPLIERS_HUB.READ_MARKETPLACE ## Introduction Retrieves a list of suppliers with filtering, sorting, and cursor-based pagination. Up to 100 suppliers can be returned per request. For larger datasets, use cursor paging to iterate through results by following the `next` cursor in `pagingMetadata` until all suppliers are retrieved. To learn how to query suppliers, see [API Query Language][https://dev.wix.com/docs/rest/articles/getting-started/api-query-language]..md --- ## REST API ### Schema ``` Method: querySuppliers Description: Retrieves a list of suppliers with filtering, sorting, and cursor-based pagination. Up to 100 suppliers can be returned per request. For larger datasets, use cursor paging to iterate through results by following the `next` cursor in `pagingMetadata` until all suppliers are retrieved. To learn how to query suppliers, see [API Query Language][https://dev.wix.com/docs/rest/articles/getting-started/api-query-language]..md URL: https://www.wixapis.com/suppliers-hub/v1/suppliers/query Method: POST Method parameters: param name: query | type: CursorQuery - name: cursorPaging | type: CursorPaging | description: Cursor paging options. Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language.md#cursor-paging). - name: limit | type: integer | description: Maximum number of items to return in the results. - name: cursor | type: string | description: Pointer to the next or previous page in the list of results. Pass the relevant cursor token from the `pagingMetadata` object in the previous call's response. Not relevant for the first request. - name: filter | type: object | description: Filter object. Learn more about the [filter section](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language.md#the-filter-section). - name: sort | type: array | description: Sort object. Learn more about the [sort section](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language.md#the-sort-section). - name: fieldName | type: string | description: Name of the field to sort by. - name: order | type: SortOrder | description: Sort order. - enum: ASC, DESC Return type: QuerySuppliersResponse - name: suppliers | type: array | description: List of Suppliers. - name: id | type: string | description: Supplier GUID. - name: revision | type: string | description: Revision number, which increments by 1 each time the Supplier is updated. To prevent conflicting changes, the current revision must be passed when updating the Supplier. Ignored when creating a Supplier. - name: createdDate | type: string | description: Date and time the Supplier was created. - name: updatedDate | type: string | description: Date and time the Supplier was last updated. - name: name | type: string | description: Supplier name. Displayed to providers when browsing and selecting suppliers for their product catalogs. - name: appId | type: string | description: App GUID of the provider application responsible for managing the supplier and its products. Automatically set to the GUID of the application making the create request. - name: location | type: Location | description: Supplier location. - name: country | type: string | description: 2-letter country code in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1) format. For example, `US` for United States or `GB` for United Kingdom. - name: rating | type: string | description: Supplier rating from 1.00 to 5.00. For example, `4.25`. Provider applications manage ratings and should update both `rating` and `reviewCount` together to maintain consistency. - name: verified | type: boolean | description: Whether the supplier has passed verification processes. Default: `false` - name: types | type: array | description: Supplier business model types. `DROPSHIPPING` suppliers ship directly to end customers, while `WHOLESALE` suppliers ship in bulk to the provider who fulfills orders. A supplier can support multiple fulfillment models. - enum: - DROPSHIPPING: Supplier ships products directly to end customers. The provider does not handle physical inventory or fulfillment. - WHOLESALE: Supplier ships products in bulk to the provider, who then fulfills orders to end customers. - name: reviewCount | type: integer | description: Number of reviews for the supplier. Provider applications should update both `rating` and `reviewCount` together to maintain consistency. - name: tags | type: Tags | description: Supplier tags for organization and categorization. - name: privateTags | type: TagList | description: Tags that require an additional permission in order to access them, normally not given to site members or visitors. - name: tagIds | type: array | description: List of tag GUIDs. - name: publicTags | type: TagList | description: Tags that are exposed to anyone who has access to the labeled entity itself, including site members and visitors. - name: pagingMetadata | type: CursorPagingMetadata | description: Paging metadata - name: count | type: integer | description: Number of items returned in current page. - name: cursors | type: Cursors | description: Cursor strings that point to the next page, previous page, or both. - name: next | type: string | description: Cursor string pointing to the next page in the list of results. - name: prev | type: string | description: Cursor pointing to the previous page in the list of results. - name: hasNext | type: boolean | description: Whether there are more pages to retrieve following the current page. + `true`: Another page of results can be retrieved. + `false`: This is the last page. ``` ### Examples ### Query suppliers with filters Searches for verified suppliers with top rating cursor paging ```curl curl -X POST \ 'https://www.wixapis.com/suppliers-hub/v1/suppliers/query' \ -H 'Authorization: ' \ -H 'Content-Type: application/json' \ -d '{ "query": { "filter": { "$and": [ { "rating": { "$gt": 4.9 } }, { "verified": { "$eq": true } } ] }, "sort": [ { "fieldName": "rating", "order": "DESC" } ], "cursorPaging": { "limit": 5 } } }' ``` --- ## JavaScript SDK ### Schema ``` Method: wixClientAdmin.suppliersHub.MarketplaceSupplier.querySuppliers(query) Description: Retrieves a list of suppliers with filtering, sorting, and cursor-based pagination. Up to 100 suppliers can be returned per request. For larger datasets, use cursor paging to iterate through results by following the `next` cursor in `pagingMetadata` until all suppliers are retrieved. To learn how to query suppliers, see [API Query Language][https://dev.wix.com/docs/rest/articles/getting-started/api-query-language]..md # Note: If the parameter `a.b` is listed under required parameters, `b` is only required if `a` is also present. Required parameters: query Method parameters: param name: query | type: SupplierQuery | required: true - name: cursorPaging | type: CursorPaging | description: Cursor paging options. Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language.md#cursor-paging). - name: limit | type: integer | description: Maximum number of items to return in the results. - name: cursor | type: string | description: Pointer to the next or previous page in the list of results. Pass the relevant cursor token from the `pagingMetadata` object in the previous call's response. Not relevant for the first request. - name: filter | type: object | description: Filter object. Learn more about the [filter section](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language.md#the-filter-section). - name: sort | type: array | description: Sort object. Learn more about the [sort section](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language.md#the-sort-section). - name: fieldName | type: string | description: Name of the field to sort by. - name: order | type: SortOrder | description: Sort order. - enum: ASC, DESC Return type: PROMISE - name: suppliers | type: array | description: List of Suppliers. - name: _id | type: string | description: Supplier GUID. - name: revision | type: string | description: Revision number, which increments by 1 each time the Supplier is updated. To prevent conflicting changes, the current revision must be passed when updating the Supplier. Ignored when creating a Supplier. - name: _createdDate | type: Date | description: Date and time the Supplier was created. - name: _updatedDate | type: Date | description: Date and time the Supplier was last updated. - name: name | type: string | description: Supplier name. Displayed to providers when browsing and selecting suppliers for their product catalogs. - name: appId | type: string | description: App GUID of the provider application responsible for managing the supplier and its products. Automatically set to the GUID of the application making the create request. - name: location | type: Location | description: Supplier location. - name: country | type: string | description: 2-letter country code in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1) format. For example, `US` for United States or `GB` for United Kingdom. - name: rating | type: string | description: Supplier rating from 1.00 to 5.00. For example, `4.25`. Provider applications manage ratings and should update both `rating` and `reviewCount` together to maintain consistency. - name: verified | type: boolean | description: Whether the supplier has passed verification processes. Default: `false` - name: types | type: array | description: Supplier business model types. `DROPSHIPPING` suppliers ship directly to end customers, while `WHOLESALE` suppliers ship in bulk to the provider who fulfills orders. A supplier can support multiple fulfillment models. - enum: - DROPSHIPPING: Supplier ships products directly to end customers. The provider does not handle physical inventory or fulfillment. - WHOLESALE: Supplier ships products in bulk to the provider, who then fulfills orders to end customers. - name: reviewCount | type: integer | description: Number of reviews for the supplier. Provider applications should update both `rating` and `reviewCount` together to maintain consistency. - name: tags | type: Tags | description: Supplier tags for organization and categorization. - name: privateTags | type: TagList | description: Tags that require an additional permission in order to access them, normally not given to site members or visitors. - name: tagIds | type: array | description: List of tag GUIDs. - name: publicTags | type: TagList | description: Tags that are exposed to anyone who has access to the labeled entity itself, including site members and visitors. - name: pagingMetadata | type: CursorPagingMetadata | description: Paging metadata - name: count | type: integer | description: Number of items returned in current page. - name: cursors | type: Cursors | description: Cursor strings that point to the next page, previous page, or both. - name: next | type: string | description: Cursor string pointing to the next page in the list of results. - name: prev | type: string | description: Cursor pointing to the previous page in the list of results. - name: hasNext | type: boolean | description: Whether there are more pages to retrieve following the current page. + `true`: Another page of results can be retrieved. + `false`: This is the last page. ``` ### Examples ### querySuppliers ```javascript import { suppliers } from '@wix/suppliers-hub'; async function querySuppliers(query) { const response = await suppliers.querySuppliers(query); }; ``` ### querySuppliers (with elevated permissions) ```javascript import { suppliers } from '@wix/suppliers-hub'; import { auth } from '@wix/essentials'; async function myQuerySuppliersMethod(query) { const elevatedQuerySuppliers = auth.elevate(suppliers.querySuppliers); const response = await elevatedQuerySuppliers(query); } ``` ### querySuppliers (self-hosted) Self-hosted SDK calls require you to [create a client](https://dev.wix.com/docs/sdk/articles/work-with-the-sdk/about-the-wix-client.md). ```javascript import { createClient } from '@wix/sdk'; import { suppliers } from '@wix/suppliers-hub'; // Import the auth strategy for the relevant access type // Import the relevant host module if needed const myWixClient = createClient ({ modules: { suppliers }, // Include the auth strategy and host as relevant }); async function querySuppliers(query) { const response = await myWixClient.suppliers.querySuppliers(query); }; ``` ---