<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Dynamicweb.Frontend.Classic.Api.Products</name>
    </assembly>
    <members>
        <member name="M:Dynamicweb.Frontend.Classic.Api.Products.Controllers.FeedsController.VerifyConnection">
             <summary>
             Can be used as a ping endpoint to confirm connectivity.
             </summary>
             <remarks>
             No Authorization header required.
            
             This will always return true, if it returns a positive response.
            
             It can be used for health checks and pinging to verify connectivity to the DW solution.
             </remarks>
             <returns>true</returns>
        </member>
        <member name="M:Dynamicweb.Frontend.Classic.Api.Products.Controllers.FeedsController.GetFeedOutput(System.Int32,Dynamicweb.Ecommerce.Feeds.FeedContextConfiguration,System.Threading.CancellationToken)">
             <summary>
             Gets the output for the specified feed with the specified context.
             </summary>
             <remarks>
             No Authorization header required.
            
             Will find a feed with the given <paramref name="id"/> and then generate the output based on the context parameters sent in.
            
             The output is based on the provider used and/or the template specified for the feed. Given that, it's not possible to give an example output as it depends on the configuration of the feed.
             </remarks>
             <param name="id">The ID identifying the feed.</param>
             <param name="feedContextConfiguration">The context to be sent into the feed.</param>
             <param name="cancellationToken">The cancellation token. Handled to cancel the operation.</param>
             <returns></returns>
        </member>
        <member name="T:Dynamicweb.Frontend.Classic.Api.Products.Controllers.GroupsController">
            <summary>
            Controller for both commands and queries related to ecommerce groups.
            </summary>
        </member>
        <member name="M:Dynamicweb.Frontend.Classic.Api.Products.Controllers.GroupsController.#ctor(Dynamicweb.Ecommerce.Products.GroupService)">
            <summary>
            Controller for both commands and queries related to ecommerce groups.
            </summary>
        </member>
        <member name="M:Dynamicweb.Frontend.Classic.Api.Products.Controllers.GroupsController.GetAll(Dynamicweb.Frontend.Classic.Api.Products.Controllers.GroupsController.GroupRequest)">
             <summary>
             Gets all groups for the DW solution.
             </summary>
             <remarks>
             No Authorization header required.
            
             The response can be filtered with the use of the different settings parameters.
            
             **Sample query parameters**
             - FieldSettings.FilledProperties=SystemName
             - FilledProperties=Id,GroupFields
            
             **Sample response**
             ```
             [
            	    {
            	    	"Id": "GROUP230",
            	    	"GroupFields": [
            	    		{
            	    			"SystemName": "SelectedGroup"
            	    		},
            	    		{
            	    			"SystemName": "ProductGroupNavigationImage"
            	    		},
            	    		{
            	    			"SystemName": "ProductGroupPromotionImage"
            	    		},
            	    		{
            	    			"SystemName": "ProductGroupPromotionDescription"
            	    		},
            	    		{
            	    			"SystemName": "ProductGroupPromotionLinkLabel"
            	    		},
            	    		{
            	    			"SystemName": "ProductGroupPromotionLink"
            	    		}
            	    	]
            	    },
                 ...
             ]
             ```
            
             The ParentId and the ShopId are used to further filter which groups to be returned, they can both be used at the same time, the filtering happens on ParentId first, then the ShopId.
            
             The group(s) will be translated to the given languageId, fall-back to the default language on the DW solution.
             </remarks>
             <param name="request">Specify shopId, parentId, languageId and other settings to filter groups by.</param>
             <returns></returns>
        </member>
        <member name="M:Dynamicweb.Frontend.Classic.Api.Products.Controllers.GroupsController.GetGroup(System.String,Dynamicweb.Frontend.Classic.Api.Products.Controllers.GroupsController.GroupRequest)">
             <summary>
             Get the group for the specified groupId.
             </summary>
             <remarks>
             No Authorization header required.
            
             The response can be filtered with the use of the different settings parameters.
            
             **Sample query parameters**
             - FieldSettings.FilledProperties=SystemName
             - FilledProperties=Id,GroupFields
            
             **Sample response**
             ```
             {
             	"Id": "GROUP230",
             	"Assets": [
             		{
             			"Name": "SmallImage"
             		},
             		{
             			"Name": "LargeImage"
             		},
             		{
             			"Name": "Icon"
             		}
             	]
             }
             ```
            
             The group will be translated to the given languageId, fall-back to the default language on the DW solution.
             </remarks>
             <param name="groupId">The ID identifying the group to get.</param>
             <param name="request">The shopId, parentId, languageId and settings to filter groups by.</param>
             <returns></returns>
        </member>
        <member name="T:Dynamicweb.Frontend.Classic.Api.Products.Controllers.GroupsController.GroupRequest">
            <summary>
            Settings for getting groups.
            </summary>
        </member>
        <member name="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.GroupsController.GroupRequest.ParentId">
            <summary>
            To get subgroups of a specific group, use parent id to specify the parent of the children needed.
            </summary>
        </member>
        <member name="T:Dynamicweb.Frontend.Classic.Api.Products.Controllers.InternationalController">
            <summary>
            Controller for both commands and queries related to ecommerce countries and currencies.
            </summary>
        </member>
        <member name="M:Dynamicweb.Frontend.Classic.Api.Products.Controllers.InternationalController.#ctor(Dynamicweb.Ecommerce.International.LanguageService,Dynamicweb.Ecommerce.International.CountryService,Dynamicweb.Ecommerce.International.CurrencyService)">
            <summary>
            Controller for both commands and queries related to ecommerce countries and currencies.
            </summary>
        </member>
        <member name="M:Dynamicweb.Frontend.Classic.Api.Products.Controllers.InternationalController.GetCountries(System.String)">
             <summary>
             Get all countries set up in the DW solution.
             </summary>
             <remarks>
             No Authorization header required.
            
             Finds all the countries that has been set up in the solution and returns their information with the name translated to the language specified in the languageId query parameter.
            
             If no languageId is specified, or the specified languageId doesn't exist, it will fall-back on the default languageId set in the solution.
             </remarks>
             <param name="languageId">The ID of the language to use for names of the returned countries.</param>
             <returns>List of <see cref="T:Dynamicweb.Ecommerce.Frontend.CountryViewModel"/>, if found; otherwise <c>null</c>.</returns>
        </member>
        <member name="M:Dynamicweb.Frontend.Classic.Api.Products.Controllers.InternationalController.GetRegions(System.String,System.String)">
             <summary>
             Get all the regions for the country specified by the <paramref name="countryCode"/>.
             </summary>
             <remarks>
             No Authorization header required.
            
             Finds all the regions for the specified country and returns their information with the name translated to the language specified in <paramref name="languageId"/>.
            
             If no languageId is specified, or the specified languageId doesn't exist, it will fall-back on the default languageId set in the solution.
             </remarks>
             <param name="countryCode">The 2 letters ISO code of a country defined in Ecommerce, i.e. US.</param>
             <param name="languageId">The ID of the language to use for names of the returned countries.</param>
             <returns>List of <see cref="T:Dynamicweb.Ecommerce.Frontend.CountryViewModel"/>, if found; otherwise <c>null</c>.</returns>
        </member>
        <member name="M:Dynamicweb.Frontend.Classic.Api.Products.Controllers.InternationalController.GetCurrencies(System.String)">
             <summary>
             Get all the currencies set up in the DW solution.
             </summary>
             <remarks>
             No Authorization header required.
            
             Finds all the currencies that has been set up in the solution and returns their information with the name translated to the language specified in the languageId query parameter.
            
             If no languageId is specified, or the specified languageId doesn't exist, it will fall-back on the default languageId set in the solution.
             </remarks>
             <param name="languageId">The ID of the language to use for names of the returned currencies.</param>
             <returns>List of <see cref="T:Dynamicweb.Ecommerce.Frontend.CurrencyViewModel"/>, if found; otherwise <c>null</c>.</returns>
        </member>
        <member name="T:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController">
            <summary>
            Controller for both commands and queries related to ecommerce products.
            </summary>
        </member>
        <member name="M:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.#ctor(Dynamicweb.Ecommerce.Products.ProductService,Dynamicweb.Ecommerce.Products.ProductRelatedService,Dynamicweb.Security.UserManagement.UserService)">
            <summary>
            Controller for both commands and queries related to ecommerce products.
            </summary>
        </member>
        <member name="M:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.GetAll(Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest,Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings)">
             <summary>
             Gets products based on the query parameters and request body.
             </summary>
             <remarks>
             No Authorization header required.
            
             Will fetch all the products on the DW solution based on the provided query parameters and properties in the request body.
            
             There's a hierarchy of how the query parameters for this product search is done;
             - If both <see cref="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest.RepositoryName"/> and <see cref="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest.QueryName"/> are present, they will be used, if only one or none are present, it will continue to the next step
             - If <see cref="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest.GroupId"/> is present, it will be used, if it is not present, it will continue to the next step
             - If <see cref="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest.ProductIds"/> contains any elements, they will be used, however, if it's present but with only null values, it will simply just return 204 No Content
            
             The rest of the query parameters can be used to sort the result.
            
             The body parameters can be used to further filter and paginate the result, so setting a specific <see cref="P:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings.PageSize"/> will limit the amount of results given,
             while setting <see cref="P:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings.CurrentPage"/> will change which results is returned depending on the amount and the <see cref="P:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings.PageSize"/>.
            
             **Sample body**
            
             ```
             {
                 "FilledProperties": [
                     "Products"
                 ],
                 "PageSize": 1,
                 "CurrentPage": 1,
                 "ProductSettings": {
                     "FilledProperties": [
                         "Name"
                     ]
                 }
             }
             ```
            
             This example uses the FilledProperties property on the base ViewModel to only return Products, it then uses pagination to show 1 product per page and saying we're on page 1.
            
             At the end it uses the ProductSettings property to further filter what properties to show on the specific products, in this case all returned is the name of the property.
            
             **Sample response**
            
             ```
             {
                 "Products": [
                     {
                         "Name": "Scattante XRL Team Frame"
                     }
                 ]
             }
             ```
            
             To get a list of all the groups and their IDs, refer to GET /dwapi/ecommerce/groups
            
             This uses the GET /ecommerce/products/search, as both uses the same properties, this endpoint has a request body, the other has it as query parameters.
             </remarks>
             <param name="search">Parameters for the query, see <see cref="T:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest"/>.</param>
             <param name="request">Parameters for the product list, see <see cref="T:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings"/>.</param>
             <returns>Returns an instance of a <see cref="T:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModel"/> model.</returns>
        </member>
        <member name="M:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.Search(Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest,Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings)">
             <summary>
             Gets products based on the query parameters.
             </summary>
             <remarks>
             No Authorization header required.
            
             Will fetch all the products on the DW solution based on the provided query parameters and properties in the request body.
            
             There's a hierarchy of how the query parameters for this product search is done;
             - If both <see cref="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest.RepositoryName"/> and <see cref="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest.QueryName"/> are present, they will be used, if only one or none are present, it will continue to the next step
             - If <see cref="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest.GroupId"/> is present, it will be used, if it is not present, it will continue to the next step
             - If <see cref="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest.ProductIds"/> contains any elements, they will be used, however, if it's present but with only null values, it will simply just return 204 No Content
            
             The rest of the query parameters can be used to sort and filter the result.
            
             To be able to use the filtering, the different properties of the inner models will have to be filled.
            
             **Sample query parameters**
            
             - GroupId=GROUP49
             - ProductSettings.FilledProperties=Name
             - PageSize=1
             - CurrentPage=1
             - FilledProperties=Products
            
             Note that in this example we're filling the 'FilledProperties' property of the 'ProductSettings' parameter, this lets us filter which properties gets returned in the 'Products' property in the response.
            
             We're further filtering the outputs root ViewModel by using the 'FilledProperties' query parameter itself, as that refers to the root ViewModel, so this example only returns the Products and not other properties, such as Groups.
            
             **Sample response**
            
             ```
             {
                 "Products": [
                     {
                         "Name": "Scattante XRL Team Frame"
                     }
                 ]
             }
             ```
            
             To get a list of all the groups and their IDs, refer to GET /dwapi/ecommerce/groups
             </remarks>
             <param name="searchRequest">Parameters for the query, see <see cref="T:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest"/>.</param>
             <param name="request">Parameters for the product list, see <see cref="T:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings"/>.</param>
             <returns>Returns an instance of a <see cref="T:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModel"/> model.</returns>
        </member>
        <member name="M:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.GetProductById(System.String,Dynamicweb.Ecommerce.ProductCatalog.ProductViewModelSettings)">
             <summary>
             Get the product found by the given ID.
             </summary>
             <remarks>
             No Authorization header required.
            
             With the addition that UserId will be filled with the ID of the user taken from the Authorization header, if present.
            
             All the settings parameters can be used to filter the result.
            
             **Sample query parameters**
             - PriceSettings.FilledProperties=Id,Name,Title
             - FilledProperties=Products
            
             In this example we're taking the Price, PriceBeforeDiscount and Discount properties from the <see cref="T:Dynamicweb.Ecommerce.ProductCatalog.ProductViewModel"/> and then further filtering the <see cref="T:Dynamicweb.Frontend.PriceViewModel"/>s to only show Price and CurrencyCode.
            
             **Sample response**
             ```
             {
             	"Products": [
             		{
             			"Id": "10007",
             			"Name": "Scattante XRL Team Frame",
             			"Title": "Scattante XRL Team Frame"
             		}
             	]
             }
             ```
            
             To get a list of all the products and their IDs, refer to GET /dwapi/ecommerce/products/search
             </remarks>
             <param name="id">The ID identifying the product to get.</param>
             <param name="request">Parameters for the product, see <see cref="T:Dynamicweb.Ecommerce.ProductCatalog.ProductViewModelSettings"/>.</param>
             <returns>Returns an instance of a <see cref="T:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModel"/> model.</returns>
        </member>
        <member name="M:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.GetProductByIdAndVariantId(System.String,System.String,Dynamicweb.Ecommerce.ProductCatalog.ProductViewModelSettings)">
             <summary>
             Get the product found by the given ID and VariantId.
             </summary>
             <remarks>
             No Authorization header required.
            
             All the settings parameters can be used to filter the result.
            
             **Sample query parameters**
             - PriceSettings.FilledProperties=Id,Name,Title
             - FilledProperties=Products
            
             In this example we're taking the Price, PriceBeforeDiscount and Discount properties from the <see cref="T:Dynamicweb.Ecommerce.ProductCatalog.ProductViewModel"/> and then further filtering the <see cref="T:Dynamicweb.Frontend.PriceViewModel"/>s to only show Price and CurrencyCode.
            
             **Sample response**
             ```
             {
             	"Products": [
             		{
             			"Id": "10007",
             			"Name": "Scattante XRL Team Frame",
             			"Title": "Scattante XRL Team Frame"
             		}
             	]
             }
             ```
            
             With the addition that UserId will be filled with the ID of the user taken from the Authorization header, if present.
            
             To get a list of all the products and their IDs, refer to GET /dwapi/ecommerce/products/search
             </remarks>
             <param name="id">The ID identifying the product to get.</param>
             <param name="request">Parameters for the product, see <see cref="T:Dynamicweb.Ecommerce.ProductCatalog.ProductViewModelSettings"/>.</param>
             <param name="variantId">VariantId for the variant to get - master if not specified.</param>
             <returns>A <see cref="T:Dynamicweb.Ecommerce.ProductCatalog.ProductViewModel"/> model.</returns>
        </member>
        <member name="M:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.GetRelatedProductsById(System.String,Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings)">
             <summary>
             Gets a products related products based on the ID of a product.
             </summary>
             <remarks>
             No Authorization header required.
            
             All the settings parameters can be used to filter the result.
            
             **Sample query parameters**
             - ProductSettings.FilledProperties=Id,Name,Title
             - FilledProperties=Products
            
             In this example we're taking the Price, PriceBeforeDiscount and Discount properties from the <see cref="T:Dynamicweb.Ecommerce.ProductCatalog.ProductViewModel"/> and then further filtering the <see cref="T:Dynamicweb.Frontend.PriceViewModel"/>s to only show Price and CurrencyCode.
            
             **Sample response**
             ```
             {
             	"Products": [
             		{
             			"Id": "10007",
             			"Name": "Scattante XRL Team Frame",
             			"Title": "Scattante XRL Team Frame"
             		}
             	]
             }
             ```
            
             With the addition that UserId will be filled with the ID of the user taken from the Authorization header, if present.
            
             Setting a specific <see cref="P:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings.PageSize"/> will limit the amount of results given, 
             while setting <see cref="P:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings.CurrentPage"/> will change which results is returned depending on the amount and the <see cref="P:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings.PageSize"/>.
            
             To get a list of all the products and their IDs, refer to GET /dwapi/ecommerce/products/search
             </remarks>
             <param name="id">The ID identifying the product to get the related products for.</param>
             <param name="request">Parameters for the product list, see <see cref="T:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings"/>.</param>
             <returns>A <see cref="T:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModel"/> model.</returns>
        </member>
        <member name="M:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.GetRelatedProductsByIdAndRelatedGroupId(System.String,System.String,Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings)">
             <summary>
             Gets a products related products for a specific relation group based on the ID of a product.
             </summary>
             <remarks>
             No Authorization header required.
            
             All the settings parameters can be used to filter the result.
            
             **Sample query parameters**
             - ProductSettings.FilledProperties=Id,Name,Title
             - FilledProperties=Products
            
             In this example we're taking the Price, PriceBeforeDiscount and Discount properties from the <see cref="T:Dynamicweb.Ecommerce.ProductCatalog.ProductViewModel"/> and then further filtering the <see cref="T:Dynamicweb.Frontend.PriceViewModel"/>s to only show Price and CurrencyCode.
            
             **Sample response**
             ```
             {
             	"Products": [
             		{
             			"Id": "10007",
             			"Name": "Scattante XRL Team Frame",
             			"Title": "Scattante XRL Team Frame"
             		}
             	]
             }
             ```
            
             With the addition that UserId will be filled with the ID of the user taken from the Authorization header, if present.
            
             Setting a specific <see cref="P:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings.PageSize"/> will limit the amount of results given, 
             while setting <see cref="P:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings.CurrentPage"/> will change which results is returned depending on the amount and the <see cref="P:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings.PageSize"/>.
            
             To get a list of all the products and their IDs, refer to GET /dwapi/ecommerce/products/search
             </remarks>
             <param name="id">The ID identifying the product to get the related products for.</param>
             <param name="relatedGroupId">The related group id identifying the relation group to get the related products for.</param>
             <param name="request">Parameters for the product list, see <see cref="T:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings"/>.</param>
             <returns>A <see cref="T:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModel"/> model.</returns>
        </member>
        <member name="M:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.GetBomConfiguration(System.String,Dynamicweb.Ecommerce.ProductCatalog.ProductViewModelSettings)">
            <summary>
            Gets a product BOM configuration based on the ID of a product.
            </summary>
            <param name="id">The ID identifying the product to get the BOM configuration for.</param>
            <param name="request">Parameters for the product, see <see cref="T:Dynamicweb.Ecommerce.ProductCatalog.ProductViewModelSettings"/>.</param>
            <returns>A <see cref="T:Dynamicweb.Ecommerce.ProductCatalog.BomConfigurationViewModel"/> model.</returns>
        </member>
        <member name="M:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.ExportProductsPost(System.Collections.Generic.Dictionary{System.String,System.Object},Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings,Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.ExportSettings,Dynamicweb.Ecommerce.ProductCatalog.ImageExportSettings)">
             <summary>
             Exports a set of products. Sends a download link for a zip archive created containing files with the specified formats to the given email.
             </summary>
             <remarks>
             No Authorization header required.
            
             The UserId will be filled with the ID of the user taken from the Authorization header, if present.
            
             There's a hierarchy of how the query parameters for this product search is done;
             - If both <see cref="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest.RepositoryName"/> and <see cref="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest.QueryName"/> are present, they will be used, if only one or none are present, it will continue to the next step
             - If <see cref="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest.GroupId"/> is present, it will be used, if it is not present, it will continue to the next step
             - If <see cref="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest.ProductIds"/> contains any elements, they will be used, however, if it's present but with only null values, it will simply just return 204 No Content.
            
             All the settings parameters can be used to filter the result.
            
             **Sample query parameters**
             - ProductSettings.FilledProperties=Id,Name,Title
             - FilledProperties=Products
            
             In this example we're taking the Price, PriceBeforeDiscount and Discount properties from the <see cref="T:Dynamicweb.Ecommerce.ProductCatalog.ProductViewModel"/> and then further filtering the <see cref="T:Dynamicweb.Frontend.PriceViewModel"/>s to only show Price and CurrencyCode.
            
             Setting a specific <see cref="P:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings.PageSize"/> will limit the amount of results given,
             while setting <see cref="P:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings.CurrentPage"/> will change which results is returned depending on the amount and the <see cref="P:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings.PageSize"/>.
            
             To get a list of all the products and their IDs, refer to GET /dwapi/ecommerce/products/search
             </remarks>
             <param name="searchParameters">Parameters for the query/>.</param>
             <param name="request">Parameters for the product list, see <see cref="T:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings"/>.</param>
             <param name="exportSettings">Parameters for the product list export, see <see cref="T:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.ExportSettings"/>.</param>
             <param name="imageExportSettings"></param>
             <returns>A <see cref="T:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModel"/> model.</returns>
        </member>
        <member name="M:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.ExportProducts(Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest,Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings,Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.ExportSettings,Dynamicweb.Ecommerce.ProductCatalog.ImageExportSettings)">
             <summary>
             Exports a set of products. Sends a download link for a zip archive created containing files with the specified formats to the given email.
             </summary>
             <remarks>
             No Authorization header required.
            
             The UserId will be filled with the ID of the user taken from the Authorization header, if present.
            
             There's a hierarchy of how the query parameters for this product search is done;
             - If both <see cref="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest.RepositoryName"/> and <see cref="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest.QueryName"/> are present, they will be used, if only one or none are present, it will continue to the next step
             - If <see cref="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest.GroupId"/> is present, it will be used, if it is not present, it will continue to the next step
             - If <see cref="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest.ProductIds"/> contains any elements, they will be used, however, if it's present but with only null values, it will simply just return 204 No Content.
            
             All the settings parameters can be used to filter the result.
            
             **Sample query parameters**
             - ProductSettings.FilledProperties=Id,Name,Title
             - FilledProperties=Products
            
             In this example we're taking the Price, PriceBeforeDiscount and Discount properties from the <see cref="T:Dynamicweb.Ecommerce.ProductCatalog.ProductViewModel"/> and then further filtering the <see cref="T:Dynamicweb.Frontend.PriceViewModel"/>s to only show Price and CurrencyCode.
            
             Setting a specific <see cref="P:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings.PageSize"/> will limit the amount of results given,
             while setting <see cref="P:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings.CurrentPage"/> will change which results is returned depending on the amount and the <see cref="P:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings.PageSize"/>.
            
             To get a list of all the products and their IDs, refer to GET /dwapi/ecommerce/products/search
             </remarks>
             <param name="searchRequest">Parameters for the query, see <see cref="T:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest"/>.</param>
             <param name="request">Parameters for the product list, see <see cref="T:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModelSettings"/>.</param>
             <param name="exportSettings">Parameters for the product list export, see <see cref="T:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.ExportSettings"/>.</param>
             <param name="imageExportSettings"></param>
             <returns>A <see cref="T:Dynamicweb.Ecommerce.ProductCatalog.ProductListViewModel"/> model.</returns>
        </member>
        <member name="T:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest">
            <summary>
            Parameters to fetch products.
            </summary>
        </member>
        <member name="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest.RepositoryName">
            <summary>
            Used together with the <see cref="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest.QueryName"/> to perform a search for products.
            </summary>
        </member>
        <member name="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest.QueryName">
            <summary>
            Used together with the <see cref="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest.RepositoryName"/> to perform a search for products.
            </summary>
        </member>
        <member name="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest.GroupId">
            <summary>
            Used by itself, will find all products for the given <see cref="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest.GroupId"/>.
            </summary>
        </member>
        <member name="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest.ProductIds">
            <summary>
            Finds all the products and their details given the <see cref="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest.ProductIds"/>.
            </summary>
        </member>
        <member name="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest.SortBy">
            <summary>
            The field to sort by, i.e. ProductPrice.
            </summary>
        </member>
        <member name="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.SearchRequest.SortOrder">
            <summary>
            The sort direction. Default is ASC, the other option is DESC.
            </summary>
        </member>
        <member name="T:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.ExportSettings">
            <summary>
            Export product parameters.
            </summary>
        </member>
        <member name="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.ExportSettings.FileName">
            <summary>
            The name of the file of the export. If not specified file name will be $"export_{DateTime.Now}".
            </summary>
        </member>
        <member name="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.ExportSettings.ExportFormat">
            <summary>
            The format the products should be exported to. If not specified, no products export will be done.
            </summary>
        </member>
        <member name="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.ExportSettings.SenderName">
            <summary>
            The name of the sender of the export email. If not specified <see cref="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.ExportSettings.SenderEmail">SenderEmail</see> will be used.
            </summary>
        </member>
        <member name="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.ExportSettings.SenderEmail">
            <summary>
            The email of the sender of the export email. If not specified SystemMailAddress will be used.
            </summary>
        </member>
        <member name="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.ExportSettings.RecipientTokens">
             <summary>
             The tokens of the recipients the mail is intended to. To get these tokens, refer to POST /users/createRecipients.
            
             This parameter is required.
             </summary>
        </member>
        <member name="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.ExportSettings.Subject">
            <summary>
            The subject of the export email. If not specified "Export products" will be used.
            </summary>
        </member>
        <member name="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.ExportSettings.TemplatePath">
            <summary>
            The path for the email template to use. If not specified "eCom/ProductCatalog/ExportProductsMail.cshtml" will be used.
            </summary>
        </member>
        <member name="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.ExportSettings.FeedId">
            <summary>
            The id of the feed that should be used for generating the product file export. If not specified it will use the <see cref="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.ExportSettings.ExportFormat">ExportFormat</see>
            </summary>
        </member>
        <member name="T:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.ExportAssets">
            <summary>
            Export Assets model
            </summary>
        </member>
        <member name="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.ExportAssets.Images">
            <summary>
            Gets or sets image files to be exported
            </summary>
        </member>
        <member name="P:Dynamicweb.Frontend.Classic.Api.Products.Controllers.ProductsController.ExportAssets.Documents">
            <summary>
            Gets or sets document files to be exported
            </summary>
        </member>
        <member name="T:Dynamicweb.Frontend.Classic.Api.Products.Controllers.VariantsController">
            <summary>
            To get information about variants of a given product.
            </summary>
        </member>
        <member name="M:Dynamicweb.Frontend.Classic.Api.Products.Controllers.VariantsController.GetVariantInfo(System.String,Dynamicweb.Ecommerce.ProductCatalog.ProductViewModelSettings)">
             <summary>
             Gets the variant information for the product specified by the given productId.
             </summary>
             <remarks>
             No Authorization header required.
            
             **Sample query parameters**
             - PriceSettings.FilledProperties=Price,CurrencyCode
             - MediaSettings.FilledProperties=Value
            
             In this example we're taking the Price, PriceBeforeDiscount and Discount properties from the <see cref="T:Dynamicweb.Ecommerce.ProductCatalog.ProductViewModel"/> and then further filtering the <see cref="T:Dynamicweb.Frontend.PriceViewModel"/>s to only show Price and CurrencyCode.
            
             **Sample response**
             ```
             {
             	"ProductID": "10007",
             	"VariantID": "",
             	"ProductName": "Scattante XRL Team Frame",
             	"ProductNumber": "10007",
             	"ProductStock": 1.0,
             	"Image": {
             		"Value": "/Files/Images/missing_image.jpg"
             	},
             	"Price": {
             		"Price": 299.0,
             		"CurrencyCode": "EUR"
             	},
             	"PriceMin": {
             		"Price": 299.0,
             		"CurrencyCode": "EUR"
             	},
             	"PriceMax": {
             		"Price": 299.0,
             		"CurrencyCode": "EUR"
             	},
             	"Stock": 1.0
             }
             ```
             </remarks>
             <param name="productId">The ID identifying the specific product to get the variant information for.</param>
             <param name="request">parameters for the request - use to filter by language etc: <see cref="T:Dynamicweb.Ecommerce.ProductCatalog.ProductViewModelSettings"/>.</param>
             <returns></returns>
        </member>
    </members>
</doc>
