import { BaseClient, ClientConfig, Response } from "@commerce-apps/core";
import type { CommonParameters } from "@commerce-apps/core";
import type { OperationOptions } from "retry";
import type { RequestInit } from "node-fetch";
import type { CompositeParameters, CustomRequestBody, QueryParameters, RequireParametersUnlessAllAreOptional } from "../../types";
import type { Catalog, CatalogCategorySearchRequest, CatalogSearchRequest, CatalogSearchResult, Catalogs, Categories, Category, CategoryProductAssignment, CategoryProductAssignmentSearchRequest, CategoryProductAssignmentSearchResult, CategorySearchRequest, CategorySearchResult, Condition, ConditionsResult, ExcludedProductRequest, ExcludedProductsResult, ExecutionJobStatusResult, ExecutionRequest, Rule, RuleRequest, RulesRequest, RulesResult } from '../models/index';
/**
* [Catalogs](https://developer.salesforce.com/docs/commerce/commerce-api/references?meta=catalogs:Summary)
* ==================================
*
* *[Download API specification](https://developer.salesforce.com/static/commercecloud/commerce-api/catalogs/catalogs-oas-v1-public.yaml)
# API Overview
With the Catalogs API, you can:
- Create, view, edit, and delete catalogs and categories.
- Assign and unassign products to categories.
- Search for a product within a category.
- Search for categories within a catalog or within a merchandising system.
For more information, see the [Catalogs](https://documentation.b2c.commercecloud.salesforce.com/DOC1/topic/com.demandware.dochelp/Catalogs/Catalogs.html) and [Categories](https://documentation.b2c.commercecloud.salesforce.com/DOC1/topic/com.demandware.dochelp/Catalogs/Categories.html) sections of the Salesforce B2C Commerce Infocenter.
## Authentication & Authorization
The client managing catalog and category information must have access to the Categories and Catalogs resources. This API requires a bearer token in the header of the request. The client accessing the API must first authenticate against Account Manager to get the bearer token.
You must include the relevant scope(s) in the client ID used to generate the token. For a full list of required permissions, see the [Authorization Scopes Catalog.](https://developer.salesforce.com/docs/commerce/commerce-api/guide/auth-z-scope-catalog.html)
For detailed setup instructions, see the [Authorization for Admin APIs guide.](https://developer.salesforce.com/docs/commerce/commerce-api/guide/authorization-for-admin-apis.html)
## Use Cases
Here are some common use cases for the API:
### Categorize Products
Use the Catalogs API to assign products to categories so that shoppers can find all products that are merchandized in that category.

### Validate Product Category Assignments
Use the Catalogs API to search for products assigned to a category within a site catalog to validate whether a product is merchandized and ready to be sold in one or more ecommerce channels. You can also update a product to make sure it meets the readiness criteria for each channel.

### Edit Categories
Use the Catalogs API to edit categories assigned to a catalog to change the navigation path, make a category online or offline, change position of a category relative to other categories within a catalog.

## Resources
A Salesforce B2C Commerce storefront implementation uses a Catalog, Category, and Product architecture to organize your storefront. Product data is stored in a catalog, and the stored product data is organized by categories. You can create any number of catalog, category, and product scenarios to address your business needs.
### Catalogs
A catalog is a collection of categories, products, and images. It’s best practice to create two catalogs: the master catalog and the storefront catalog. The master catalog provides the same structure as an external system of record for your products. The storefront catalog is where you create categories that appear on your storefront.
### Categories
You create and organize categories and subcategories to organize and group products in your catalog and on your storefront. Categories allow Products to be organized into hierarchical structures. Categories can have relationships to other parent categories. Each category also can provide a context that is inherited by subcategories, for example a category may have an attribute value assigned to it and any product assigned to the category or a subcategory would inherit the attribute value as long as the product is assigned. Once the product is removed from the category those attribute values would no longer be in the context of the product.
### Products
Products are the items and services for sale on the storefront. All of your product data is stored in your master catalog. For a product or service to show on your storefront, it must be assigned to a category.*
*
* For instructions on how to retrieve access token for admin APIs: https://developer.salesforce.com/docs/commerce/commerce-api/guide/authorization-for-admin-apis.html
* Example with admin auth
*
* ```typescript
* import { CatalogsV1, ClientConfig } from "commerce-sdk";
* // or
* const { CatalogsV1, ClientConfig } = require("commerce-sdk");
*
* const clientConfig: ClientConfig = {
* parameters: {
* clientId: "XXXXXX",
* organizationId: "XXXX",
* shortCode: "XXX",
* siteId: "XX"
* }
* };
*
* token = { access_token: 'INSERT_ACCESS_TOKEN_HERE' };
*
* clientConfig.headers['authorization'] = `Bearer ${token.access_token}`;
* const catalogsClient = new CatalogsV1(clientConfig);
* ```
*
*
* API Version: 1.4.4
* Last Updated:
*
*
*/
export declare class CatalogsV1 extends BaseClient {
constructor(config: ClientConfig);
/**
* Add the product to the excluded product list for a given catalog and category. After a product is added as an excluded product for the category, the categorization process no longer categorizes that product for that category.
*
* If you would like to get a raw Response object use the other addProductsToExclusionList function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
*
* @returns A promise of type ExcludedProductsResult.
*/
addProductsToExclusionList(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: ExcludedProductRequest & CustomRequestBody;
}>): Promise;
/**
* Add the product to the excluded product list for a given catalog and category. After a product is added as an excluded product for the category, the categorization process no longer categorizes that product for that category.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type ExcludedProductsResult otherwise.
*/
addProductsToExclusionList(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: ExcludedProductRequest & CustomRequestBody;
}>, rawResponse?: T): Promise;
/**
* Create a category product assignment using the information provided.
Because the assigned position n is a normalized target position, we verify that the product is assigned
to a position that maintains the position order.
For example, if we have products A, B, C at positions 1, 2, 3, and product D is assigned to
position 2, the end result is products A, D, B, C with position order 1, 2, 3, 4.
If there are n existing position assignments, assigning a new product to position >= n+1 results in
a new assignment with position n+1.
*
* If you would like to get a raw Response object use the other assignProductToCategory function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.productId - The ID (SKU) of the requested product to assign.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
*
* @returns A promise of type CategoryProductAssignment.
*/
assignProductToCategory(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
productId: string;
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: CategoryProductAssignment & CustomRequestBody;
}>): Promise;
/**
* Create a category product assignment using the information provided.
Because the assigned position n is a normalized target position, we verify that the product is assigned
to a position that maintains the position order.
For example, if we have products A, B, C at positions 1, 2, 3, and product D is assigned to
position 2, the end result is products A, D, B, C with position order 1, 2, 3, 4.
If there are n existing position assignments, assigning a new product to position >= n+1 results in
a new assignment with position n+1.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.productId - The ID (SKU) of the requested product to assign.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type CategoryProductAssignment otherwise.
*/
assignProductToCategory(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
productId: string;
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: CategoryProductAssignment & CustomRequestBody;
}>, rawResponse?: T): Promise;
/**
* Create a catalog category using the information provided.
*
* If you would like to get a raw Response object use the other createCategoryInCatalog function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
*
* @returns A promise of type Category.
*/
createCategoryInCatalog(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: Category & CustomRequestBody;
}>): Promise;
/**
* Create a catalog category using the information provided.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type Category otherwise.
*/
createCategoryInCatalog(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: Category & CustomRequestBody;
}>, rawResponse?: T): Promise;
/**
* Create all rules and conditions within the catalog and category. This deletes any existing rules and conditions for that catalog and category combination, and recreates them based on the new request. The LocaleID, PrimaryFlag, and ClassificationFlag can be set on any of the individual rules, but they apply to the entire ruleset. For simplicity, those values can be provided with one of the rules. If they are provided with multiple rules, then they must all have the same value for all rules or it could produce undesired effects.
*
* If you would like to get a raw Response object use the other createCategoryRules function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
*
* @returns A promise of type RulesResult.
*/
createCategoryRules(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: RulesRequest & CustomRequestBody;
}>): Promise;
/**
* Create all rules and conditions within the catalog and category. This deletes any existing rules and conditions for that catalog and category combination, and recreates them based on the new request. The LocaleID, PrimaryFlag, and ClassificationFlag can be set on any of the individual rules, but they apply to the entire ruleset. For simplicity, those values can be provided with one of the rules. If they are provided with multiple rules, then they must all have the same value for all rules or it could produce undesired effects.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type RulesResult otherwise.
*/
createCategoryRules(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: RulesRequest & CustomRequestBody;
}>, rawResponse?: T): Promise;
/**
* Create or update a condition.
*
* If you would like to get a raw Response object use the other createOrUpdateCategoryRuleCondition function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.conditionId - The Id of the condition.
* @param options.parameters.ruleId - The Id of the rule
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
*
* @returns A promise of type Condition.
*/
createOrUpdateCategoryRuleCondition(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
conditionId: string;
ruleId: string;
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: Condition & CustomRequestBody;
}>): Promise;
/**
* Create or update a condition.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.conditionId - The Id of the condition.
* @param options.parameters.ruleId - The Id of the rule
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type Condition otherwise.
*/
createOrUpdateCategoryRuleCondition(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
conditionId: string;
ruleId: string;
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: Condition & CustomRequestBody;
}>, rawResponse?: T): Promise;
/**
* Create or update a rule.
*
* If you would like to get a raw Response object use the other createUpdateRule function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.ruleId - The Id of the rule
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
*
* @returns A promise of type Rule.
*/
createUpdateRule(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
ruleId: string;
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: RuleRequest & CustomRequestBody;
}>): Promise;
/**
* Create or update a rule.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.ruleId - The Id of the rule
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type Rule otherwise.
*/
createUpdateRule(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
ruleId: string;
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: RuleRequest & CustomRequestBody;
}>, rawResponse?: T): Promise;
/**
* Delete a category by catalog ID and category ID.
*
* If you would like to get a raw Response object use the other deleteCategoryFromCatalog function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
*
* @returns A promise of type void.
*/
deleteCategoryFromCatalog(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>): Promise;
/**
* Delete a category by catalog ID and category ID.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type void otherwise.
*/
deleteCategoryFromCatalog(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>, rawResponse?: T): Promise;
/**
* Delete a condition.
*
* If you would like to get a raw Response object use the other deleteCategoryRuleCondition function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.conditionId - The Id of the condition.
* @param options.parameters.ruleId - The Id of the rule
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
*
* @returns A promise of type void.
*/
deleteCategoryRuleCondition(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
conditionId: string;
ruleId: string;
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>): Promise;
/**
* Delete a condition.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.conditionId - The Id of the condition.
* @param options.parameters.ruleId - The Id of the rule
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type void otherwise.
*/
deleteCategoryRuleCondition(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
conditionId: string;
ruleId: string;
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>, rawResponse?: T): Promise;
/**
* Deletes all conditions for a given rule, catalog, and category.
*
* If you would like to get a raw Response object use the other deleteCategoryRuleConditions function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.ruleId - The Id of the rule
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
*
* @returns A promise of type void.
*/
deleteCategoryRuleConditions(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
ruleId: string;
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>): Promise;
/**
* Deletes all conditions for a given rule, catalog, and category.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.ruleId - The Id of the rule
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type void otherwise.
*/
deleteCategoryRuleConditions(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
ruleId: string;
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>, rawResponse?: T): Promise;
/**
* Delete all rules and conditions for the given catalog and category.
*
* If you would like to get a raw Response object use the other deleteCategoryRules function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
*
* @returns A promise of type void.
*/
deleteCategoryRules(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>): Promise;
/**
* Delete all rules and conditions for the given catalog and category.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type void otherwise.
*/
deleteCategoryRules(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>, rawResponse?: T): Promise;
/**
* Delete a rule.
*
* If you would like to get a raw Response object use the other deleteRule function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.ruleId - The Id of the rule
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
*
* @returns A promise of type void.
*/
deleteRule(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
ruleId: string;
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>): Promise;
/**
* Delete a rule.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.ruleId - The Id of the rule
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type void otherwise.
*/
deleteRule(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
ruleId: string;
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>, rawResponse?: T): Promise;
/**
* Retrieve a category product assignment.
For example, if we have products A, B, C at positions 1, 2, 7.5, and we delete the assignment for product B,
the result is products A, B, C at positions 1, null, 7.5.
*
* If you would like to get a raw Response object use the other getAssignedProductFromCategory function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.productId - The ID (SKU) of the requested product to assign.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
*
* @returns A promise of type CategoryProductAssignment.
*/
getAssignedProductFromCategory(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
productId: string;
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>): Promise;
/**
* Retrieve a category product assignment.
For example, if we have products A, B, C at positions 1, 2, 7.5, and we delete the assignment for product B,
the result is products A, B, C at positions 1, null, 7.5.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.productId - The ID (SKU) of the requested product to assign.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type CategoryProductAssignment otherwise.
*/
getAssignedProductFromCategory(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
productId: string;
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>, rawResponse?: T): Promise;
/**
* Gets the catalog with the specified information.
*
* If you would like to get a raw Response object use the other getCatalog function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
*
* @returns A promise of type Catalog.
*/
getCatalog(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>): Promise;
/**
* Gets the catalog with the specified information.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type Catalog otherwise.
*/
getCatalog(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>, rawResponse?: T): Promise;
/**
* Get the list of catalog IDs with no filtering.
*
* If you would like to get a raw Response object use the other getCatalogs function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.parameters.limit - Maximum records to retrieve per request, not to exceed 50. Defaults to 25.
* @param options.parameters.offset - Used to retrieve the results based on a particular resource offset.
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
*
* @returns A promise of type Catalogs.
*/
getCatalogs(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
organizationId: string;
limit?: number;
offset?: number;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>): Promise;
/**
* Get the list of catalog IDs with no filtering.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.parameters.limit - Maximum records to retrieve per request, not to exceed 50. Defaults to 25.
* @param options.parameters.offset - Used to retrieve the results based on a particular resource offset.
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type Catalogs otherwise.
*/
getCatalogs(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
organizationId: string;
limit?: number;
offset?: number;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>, rawResponse?: T): Promise;
/**
* Get all categories with no filtering.
*
* If you would like to get a raw Response object use the other getCategoriesFromCatalog function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.parameters.limit - Maximum records to retrieve per request, not to exceed 50. Defaults to 25.
* @param options.parameters.offset - Used to retrieve the results based on a particular resource offset.
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
*
* @returns A promise of type Categories.
*/
getCategoriesFromCatalog(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
catalogId: string;
organizationId: string;
limit?: number;
offset?: number;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>): Promise;
/**
* Get all categories with no filtering.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.parameters.limit - Maximum records to retrieve per request, not to exceed 50. Defaults to 25.
* @param options.parameters.offset - Used to retrieve the results based on a particular resource offset.
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type Categories otherwise.
*/
getCategoriesFromCatalog(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
catalogId: string;
organizationId: string;
limit?: number;
offset?: number;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>, rawResponse?: T): Promise;
/**
* Get the status of the latest categorization job, which could be evaluation or execution. For evaluation, the matched count and a paginated list of product IDs are returned. For execution, the counts of the products that are assigned or unassigned are returned.
*
* If you would like to get a raw Response object use the other getCategorizationStatus function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.parameters.limit - Maximum records to retrieve per request, not to exceed the maximum defined. A limit must be at least 1 so at least one record is returned (if any match the criteria).
* @param options.parameters.offset - The zero-based index of the first hit/data to include in the result.
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
*
* @returns A promise of type ExecutionJobStatusResult.
*/
getCategorizationStatus(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
categoryId: string;
catalogId: string;
organizationId: string;
limit?: number;
offset?: number;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>): Promise;
/**
* Get the status of the latest categorization job, which could be evaluation or execution. For evaluation, the matched count and a paginated list of product IDs are returned. For execution, the counts of the products that are assigned or unassigned are returned.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.parameters.limit - Maximum records to retrieve per request, not to exceed the maximum defined. A limit must be at least 1 so at least one record is returned (if any match the criteria).
* @param options.parameters.offset - The zero-based index of the first hit/data to include in the result.
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type ExecutionJobStatusResult otherwise.
*/
getCategorizationStatus(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
categoryId: string;
catalogId: string;
organizationId: string;
limit?: number;
offset?: number;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>, rawResponse?: T): Promise;
/**
* By default, the server
returns the first level of sub-categories, but you can specify another level by setting the levels
parameter. Using a large value for levels can cause performance
issues with large and deep category trees.
*
* If you would like to get a raw Response object use the other getCategoryFromCatalog function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.parameters.levels - The level number.
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
*
* @returns A promise of type Category.
*/
getCategoryFromCatalog(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
categoryId: string;
catalogId: string;
organizationId: string;
levels?: number;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>): Promise;
/**
* By default, the server
returns the first level of sub-categories, but you can specify another level by setting the levels
parameter. Using a large value for levels can cause performance
issues with large and deep category trees.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.parameters.levels - The level number.
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type Category otherwise.
*/
getCategoryFromCatalog(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
categoryId: string;
catalogId: string;
organizationId: string;
levels?: number;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>, rawResponse?: T): Promise;
/**
* Get a condition by ID.
*
* If you would like to get a raw Response object use the other getCategoryRuleCondition function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.conditionId - The Id of the condition.
* @param options.parameters.ruleId - The Id of the rule
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
*
* @returns A promise of type Condition.
*/
getCategoryRuleCondition(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
conditionId: string;
ruleId: string;
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>): Promise;
/**
* Get a condition by ID.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.conditionId - The Id of the condition.
* @param options.parameters.ruleId - The Id of the rule
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type Condition otherwise.
*/
getCategoryRuleCondition(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
conditionId: string;
ruleId: string;
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>, rawResponse?: T): Promise;
/**
* Get the conditions for a given rule, catalog and category.
*
* If you would like to get a raw Response object use the other getCategoryRuleConditions function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.ruleId - The Id of the rule
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
*
* @returns A promise of type ConditionsResult.
*/
getCategoryRuleConditions(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
ruleId: string;
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>): Promise;
/**
* Get the conditions for a given rule, catalog and category.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.ruleId - The Id of the rule
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type ConditionsResult otherwise.
*/
getCategoryRuleConditions(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
ruleId: string;
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>, rawResponse?: T): Promise;
/**
* Get all rules for the given catalog and category.
*
* If you would like to get a raw Response object use the other getCategoryRules function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
*
* @returns A promise of type RulesResult.
*/
getCategoryRules(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>): Promise;
/**
* Get all rules for the given catalog and category.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type RulesResult otherwise.
*/
getCategoryRules(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>, rawResponse?: T): Promise;
/**
* Get the list of excluded products for a given catalog and category.
*
* If you would like to get a raw Response object use the other getExclusionList function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
*
* @returns A promise of type ExcludedProductsResult.
*/
getExclusionList(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>): Promise;
/**
* Get the list of excluded products for a given catalog and category.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type ExcludedProductsResult otherwise.
*/
getExclusionList(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>, rawResponse?: T): Promise;
/**
* Get a rule by ID.
*
* If you would like to get a raw Response object use the other getRuleById function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.ruleId - The Id of the rule
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
*
* @returns A promise of type Rule.
*/
getRuleById(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
ruleId: string;
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>): Promise;
/**
* Get a rule by ID.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.ruleId - The Id of the rule
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type Rule otherwise.
*/
getRuleById(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
ruleId: string;
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>, rawResponse?: T): Promise;
/**
* Delete products from the excluded products list for a catalog category.
*
* If you would like to get a raw Response object use the other removeProductsFromExclusionList function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
*
* @returns A promise of type void.
*/
removeProductsFromExclusionList(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: ExcludedProductRequest & CustomRequestBody;
}>): Promise;
/**
* Delete products from the excluded products list for a catalog category.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type void otherwise.
*/
removeProductsFromExclusionList(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: ExcludedProductRequest & CustomRequestBody;
}>, rawResponse?: T): Promise;
/**
* Submit a job to evaluate or execute the rules. The evaluation returns a set of matching products based on the rules and conditions. The execution categorizes the products based on the evaluated results.
*
* If you would like to get a raw Response object use the other runCategoryRules function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
*
* @returns A promise of type void.
*/
runCategoryRules(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: ExecutionRequest & CustomRequestBody;
}>): Promise;
/**
* Submit a job to evaluate or execute the rules. The evaluation returns a set of matching products based on the rules and conditions. The execution categorizes the products based on the evaluated results.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type void otherwise.
*/
runCategoryRules(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: ExecutionRequest & CustomRequestBody;
}>, rawResponse?: T): Promise;
/**
* Search for catalogs.
The query attribute specifies a complex query that can be used to narrow down the search with the following searchable attributes:
| Attribute | Type |
|-----------|--------|
|id | String |
|name | String |
|description | String |
|creationDate | DateTime |
There are two additional fields that can be used as search filters. They are not attributes in the CatalogWO object,
but they can be used as filters to query catalogs based on site assignments.
| Attribute | Type |
|-----------|--------|
|isMasterCatalog | Boolean |
|isStorefrontCatalog | Boolean |
|description | String |
|creationDate | DateTime |
|online | Boolean |
|position | Double|
When you use isMasterCatalog in the search query, catalogs without any site assignments are returned.
When you use isStorefrontCatalog in the search query, catalogs with one or more site assignments are returned.
The output of the query can also be sorted with the following sortable attributes:
| Attribute | Type |
|-----------|--------|
|id | String |
|name | String |
|description | String |
|creationDate | DateTime |
*
* If you would like to get a raw Response object use the other searchCatalogs function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
*
* @returns A promise of type CatalogSearchResult.
*/
searchCatalogs(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: CatalogSearchRequest & CustomRequestBody;
}>): Promise;
/**
* Search for catalogs.
The query attribute specifies a complex query that can be used to narrow down the search with the following searchable attributes:
| Attribute | Type |
|-----------|--------|
|id | String |
|name | String |
|description | String |
|creationDate | DateTime |
There are two additional fields that can be used as search filters. They are not attributes in the CatalogWO object,
but they can be used as filters to query catalogs based on site assignments.
| Attribute | Type |
|-----------|--------|
|isMasterCatalog | Boolean |
|isStorefrontCatalog | Boolean |
|description | String |
|creationDate | DateTime |
|online | Boolean |
|position | Double|
When you use isMasterCatalog in the search query, catalogs without any site assignments are returned.
When you use isStorefrontCatalog in the search query, catalogs with one or more site assignments are returned.
The output of the query can also be sorted with the following sortable attributes:
| Attribute | Type |
|-----------|--------|
|id | String |
|name | String |
|description | String |
|creationDate | DateTime |
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type CatalogSearchResult otherwise.
*/
searchCatalogs(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: CatalogSearchRequest & CustomRequestBody;
}>, rawResponse?: T): Promise;
/**
* Search for catalog categories.
By default, the server returns the first level of subcategories,
but you can specify another level by setting the levels parameter.
Subcategories are sorted by category position, then by categoryId.
Using a large value for levels can cause performance
issues with large and deep category trees.
The query attribute specifies a complex query that can be used to narrow down the search with the following searchable attributes:
| Attribute | Type |
|-----------|--------|
|id | String |
|name | String |
|description | String |
|creationDate | DateTime |
|online | Boolean |
|catalogId | String|
The output of the query can also be sorted with the following sortable attributes:
| Attribute | Type |
|-----------|--------|
|id | String |
|name | String |
|description | String |
|creationDate | DateTime |
|online | Boolean |
|position | Double|
If no sorting clause is provided, categories are sorted by categoryId. If sorting clause(s) are provided, categoryId is used as a tiebreaker.
*
* If you would like to get a raw Response object use the other searchCategories function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.parameters.levels - The level number.
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
*
* @returns A promise of type CategorySearchResult.
*/
searchCategories(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
organizationId: string;
levels?: number;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: CategorySearchRequest & CustomRequestBody;
}>): Promise;
/**
* Search for catalog categories.
By default, the server returns the first level of subcategories,
but you can specify another level by setting the levels parameter.
Subcategories are sorted by category position, then by categoryId.
Using a large value for levels can cause performance
issues with large and deep category trees.
The query attribute specifies a complex query that can be used to narrow down the search with the following searchable attributes:
| Attribute | Type |
|-----------|--------|
|id | String |
|name | String |
|description | String |
|creationDate | DateTime |
|online | Boolean |
|catalogId | String|
The output of the query can also be sorted with the following sortable attributes:
| Attribute | Type |
|-----------|--------|
|id | String |
|name | String |
|description | String |
|creationDate | DateTime |
|online | Boolean |
|position | Double|
If no sorting clause is provided, categories are sorted by categoryId. If sorting clause(s) are provided, categoryId is used as a tiebreaker.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.parameters.levels - The level number.
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type CategorySearchResult otherwise.
*/
searchCategories(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
organizationId: string;
levels?: number;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: CategorySearchRequest & CustomRequestBody;
}>, rawResponse?: T): Promise;
/**
* Search for catalog categories in the scope of a catalog.
By default, the server returns the first level of subcategories,
but you can specify another level by setting the levels parameter.
Subcategories are sorted by category position, then by categoryId.
Using a large value for levels can cause performance
issues with large and deep category trees.
The query attribute specifies a complex query that can be used to narrow down the search with the following searchable attributes:
| Attribute | Type |
|-----------|--------|
|id | String |
|name | String |
|description | String |
|creationDate | DateTime |
|online | Boolean |
|parentCategoryId | String|
The output of the query can also be sorted with the following sortable attributes:
| Attribute | Type |
|-----------|--------|
|id | String |
|name | String |
|description | String |
|creationDate | DateTime |
|online | Boolean |
|position | Double|
If no sorting clause is provided, categories are sorted by categoryId. If sorting clause(s) are provided, categoryId is used as a tiebreaker.
*
* If you would like to get a raw Response object use the other searchCategoriesInCatalog function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.parameters.levels - The level number.
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
*
* @returns A promise of type CategorySearchResult.
*/
searchCategoriesInCatalog(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
catalogId: string;
organizationId: string;
levels?: number;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: CatalogCategorySearchRequest & CustomRequestBody;
}>): Promise;
/**
* Search for catalog categories in the scope of a catalog.
By default, the server returns the first level of subcategories,
but you can specify another level by setting the levels parameter.
Subcategories are sorted by category position, then by categoryId.
Using a large value for levels can cause performance
issues with large and deep category trees.
The query attribute specifies a complex query that can be used to narrow down the search with the following searchable attributes:
| Attribute | Type |
|-----------|--------|
|id | String |
|name | String |
|description | String |
|creationDate | DateTime |
|online | Boolean |
|parentCategoryId | String|
The output of the query can also be sorted with the following sortable attributes:
| Attribute | Type |
|-----------|--------|
|id | String |
|name | String |
|description | String |
|creationDate | DateTime |
|online | Boolean |
|position | Double|
If no sorting clause is provided, categories are sorted by categoryId. If sorting clause(s) are provided, categoryId is used as a tiebreaker.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.parameters.levels - The level number.
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type CategorySearchResult otherwise.
*/
searchCategoriesInCatalog(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
catalogId: string;
organizationId: string;
levels?: number;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: CatalogCategorySearchRequest & CustomRequestBody;
}>, rawResponse?: T): Promise;
/**
* The query attribute specifies a complex query that can be used to narrow down the search.
Searchable attributes:
| Attribute | Type |
|-----------|--------|
| productId| String |
| productName | String |
| onlineFlag | Boolean |
| searchable | Boolean |
| validFrom | DateTime |
| validTo | DateTime |
| creationDate | DateTime |
Sortable Fields:
| Attribute | Type |
|-----------|--------|
| productId| String |
| productName | String |
| position | Double |
| creationDate | DateTime |
Expansions that can be applied for the search request:
- product_base - String
The product_base expand enables retrieval of the following basic product information:
| Attribute | Type | Function |
|-----------|--------|-----|
| none | String | Does not fetch any expanded information.
| product_images| String | Fetch preview image and image groups specified for the given product. |
| product_all_images | String | Fetch preview image, image groups specified for the product, and variant and variation group images. |
| product_variations | String | Fetch variations-related information. |
| product_availability | String | Fetch availability-related information. |
| product_categories | String | Fetch category-related information. |
| product_prices | String | Fetch price-related information. |
| product_options | String | Fetch options-related information. |
| product_all | String | Fetch all expanded information. This is the default used when no expand value is included in the request.|
Note: productAll includes the following:
- brand
- ean
- link
- longDescription
- manufacturerName
- manufacturerSku
- name
- pageDescription
- pageKeywords
- pageTitle
- searchable
- shortDescription
- type
- unit
- upc
*
* If you would like to get a raw Response object use the other searchProductsAssignedToCategory function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.parameters.siteId - The site context.
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
*
* @returns A promise of type CategoryProductAssignmentSearchResult.
*/
searchProductsAssignedToCategory(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
categoryId: string;
catalogId: string;
organizationId: string;
siteId?: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: CategoryProductAssignmentSearchRequest & CustomRequestBody;
}>): Promise;
/**
* The query attribute specifies a complex query that can be used to narrow down the search.
Searchable attributes:
| Attribute | Type |
|-----------|--------|
| productId| String |
| productName | String |
| onlineFlag | Boolean |
| searchable | Boolean |
| validFrom | DateTime |
| validTo | DateTime |
| creationDate | DateTime |
Sortable Fields:
| Attribute | Type |
|-----------|--------|
| productId| String |
| productName | String |
| position | Double |
| creationDate | DateTime |
Expansions that can be applied for the search request:
- product_base - String
The product_base expand enables retrieval of the following basic product information:
| Attribute | Type | Function |
|-----------|--------|-----|
| none | String | Does not fetch any expanded information.
| product_images| String | Fetch preview image and image groups specified for the given product. |
| product_all_images | String | Fetch preview image, image groups specified for the product, and variant and variation group images. |
| product_variations | String | Fetch variations-related information. |
| product_availability | String | Fetch availability-related information. |
| product_categories | String | Fetch category-related information. |
| product_prices | String | Fetch price-related information. |
| product_options | String | Fetch options-related information. |
| product_all | String | Fetch all expanded information. This is the default used when no expand value is included in the request.|
Note: productAll includes the following:
- brand
- ean
- link
- longDescription
- manufacturerName
- manufacturerSku
- name
- pageDescription
- pageKeywords
- pageTitle
- searchable
- shortDescription
- type
- unit
- upc
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.parameters.siteId - The site context.
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type CategoryProductAssignmentSearchResult otherwise.
*/
searchProductsAssignedToCategory(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
categoryId: string;
catalogId: string;
organizationId: string;
siteId?: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: CategoryProductAssignmentSearchRequest & CustomRequestBody;
}>, rawResponse?: T): Promise;
/**
* Remove a category product assignment.
For example, if we have products A, B, C at positions 1, 2, 7.5, and we delete the assignment for product B,
the result is products A, B, C at positions 1, null, 7.5.
*
* If you would like to get a raw Response object use the other unassignProductFromCategory function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.productId - The ID (SKU) of the requested product to assign.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
*
* @returns A promise of type void.
*/
unassignProductFromCategory(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
productId: string;
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>): Promise;
/**
* Remove a category product assignment.
For example, if we have products A, B, C at positions 1, 2, 7.5, and we delete the assignment for product B,
the result is products A, B, C at positions 1, null, 7.5.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.productId - The ID (SKU) of the requested product to assign.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type void otherwise.
*/
unassignProductFromCategory(options?: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
productId: string;
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
}>, rawResponse?: T): Promise;
/**
* Update the catalog with the specified information.
*
* If you would like to get a raw Response object use the other updateCatalog function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
*
* @returns A promise of type Catalog.
*/
updateCatalog(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: Catalog & CustomRequestBody;
}>): Promise;
/**
* Update the catalog with the specified information.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type Catalog otherwise.
*/
updateCatalog(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: Catalog & CustomRequestBody;
}>, rawResponse?: T): Promise;
/**
* Update a catalog category using the information provided.
*
* If you would like to get a raw Response object use the other updateCategoryInCatalog function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
*
* @returns A promise of type Category.
*/
updateCategoryInCatalog(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: Category & CustomRequestBody;
}>): Promise;
/**
* Update a catalog category using the information provided.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type Category otherwise.
*/
updateCategoryInCatalog(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: Category & CustomRequestBody;
}>, rawResponse?: T): Promise;
/**
* Update the category product assignment with the specified information, such as position.
Because the assigned position n is a normalized target position, we verify that the product is assigned
to a position that maintains position order.
For example, if we have products A, B, C, D at positions 1, 2, 3, 4 and we update product A with a new position of 3,
the end result is products B, C, A, D with position order 1, 2, 3, 4. If we then update product C to no position,
the end result is products B, A, D, C with position order 1, 2, 3, null.
If there are n existing positioned assignments, updating a product to position >= n results in a new assignment with a position that maintains the position order.
*
* If you would like to get a raw Response object use the other updateProductCategoryAssignment function.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.productId - The ID (SKU) of the requested product to assign.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
*
* @returns A promise of type CategoryProductAssignment.
*/
updateProductCategoryAssignment(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
productId: string;
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: CategoryProductAssignment & CustomRequestBody;
}>): Promise;
/**
* Update the category product assignment with the specified information, such as position.
Because the assigned position n is a normalized target position, we verify that the product is assigned
to a position that maintains position order.
For example, if we have products A, B, C, D at positions 1, 2, 3, 4 and we update product A with a new position of 3,
the end result is products B, C, A, D with position order 1, 2, 3, 4. If we then update product C to no position,
the end result is products B, A, D, C with position order 1, 2, 3, null.
If there are n existing positioned assignments, updating a product to position >= n results in a new assignment with a position that maintains the position order.
*
* @param options - An object containing the options for this method.
* @param options.parameters - An object containing the parameters for this method.
* @param options.parameters.productId - The ID (SKU) of the requested product to assign.
* @param options.parameters.categoryId - The ID of the category to be created.
* @param options.parameters.catalogId - The ID of the requested catalog.
* @param options.parameters.organizationId - An identifier for the organization the request is being made by
* @param options.retrySettings - Retry options for the `node-retry` package
* @param options.fetchOptions - Fetch options for the `make-fetch-happen` package
* @param options.headers - An object literal of key value pairs of the headers to be sent with this request.
* @param options.body - The data to send as the request body.
* @param rawResponse - Set to true to return entire Response object instead of DTO.
*
* @returns A promise of type Response if rawResponse is true, a promise of type CategoryProductAssignment otherwise.
*/
updateProductCategoryAssignment(options: RequireParametersUnlessAllAreOptional<{
parameters?: CompositeParameters<{
productId: string;
categoryId: string;
catalogId: string;
organizationId: string;
} & QueryParameters, CommonParameters>;
retrySettings?: OperationOptions;
fetchOptions?: RequestInit;
headers?: {
[key: string]: string;
};
body: CategoryProductAssignment & CustomRequestBody;
}>, rawResponse?: T): Promise;
}