/**
* Klaviyo API
* The Klaviyo REST API. Please visit https://developers.klaviyo.com for more details.
*
* Contact: developers@klaviyo.com
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
const axios = require('axios');
import {AxiosRequestConfig, AxiosResponse} from "axios";
import FormData from 'form-data'
/* tslint:disable:no-unused-locals */
import { CatalogCategoryCreateJobCreateQuery } from '../model/catalogCategoryCreateJobCreateQuery';
import { CatalogCategoryCreateQuery } from '../model/catalogCategoryCreateQuery';
import { CatalogCategoryDeleteJobCreateQuery } from '../model/catalogCategoryDeleteJobCreateQuery';
import { CatalogCategoryItemOp } from '../model/catalogCategoryItemOp';
import { CatalogCategoryUpdateJobCreateQuery } from '../model/catalogCategoryUpdateJobCreateQuery';
import { CatalogCategoryUpdateQuery } from '../model/catalogCategoryUpdateQuery';
import { CatalogItemCategoryOp } from '../model/catalogItemCategoryOp';
import { CatalogItemCreateJobCreateQuery } from '../model/catalogItemCreateJobCreateQuery';
import { CatalogItemCreateQuery } from '../model/catalogItemCreateQuery';
import { CatalogItemDeleteJobCreateQuery } from '../model/catalogItemDeleteJobCreateQuery';
import { CatalogItemUpdateJobCreateQuery } from '../model/catalogItemUpdateJobCreateQuery';
import { CatalogItemUpdateQuery } from '../model/catalogItemUpdateQuery';
import { CatalogVariantCreateJobCreateQuery } from '../model/catalogVariantCreateJobCreateQuery';
import { CatalogVariantCreateQuery } from '../model/catalogVariantCreateQuery';
import { CatalogVariantDeleteJobCreateQuery } from '../model/catalogVariantDeleteJobCreateQuery';
import { CatalogVariantUpdateJobCreateQuery } from '../model/catalogVariantUpdateJobCreateQuery';
import { CatalogVariantUpdateQuery } from '../model/catalogVariantUpdateQuery';
import { GetAccounts4XXResponse } from '../model/getAccounts4XXResponse';
import { GetCatalogCategoryCreateJobResponseCollectionCompoundDocument } from '../model/getCatalogCategoryCreateJobResponseCollectionCompoundDocument';
import { GetCatalogCategoryCreateJobResponseCompoundDocument } from '../model/getCatalogCategoryCreateJobResponseCompoundDocument';
import { GetCatalogCategoryDeleteJobResponse } from '../model/getCatalogCategoryDeleteJobResponse';
import { GetCatalogCategoryDeleteJobResponseCollection } from '../model/getCatalogCategoryDeleteJobResponseCollection';
import { GetCatalogCategoryItemsRelationshipsResponseCollection } from '../model/getCatalogCategoryItemsRelationshipsResponseCollection';
import { GetCatalogCategoryResponse } from '../model/getCatalogCategoryResponse';
import { GetCatalogCategoryResponseCollection } from '../model/getCatalogCategoryResponseCollection';
import { GetCatalogCategoryUpdateJobResponseCollectionCompoundDocument } from '../model/getCatalogCategoryUpdateJobResponseCollectionCompoundDocument';
import { GetCatalogCategoryUpdateJobResponseCompoundDocument } from '../model/getCatalogCategoryUpdateJobResponseCompoundDocument';
import { GetCatalogItemCategoriesRelationshipsResponseCollection } from '../model/getCatalogItemCategoriesRelationshipsResponseCollection';
import { GetCatalogItemCreateJobResponseCollectionCompoundDocument } from '../model/getCatalogItemCreateJobResponseCollectionCompoundDocument';
import { GetCatalogItemCreateJobResponseCompoundDocument } from '../model/getCatalogItemCreateJobResponseCompoundDocument';
import { GetCatalogItemDeleteJobResponse } from '../model/getCatalogItemDeleteJobResponse';
import { GetCatalogItemDeleteJobResponseCollection } from '../model/getCatalogItemDeleteJobResponseCollection';
import { GetCatalogItemResponseCollectionCompoundDocument } from '../model/getCatalogItemResponseCollectionCompoundDocument';
import { GetCatalogItemResponseCompoundDocument } from '../model/getCatalogItemResponseCompoundDocument';
import { GetCatalogItemUpdateJobResponseCollectionCompoundDocument } from '../model/getCatalogItemUpdateJobResponseCollectionCompoundDocument';
import { GetCatalogItemUpdateJobResponseCompoundDocument } from '../model/getCatalogItemUpdateJobResponseCompoundDocument';
import { GetCatalogItemVariantsRelationshipsResponseCollection } from '../model/getCatalogItemVariantsRelationshipsResponseCollection';
import { GetCatalogVariantCreateJobResponseCollectionCompoundDocument } from '../model/getCatalogVariantCreateJobResponseCollectionCompoundDocument';
import { GetCatalogVariantCreateJobResponseCompoundDocument } from '../model/getCatalogVariantCreateJobResponseCompoundDocument';
import { GetCatalogVariantDeleteJobResponse } from '../model/getCatalogVariantDeleteJobResponse';
import { GetCatalogVariantDeleteJobResponseCollection } from '../model/getCatalogVariantDeleteJobResponseCollection';
import { GetCatalogVariantResponse } from '../model/getCatalogVariantResponse';
import { GetCatalogVariantResponseCollection } from '../model/getCatalogVariantResponseCollection';
import { GetCatalogVariantUpdateJobResponseCollectionCompoundDocument } from '../model/getCatalogVariantUpdateJobResponseCollectionCompoundDocument';
import { GetCatalogVariantUpdateJobResponseCompoundDocument } from '../model/getCatalogVariantUpdateJobResponseCompoundDocument';
import { PatchCatalogCategoryResponse } from '../model/patchCatalogCategoryResponse';
import { PatchCatalogItemResponse } from '../model/patchCatalogItemResponse';
import { PatchCatalogVariantResponse } from '../model/patchCatalogVariantResponse';
import { PostCatalogCategoryCreateJobResponse } from '../model/postCatalogCategoryCreateJobResponse';
import { PostCatalogCategoryDeleteJobResponse } from '../model/postCatalogCategoryDeleteJobResponse';
import { PostCatalogCategoryResponse } from '../model/postCatalogCategoryResponse';
import { PostCatalogCategoryUpdateJobResponse } from '../model/postCatalogCategoryUpdateJobResponse';
import { PostCatalogItemCreateJobResponse } from '../model/postCatalogItemCreateJobResponse';
import { PostCatalogItemDeleteJobResponse } from '../model/postCatalogItemDeleteJobResponse';
import { PostCatalogItemResponse } from '../model/postCatalogItemResponse';
import { PostCatalogItemUpdateJobResponse } from '../model/postCatalogItemUpdateJobResponse';
import { PostCatalogVariantCreateJobResponse } from '../model/postCatalogVariantCreateJobResponse';
import { PostCatalogVariantDeleteJobResponse } from '../model/postCatalogVariantDeleteJobResponse';
import { PostCatalogVariantResponse } from '../model/postCatalogVariantResponse';
import { PostCatalogVariantUpdateJobResponse } from '../model/postCatalogVariantUpdateJobResponse';
import { ServerBISSubscriptionCreateQuery } from '../model/serverBISSubscriptionCreateQuery';
import { ObjectSerializer } from '../model/models';
import {RequestFile, queryParamPreProcessor, RetryWithExponentialBackoff, Session} from './apis';
let defaultBasePath = 'https://a.klaviyo.com';
// ===============================================
// This file is autogenerated - Please do not edit
// ===============================================
export class CatalogsApi {
session: Session
protected _basePath = defaultBasePath;
protected _defaultHeaders : any = {};
protected _useQuerystring : boolean = false;
constructor(session: Session){
this.session = session
}
set useQuerystring(value: boolean) {
this._useQuerystring = value;
}
set basePath(basePath: string) {
this._basePath = basePath;
}
set defaultHeaders(defaultHeaders: any) {
this._defaultHeaders = defaultHeaders;
}
get defaultHeaders() {
return this._defaultHeaders;
}
get basePath() {
return this._basePath;
}
/**
* Create a new catalog category relationship for the given item ID.
*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `catalogs:write`
* @summary Add Categories to Catalog Item
* @param id The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.* @param catalogItemCategoryOp
*/
public async addCategoriesToCatalogItem (id: string, catalogItemCategoryOp: CatalogItemCategoryOp, ): Promise<{ response: AxiosResponse; body?: any; }> {
const localVarPath = this.basePath + '/api/catalog-items/{id}/relationships/categories'
.replace('{' + 'id' + '}', encodeURIComponent(String(id)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'id' is not null or undefined
if (id === null || id === undefined) {
throw new Error('Required parameter id was null or undefined when calling addCategoriesToCatalogItem.');
}
// verify required parameter 'catalogItemCategoryOp' is not null or undefined
if (catalogItemCategoryOp === null || catalogItemCategoryOp === undefined) {
throw new Error('Required parameter catalogItemCategoryOp was null or undefined when calling addCategoriesToCatalogItem.');
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'POST',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
data: ObjectSerializer.serialize(catalogItemCategoryOp, "CatalogItemCategoryOp")
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body?: any; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Create a new item relationship for the given category ID.
*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `catalogs:write`
* @summary Add Items to Catalog Category
* @param id The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.* @param catalogCategoryItemOp
*/
public async addItemsToCatalogCategory (id: string, catalogCategoryItemOp: CatalogCategoryItemOp, ): Promise<{ response: AxiosResponse; body?: any; }> {
const localVarPath = this.basePath + '/api/catalog-categories/{id}/relationships/items'
.replace('{' + 'id' + '}', encodeURIComponent(String(id)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'id' is not null or undefined
if (id === null || id === undefined) {
throw new Error('Required parameter id was null or undefined when calling addItemsToCatalogCategory.');
}
// verify required parameter 'catalogCategoryItemOp' is not null or undefined
if (catalogCategoryItemOp === null || catalogCategoryItemOp === undefined) {
throw new Error('Required parameter catalogCategoryItemOp was null or undefined when calling addItemsToCatalogCategory.');
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'POST',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
data: ObjectSerializer.serialize(catalogCategoryItemOp, "CatalogCategoryItemOp")
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body?: any; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Create a catalog category bulk create job to create a batch of catalog categories. Accepts up to 100 catalog categories per request. The maximum allowed payload size is 5MB. The maximum number of jobs in progress at one time is 500.
*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `catalogs:write`
* @summary Bulk Create Catalog Categories
* @param catalogCategoryCreateJobCreateQuery
*/
public async bulkCreateCatalogCategories (catalogCategoryCreateJobCreateQuery: CatalogCategoryCreateJobCreateQuery, ): Promise<{ response: AxiosResponse; body: PostCatalogCategoryCreateJobResponse; }> {
const localVarPath = this.basePath + '/api/catalog-category-bulk-create-jobs';
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'catalogCategoryCreateJobCreateQuery' is not null or undefined
if (catalogCategoryCreateJobCreateQuery === null || catalogCategoryCreateJobCreateQuery === undefined) {
throw new Error('Required parameter catalogCategoryCreateJobCreateQuery was null or undefined when calling bulkCreateCatalogCategories.');
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'POST',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
data: ObjectSerializer.serialize(catalogCategoryCreateJobCreateQuery, "CatalogCategoryCreateJobCreateQuery")
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: PostCatalogCategoryCreateJobResponse; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "PostCatalogCategoryCreateJobResponse");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Create a catalog item bulk create job to create a batch of catalog items. Accepts up to 100 catalog items per request. The maximum allowed payload size is 5MB. The maximum number of jobs in progress at one time is 500.
*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `catalogs:write`
* @summary Bulk Create Catalog Items
* @param catalogItemCreateJobCreateQuery
*/
public async bulkCreateCatalogItems (catalogItemCreateJobCreateQuery: CatalogItemCreateJobCreateQuery, ): Promise<{ response: AxiosResponse; body: PostCatalogItemCreateJobResponse; }> {
const localVarPath = this.basePath + '/api/catalog-item-bulk-create-jobs';
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'catalogItemCreateJobCreateQuery' is not null or undefined
if (catalogItemCreateJobCreateQuery === null || catalogItemCreateJobCreateQuery === undefined) {
throw new Error('Required parameter catalogItemCreateJobCreateQuery was null or undefined when calling bulkCreateCatalogItems.');
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'POST',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
data: ObjectSerializer.serialize(catalogItemCreateJobCreateQuery, "CatalogItemCreateJobCreateQuery")
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: PostCatalogItemCreateJobResponse; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "PostCatalogItemCreateJobResponse");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Create a catalog variant bulk create job to create a batch of catalog variants. Accepts up to 100 catalog variants per request. The maximum allowed payload size is 5MB. The maximum number of jobs in progress at one time is 500.
*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `catalogs:write`
* @summary Bulk Create Catalog Variants
* @param catalogVariantCreateJobCreateQuery
*/
public async bulkCreateCatalogVariants (catalogVariantCreateJobCreateQuery: CatalogVariantCreateJobCreateQuery, ): Promise<{ response: AxiosResponse; body: PostCatalogVariantCreateJobResponse; }> {
const localVarPath = this.basePath + '/api/catalog-variant-bulk-create-jobs';
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'catalogVariantCreateJobCreateQuery' is not null or undefined
if (catalogVariantCreateJobCreateQuery === null || catalogVariantCreateJobCreateQuery === undefined) {
throw new Error('Required parameter catalogVariantCreateJobCreateQuery was null or undefined when calling bulkCreateCatalogVariants.');
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'POST',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
data: ObjectSerializer.serialize(catalogVariantCreateJobCreateQuery, "CatalogVariantCreateJobCreateQuery")
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: PostCatalogVariantCreateJobResponse; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "PostCatalogVariantCreateJobResponse");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Create a catalog category bulk delete job to delete a batch of catalog categories. Accepts up to 100 catalog categories per request. The maximum allowed payload size is 5MB. The maximum number of jobs in progress at one time is 500.
*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `catalogs:write`
* @summary Bulk Delete Catalog Categories
* @param catalogCategoryDeleteJobCreateQuery
*/
public async bulkDeleteCatalogCategories (catalogCategoryDeleteJobCreateQuery: CatalogCategoryDeleteJobCreateQuery, ): Promise<{ response: AxiosResponse; body: PostCatalogCategoryDeleteJobResponse; }> {
const localVarPath = this.basePath + '/api/catalog-category-bulk-delete-jobs';
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'catalogCategoryDeleteJobCreateQuery' is not null or undefined
if (catalogCategoryDeleteJobCreateQuery === null || catalogCategoryDeleteJobCreateQuery === undefined) {
throw new Error('Required parameter catalogCategoryDeleteJobCreateQuery was null or undefined when calling bulkDeleteCatalogCategories.');
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'POST',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
data: ObjectSerializer.serialize(catalogCategoryDeleteJobCreateQuery, "CatalogCategoryDeleteJobCreateQuery")
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: PostCatalogCategoryDeleteJobResponse; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "PostCatalogCategoryDeleteJobResponse");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Create a catalog item bulk delete job to delete a batch of catalog items. Accepts up to 100 catalog items per request. The maximum allowed payload size is 5MB. The maximum number of jobs in progress at one time is 500.
*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `catalogs:write`
* @summary Bulk Delete Catalog Items
* @param catalogItemDeleteJobCreateQuery
*/
public async bulkDeleteCatalogItems (catalogItemDeleteJobCreateQuery: CatalogItemDeleteJobCreateQuery, ): Promise<{ response: AxiosResponse; body: PostCatalogItemDeleteJobResponse; }> {
const localVarPath = this.basePath + '/api/catalog-item-bulk-delete-jobs';
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'catalogItemDeleteJobCreateQuery' is not null or undefined
if (catalogItemDeleteJobCreateQuery === null || catalogItemDeleteJobCreateQuery === undefined) {
throw new Error('Required parameter catalogItemDeleteJobCreateQuery was null or undefined when calling bulkDeleteCatalogItems.');
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'POST',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
data: ObjectSerializer.serialize(catalogItemDeleteJobCreateQuery, "CatalogItemDeleteJobCreateQuery")
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: PostCatalogItemDeleteJobResponse; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "PostCatalogItemDeleteJobResponse");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Create a catalog variant bulk delete job to delete a batch of catalog variants. Accepts up to 100 catalog variants per request. The maximum allowed payload size is 5MB. The maximum number of jobs in progress at one time is 500.
*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `catalogs:write`
* @summary Bulk Delete Catalog Variants
* @param catalogVariantDeleteJobCreateQuery
*/
public async bulkDeleteCatalogVariants (catalogVariantDeleteJobCreateQuery: CatalogVariantDeleteJobCreateQuery, ): Promise<{ response: AxiosResponse; body: PostCatalogVariantDeleteJobResponse; }> {
const localVarPath = this.basePath + '/api/catalog-variant-bulk-delete-jobs';
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'catalogVariantDeleteJobCreateQuery' is not null or undefined
if (catalogVariantDeleteJobCreateQuery === null || catalogVariantDeleteJobCreateQuery === undefined) {
throw new Error('Required parameter catalogVariantDeleteJobCreateQuery was null or undefined when calling bulkDeleteCatalogVariants.');
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'POST',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
data: ObjectSerializer.serialize(catalogVariantDeleteJobCreateQuery, "CatalogVariantDeleteJobCreateQuery")
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: PostCatalogVariantDeleteJobResponse; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "PostCatalogVariantDeleteJobResponse");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Create a catalog category bulk update job to update a batch of catalog categories. Accepts up to 100 catalog categories per request. The maximum allowed payload size is 5MB. The maximum number of jobs in progress at one time is 500.
*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `catalogs:write`
* @summary Bulk Update Catalog Categories
* @param catalogCategoryUpdateJobCreateQuery
*/
public async bulkUpdateCatalogCategories (catalogCategoryUpdateJobCreateQuery: CatalogCategoryUpdateJobCreateQuery, ): Promise<{ response: AxiosResponse; body: PostCatalogCategoryUpdateJobResponse; }> {
const localVarPath = this.basePath + '/api/catalog-category-bulk-update-jobs';
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'catalogCategoryUpdateJobCreateQuery' is not null or undefined
if (catalogCategoryUpdateJobCreateQuery === null || catalogCategoryUpdateJobCreateQuery === undefined) {
throw new Error('Required parameter catalogCategoryUpdateJobCreateQuery was null or undefined when calling bulkUpdateCatalogCategories.');
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'POST',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
data: ObjectSerializer.serialize(catalogCategoryUpdateJobCreateQuery, "CatalogCategoryUpdateJobCreateQuery")
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: PostCatalogCategoryUpdateJobResponse; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "PostCatalogCategoryUpdateJobResponse");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Create a catalog item bulk update job to update a batch of catalog items. Accepts up to 100 catalog items per request. The maximum allowed payload size is 5MB. The maximum number of jobs in progress at one time is 500.
*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `catalogs:write`
* @summary Bulk Update Catalog Items
* @param catalogItemUpdateJobCreateQuery
*/
public async bulkUpdateCatalogItems (catalogItemUpdateJobCreateQuery: CatalogItemUpdateJobCreateQuery, ): Promise<{ response: AxiosResponse; body: PostCatalogItemUpdateJobResponse; }> {
const localVarPath = this.basePath + '/api/catalog-item-bulk-update-jobs';
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'catalogItemUpdateJobCreateQuery' is not null or undefined
if (catalogItemUpdateJobCreateQuery === null || catalogItemUpdateJobCreateQuery === undefined) {
throw new Error('Required parameter catalogItemUpdateJobCreateQuery was null or undefined when calling bulkUpdateCatalogItems.');
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'POST',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
data: ObjectSerializer.serialize(catalogItemUpdateJobCreateQuery, "CatalogItemUpdateJobCreateQuery")
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: PostCatalogItemUpdateJobResponse; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "PostCatalogItemUpdateJobResponse");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Create a catalog variant bulk update job to update a batch of catalog variants. Accepts up to 100 catalog variants per request. The maximum allowed payload size is 5MB. The maximum number of jobs in progress at one time is 500.
*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `catalogs:write`
* @summary Bulk Update Catalog Variants
* @param catalogVariantUpdateJobCreateQuery
*/
public async bulkUpdateCatalogVariants (catalogVariantUpdateJobCreateQuery: CatalogVariantUpdateJobCreateQuery, ): Promise<{ response: AxiosResponse; body: PostCatalogVariantUpdateJobResponse; }> {
const localVarPath = this.basePath + '/api/catalog-variant-bulk-update-jobs';
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'catalogVariantUpdateJobCreateQuery' is not null or undefined
if (catalogVariantUpdateJobCreateQuery === null || catalogVariantUpdateJobCreateQuery === undefined) {
throw new Error('Required parameter catalogVariantUpdateJobCreateQuery was null or undefined when calling bulkUpdateCatalogVariants.');
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'POST',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
data: ObjectSerializer.serialize(catalogVariantUpdateJobCreateQuery, "CatalogVariantUpdateJobCreateQuery")
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: PostCatalogVariantUpdateJobResponse; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "PostCatalogVariantUpdateJobResponse");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Subscribe a profile to receive back in stock notifications. Check out [our Back in Stock API guide](https://developers.klaviyo.com/en/docs/how_to_set_up_custom_back_in_stock) for more details. This endpoint is specifically designed to be called from server-side applications. To create subscriptions from client-side contexts, use [POST /client/back-in-stock-subscriptions](https://developers.klaviyo.com/en/reference/create_client_back_in_stock_subscription).
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:write` `profiles:write`
* @summary Create Back In Stock Subscription
* @param serverBISSubscriptionCreateQuery
*/
public async createBackInStockSubscription (serverBISSubscriptionCreateQuery: ServerBISSubscriptionCreateQuery, ): Promise<{ response: AxiosResponse; body?: any; }> {
const localVarPath = this.basePath + '/api/back-in-stock-subscriptions';
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'serverBISSubscriptionCreateQuery' is not null or undefined
if (serverBISSubscriptionCreateQuery === null || serverBISSubscriptionCreateQuery === undefined) {
throw new Error('Required parameter serverBISSubscriptionCreateQuery was null or undefined when calling createBackInStockSubscription.');
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'POST',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
data: ObjectSerializer.serialize(serverBISSubscriptionCreateQuery, "ServerBISSubscriptionCreateQuery")
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body?: any; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Create a new catalog category.
*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `catalogs:write`
* @summary Create Catalog Category
* @param catalogCategoryCreateQuery
*/
public async createCatalogCategory (catalogCategoryCreateQuery: CatalogCategoryCreateQuery, ): Promise<{ response: AxiosResponse; body: PostCatalogCategoryResponse; }> {
const localVarPath = this.basePath + '/api/catalog-categories';
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'catalogCategoryCreateQuery' is not null or undefined
if (catalogCategoryCreateQuery === null || catalogCategoryCreateQuery === undefined) {
throw new Error('Required parameter catalogCategoryCreateQuery was null or undefined when calling createCatalogCategory.');
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'POST',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
data: ObjectSerializer.serialize(catalogCategoryCreateQuery, "CatalogCategoryCreateQuery")
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: PostCatalogCategoryResponse; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "PostCatalogCategoryResponse");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Create a new catalog item.
*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `catalogs:write`
* @summary Create Catalog Item
* @param catalogItemCreateQuery
*/
public async createCatalogItem (catalogItemCreateQuery: CatalogItemCreateQuery, ): Promise<{ response: AxiosResponse; body: PostCatalogItemResponse; }> {
const localVarPath = this.basePath + '/api/catalog-items';
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'catalogItemCreateQuery' is not null or undefined
if (catalogItemCreateQuery === null || catalogItemCreateQuery === undefined) {
throw new Error('Required parameter catalogItemCreateQuery was null or undefined when calling createCatalogItem.');
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'POST',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
data: ObjectSerializer.serialize(catalogItemCreateQuery, "CatalogItemCreateQuery")
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: PostCatalogItemResponse; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "PostCatalogItemResponse");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Create a new variant for a related catalog item.
*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `catalogs:write`
* @summary Create Catalog Variant
* @param catalogVariantCreateQuery
*/
public async createCatalogVariant (catalogVariantCreateQuery: CatalogVariantCreateQuery, ): Promise<{ response: AxiosResponse; body: PostCatalogVariantResponse; }> {
const localVarPath = this.basePath + '/api/catalog-variants';
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'catalogVariantCreateQuery' is not null or undefined
if (catalogVariantCreateQuery === null || catalogVariantCreateQuery === undefined) {
throw new Error('Required parameter catalogVariantCreateQuery was null or undefined when calling createCatalogVariant.');
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'POST',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
data: ObjectSerializer.serialize(catalogVariantCreateQuery, "CatalogVariantCreateQuery")
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: PostCatalogVariantResponse; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "PostCatalogVariantResponse");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Delete a catalog category using the given category ID.
*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `catalogs:write`
* @summary Delete Catalog Category
* @param id The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
*/
public async deleteCatalogCategory (id: string, ): Promise<{ response: AxiosResponse; body?: any; }> {
const localVarPath = this.basePath + '/api/catalog-categories/{id}'
.replace('{' + 'id' + '}', encodeURIComponent(String(id)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'id' is not null or undefined
if (id === null || id === undefined) {
throw new Error('Required parameter id was null or undefined when calling deleteCatalogCategory.');
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'DELETE',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body?: any; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Delete a catalog item with the given item ID.
*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `catalogs:write`
* @summary Delete Catalog Item
* @param id The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
*/
public async deleteCatalogItem (id: string, ): Promise<{ response: AxiosResponse; body?: any; }> {
const localVarPath = this.basePath + '/api/catalog-items/{id}'
.replace('{' + 'id' + '}', encodeURIComponent(String(id)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'id' is not null or undefined
if (id === null || id === undefined) {
throw new Error('Required parameter id was null or undefined when calling deleteCatalogItem.');
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'DELETE',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body?: any; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Delete a catalog item variant with the given variant ID.
*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `catalogs:write`
* @summary Delete Catalog Variant
* @param id The catalog variant ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
*/
public async deleteCatalogVariant (id: string, ): Promise<{ response: AxiosResponse; body?: any; }> {
const localVarPath = this.basePath + '/api/catalog-variants/{id}'
.replace('{' + 'id' + '}', encodeURIComponent(String(id)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'id' is not null or undefined
if (id === null || id === undefined) {
throw new Error('Required parameter id was null or undefined when calling deleteCatalogVariant.');
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'DELETE',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body?: any; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get a catalog item bulk create job with the given job ID. An `include` parameter can be provided to get the following related resource data: `items`.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Bulk Create Catalog Items Job
* @param jobId ID of the job to retrieve.
* @param fieldsCatalogItemBulkCreateJob For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param fieldsCatalogItem For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param include For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#relationships
*/
public async getBulkCreateCatalogItemsJob (jobId: string, options: { fieldsCatalogItemBulkCreateJob?: Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>, fieldsCatalogItem?: Array<'created' | 'custom_metadata' | 'description' | 'external_id' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'price' | 'published' | 'title' | 'updated' | 'url'>, include?: Array<'items'>, } = {}): Promise<{ response: AxiosResponse; body: GetCatalogItemCreateJobResponseCompoundDocument; }> {
const localVarPath = this.basePath + '/api/catalog-item-bulk-create-jobs/{job_id}'
.replace('{' + 'job_id' + '}', encodeURIComponent(String(jobId)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'jobId' is not null or undefined
if (jobId === null || jobId === undefined) {
throw new Error('Required parameter jobId was null or undefined when calling getBulkCreateCatalogItemsJob.');
}
if (options.fieldsCatalogItemBulkCreateJob !== undefined) {
localVarQueryParameters['fields[catalog-item-bulk-create-job]'] = ObjectSerializer.serialize(options.fieldsCatalogItemBulkCreateJob, "Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>");
}
if (options.fieldsCatalogItem !== undefined) {
localVarQueryParameters['fields[catalog-item]'] = ObjectSerializer.serialize(options.fieldsCatalogItem, "Array<'created' | 'custom_metadata' | 'description' | 'external_id' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'price' | 'published' | 'title' | 'updated' | 'url'>");
}
if (options.include !== undefined) {
localVarQueryParameters['include'] = ObjectSerializer.serialize(options.include, "Array<'items'>");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogItemCreateJobResponseCompoundDocument; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogItemCreateJobResponseCompoundDocument");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get all catalog item bulk create jobs. Returns a maximum of 100 jobs per request.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Bulk Create Catalog Items Jobs
* @param fieldsCatalogItemBulkCreateJob For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param filter For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`* @param pageCursor For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination
*/
public async getBulkCreateCatalogItemsJobs (options: { fieldsCatalogItemBulkCreateJob?: Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>, filter?: string, pageCursor?: string, } = {}): Promise<{ response: AxiosResponse; body: GetCatalogItemCreateJobResponseCollectionCompoundDocument; }> {
const localVarPath = this.basePath + '/api/catalog-item-bulk-create-jobs';
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
if (options.fieldsCatalogItemBulkCreateJob !== undefined) {
localVarQueryParameters['fields[catalog-item-bulk-create-job]'] = ObjectSerializer.serialize(options.fieldsCatalogItemBulkCreateJob, "Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>");
}
if (options.filter !== undefined) {
localVarQueryParameters['filter'] = ObjectSerializer.serialize(options.filter, "string");
}
if (options.pageCursor !== undefined) {
localVarQueryParameters['page[cursor]'] = ObjectSerializer.serialize(options.pageCursor, "string");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogItemCreateJobResponseCollectionCompoundDocument; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogItemCreateJobResponseCollectionCompoundDocument");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get a catalog category bulk create job with the given job ID. An `include` parameter can be provided to get the following related resource data: `categories`.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Bulk Create Categories Job
* @param jobId ID of the job to retrieve.
* @param fieldsCatalogCategoryBulkCreateJob For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param fieldsCatalogCategory For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param include For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#relationships
*/
public async getBulkCreateCategoriesJob (jobId: string, options: { fieldsCatalogCategoryBulkCreateJob?: Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>, fieldsCatalogCategory?: Array<'external_id' | 'name' | 'updated'>, include?: Array<'categories'>, } = {}): Promise<{ response: AxiosResponse; body: GetCatalogCategoryCreateJobResponseCompoundDocument; }> {
const localVarPath = this.basePath + '/api/catalog-category-bulk-create-jobs/{job_id}'
.replace('{' + 'job_id' + '}', encodeURIComponent(String(jobId)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'jobId' is not null or undefined
if (jobId === null || jobId === undefined) {
throw new Error('Required parameter jobId was null or undefined when calling getBulkCreateCategoriesJob.');
}
if (options.fieldsCatalogCategoryBulkCreateJob !== undefined) {
localVarQueryParameters['fields[catalog-category-bulk-create-job]'] = ObjectSerializer.serialize(options.fieldsCatalogCategoryBulkCreateJob, "Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>");
}
if (options.fieldsCatalogCategory !== undefined) {
localVarQueryParameters['fields[catalog-category]'] = ObjectSerializer.serialize(options.fieldsCatalogCategory, "Array<'external_id' | 'name' | 'updated'>");
}
if (options.include !== undefined) {
localVarQueryParameters['include'] = ObjectSerializer.serialize(options.include, "Array<'categories'>");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogCategoryCreateJobResponseCompoundDocument; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogCategoryCreateJobResponseCompoundDocument");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get all catalog category bulk create jobs. Returns a maximum of 100 jobs per request.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Bulk Create Categories Jobs
* @param fieldsCatalogCategoryBulkCreateJob For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param filter For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`* @param pageCursor For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination
*/
public async getBulkCreateCategoriesJobs (options: { fieldsCatalogCategoryBulkCreateJob?: Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>, filter?: string, pageCursor?: string, } = {}): Promise<{ response: AxiosResponse; body: GetCatalogCategoryCreateJobResponseCollectionCompoundDocument; }> {
const localVarPath = this.basePath + '/api/catalog-category-bulk-create-jobs';
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
if (options.fieldsCatalogCategoryBulkCreateJob !== undefined) {
localVarQueryParameters['fields[catalog-category-bulk-create-job]'] = ObjectSerializer.serialize(options.fieldsCatalogCategoryBulkCreateJob, "Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>");
}
if (options.filter !== undefined) {
localVarQueryParameters['filter'] = ObjectSerializer.serialize(options.filter, "string");
}
if (options.pageCursor !== undefined) {
localVarQueryParameters['page[cursor]'] = ObjectSerializer.serialize(options.pageCursor, "string");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogCategoryCreateJobResponseCollectionCompoundDocument; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogCategoryCreateJobResponseCollectionCompoundDocument");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get a catalog variant bulk create job with the given job ID. An `include` parameter can be provided to get the following related resource data: `variants`.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Bulk Create Variants Job
* @param jobId ID of the job to retrieve.
* @param fieldsCatalogVariantBulkCreateJob For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param fieldsCatalogVariant For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param include For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#relationships
*/
public async getBulkCreateVariantsJob (jobId: string, options: { fieldsCatalogVariantBulkCreateJob?: Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>, fieldsCatalogVariant?: Array<'created' | 'custom_metadata' | 'description' | 'external_id' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'inventory_policy' | 'inventory_quantity' | 'price' | 'published' | 'sku' | 'title' | 'updated' | 'url'>, include?: Array<'variants'>, } = {}): Promise<{ response: AxiosResponse; body: GetCatalogVariantCreateJobResponseCompoundDocument; }> {
const localVarPath = this.basePath + '/api/catalog-variant-bulk-create-jobs/{job_id}'
.replace('{' + 'job_id' + '}', encodeURIComponent(String(jobId)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'jobId' is not null or undefined
if (jobId === null || jobId === undefined) {
throw new Error('Required parameter jobId was null or undefined when calling getBulkCreateVariantsJob.');
}
if (options.fieldsCatalogVariantBulkCreateJob !== undefined) {
localVarQueryParameters['fields[catalog-variant-bulk-create-job]'] = ObjectSerializer.serialize(options.fieldsCatalogVariantBulkCreateJob, "Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>");
}
if (options.fieldsCatalogVariant !== undefined) {
localVarQueryParameters['fields[catalog-variant]'] = ObjectSerializer.serialize(options.fieldsCatalogVariant, "Array<'created' | 'custom_metadata' | 'description' | 'external_id' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'inventory_policy' | 'inventory_quantity' | 'price' | 'published' | 'sku' | 'title' | 'updated' | 'url'>");
}
if (options.include !== undefined) {
localVarQueryParameters['include'] = ObjectSerializer.serialize(options.include, "Array<'variants'>");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogVariantCreateJobResponseCompoundDocument; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogVariantCreateJobResponseCompoundDocument");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get all catalog variant bulk create jobs. Returns a maximum of 100 jobs per request.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Bulk Create Variants Jobs
* @param fieldsCatalogVariantBulkCreateJob For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param filter For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`* @param pageCursor For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination
*/
public async getBulkCreateVariantsJobs (options: { fieldsCatalogVariantBulkCreateJob?: Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>, filter?: string, pageCursor?: string, } = {}): Promise<{ response: AxiosResponse; body: GetCatalogVariantCreateJobResponseCollectionCompoundDocument; }> {
const localVarPath = this.basePath + '/api/catalog-variant-bulk-create-jobs';
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
if (options.fieldsCatalogVariantBulkCreateJob !== undefined) {
localVarQueryParameters['fields[catalog-variant-bulk-create-job]'] = ObjectSerializer.serialize(options.fieldsCatalogVariantBulkCreateJob, "Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>");
}
if (options.filter !== undefined) {
localVarQueryParameters['filter'] = ObjectSerializer.serialize(options.filter, "string");
}
if (options.pageCursor !== undefined) {
localVarQueryParameters['page[cursor]'] = ObjectSerializer.serialize(options.pageCursor, "string");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogVariantCreateJobResponseCollectionCompoundDocument; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogVariantCreateJobResponseCollectionCompoundDocument");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get a catalog item bulk delete job with the given job ID.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Bulk Delete Catalog Items Job
* @param jobId ID of the job to retrieve.
* @param fieldsCatalogItemBulkDeleteJob For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets
*/
public async getBulkDeleteCatalogItemsJob (jobId: string, options: { fieldsCatalogItemBulkDeleteJob?: Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>, } = {}): Promise<{ response: AxiosResponse; body: GetCatalogItemDeleteJobResponse; }> {
const localVarPath = this.basePath + '/api/catalog-item-bulk-delete-jobs/{job_id}'
.replace('{' + 'job_id' + '}', encodeURIComponent(String(jobId)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'jobId' is not null or undefined
if (jobId === null || jobId === undefined) {
throw new Error('Required parameter jobId was null or undefined when calling getBulkDeleteCatalogItemsJob.');
}
if (options.fieldsCatalogItemBulkDeleteJob !== undefined) {
localVarQueryParameters['fields[catalog-item-bulk-delete-job]'] = ObjectSerializer.serialize(options.fieldsCatalogItemBulkDeleteJob, "Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogItemDeleteJobResponse; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogItemDeleteJobResponse");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get all catalog item bulk delete jobs. Returns a maximum of 100 jobs per request.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Bulk Delete Catalog Items Jobs
* @param fieldsCatalogItemBulkDeleteJob For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param filter For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`* @param pageCursor For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination
*/
public async getBulkDeleteCatalogItemsJobs (options: { fieldsCatalogItemBulkDeleteJob?: Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>, filter?: string, pageCursor?: string, } = {}): Promise<{ response: AxiosResponse; body: GetCatalogItemDeleteJobResponseCollection; }> {
const localVarPath = this.basePath + '/api/catalog-item-bulk-delete-jobs';
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
if (options.fieldsCatalogItemBulkDeleteJob !== undefined) {
localVarQueryParameters['fields[catalog-item-bulk-delete-job]'] = ObjectSerializer.serialize(options.fieldsCatalogItemBulkDeleteJob, "Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>");
}
if (options.filter !== undefined) {
localVarQueryParameters['filter'] = ObjectSerializer.serialize(options.filter, "string");
}
if (options.pageCursor !== undefined) {
localVarQueryParameters['page[cursor]'] = ObjectSerializer.serialize(options.pageCursor, "string");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogItemDeleteJobResponseCollection; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogItemDeleteJobResponseCollection");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get a catalog category bulk delete job with the given job ID.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Bulk Delete Categories Job
* @param jobId ID of the job to retrieve.
* @param fieldsCatalogCategoryBulkDeleteJob For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets
*/
public async getBulkDeleteCategoriesJob (jobId: string, options: { fieldsCatalogCategoryBulkDeleteJob?: Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>, } = {}): Promise<{ response: AxiosResponse; body: GetCatalogCategoryDeleteJobResponse; }> {
const localVarPath = this.basePath + '/api/catalog-category-bulk-delete-jobs/{job_id}'
.replace('{' + 'job_id' + '}', encodeURIComponent(String(jobId)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'jobId' is not null or undefined
if (jobId === null || jobId === undefined) {
throw new Error('Required parameter jobId was null or undefined when calling getBulkDeleteCategoriesJob.');
}
if (options.fieldsCatalogCategoryBulkDeleteJob !== undefined) {
localVarQueryParameters['fields[catalog-category-bulk-delete-job]'] = ObjectSerializer.serialize(options.fieldsCatalogCategoryBulkDeleteJob, "Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogCategoryDeleteJobResponse; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogCategoryDeleteJobResponse");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get all catalog category bulk delete jobs. Returns a maximum of 100 jobs per request.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Bulk Delete Categories Jobs
* @param fieldsCatalogCategoryBulkDeleteJob For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param filter For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`* @param pageCursor For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination
*/
public async getBulkDeleteCategoriesJobs (options: { fieldsCatalogCategoryBulkDeleteJob?: Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>, filter?: string, pageCursor?: string, } = {}): Promise<{ response: AxiosResponse; body: GetCatalogCategoryDeleteJobResponseCollection; }> {
const localVarPath = this.basePath + '/api/catalog-category-bulk-delete-jobs';
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
if (options.fieldsCatalogCategoryBulkDeleteJob !== undefined) {
localVarQueryParameters['fields[catalog-category-bulk-delete-job]'] = ObjectSerializer.serialize(options.fieldsCatalogCategoryBulkDeleteJob, "Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>");
}
if (options.filter !== undefined) {
localVarQueryParameters['filter'] = ObjectSerializer.serialize(options.filter, "string");
}
if (options.pageCursor !== undefined) {
localVarQueryParameters['page[cursor]'] = ObjectSerializer.serialize(options.pageCursor, "string");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogCategoryDeleteJobResponseCollection; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogCategoryDeleteJobResponseCollection");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get a catalog variant bulk delete job with the given job ID.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Bulk Delete Variants Job
* @param jobId ID of the job to retrieve.
* @param fieldsCatalogVariantBulkDeleteJob For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets
*/
public async getBulkDeleteVariantsJob (jobId: string, options: { fieldsCatalogVariantBulkDeleteJob?: Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>, } = {}): Promise<{ response: AxiosResponse; body: GetCatalogVariantDeleteJobResponse; }> {
const localVarPath = this.basePath + '/api/catalog-variant-bulk-delete-jobs/{job_id}'
.replace('{' + 'job_id' + '}', encodeURIComponent(String(jobId)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'jobId' is not null or undefined
if (jobId === null || jobId === undefined) {
throw new Error('Required parameter jobId was null or undefined when calling getBulkDeleteVariantsJob.');
}
if (options.fieldsCatalogVariantBulkDeleteJob !== undefined) {
localVarQueryParameters['fields[catalog-variant-bulk-delete-job]'] = ObjectSerializer.serialize(options.fieldsCatalogVariantBulkDeleteJob, "Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogVariantDeleteJobResponse; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogVariantDeleteJobResponse");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get all catalog variant bulk delete jobs. Returns a maximum of 100 jobs per request.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Bulk Delete Variants Jobs
* @param fieldsCatalogVariantBulkDeleteJob For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param filter For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`* @param pageCursor For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination
*/
public async getBulkDeleteVariantsJobs (options: { fieldsCatalogVariantBulkDeleteJob?: Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>, filter?: string, pageCursor?: string, } = {}): Promise<{ response: AxiosResponse; body: GetCatalogVariantDeleteJobResponseCollection; }> {
const localVarPath = this.basePath + '/api/catalog-variant-bulk-delete-jobs';
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
if (options.fieldsCatalogVariantBulkDeleteJob !== undefined) {
localVarQueryParameters['fields[catalog-variant-bulk-delete-job]'] = ObjectSerializer.serialize(options.fieldsCatalogVariantBulkDeleteJob, "Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>");
}
if (options.filter !== undefined) {
localVarQueryParameters['filter'] = ObjectSerializer.serialize(options.filter, "string");
}
if (options.pageCursor !== undefined) {
localVarQueryParameters['page[cursor]'] = ObjectSerializer.serialize(options.pageCursor, "string");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogVariantDeleteJobResponseCollection; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogVariantDeleteJobResponseCollection");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get a catalog item bulk update job with the given job ID. An `include` parameter can be provided to get the following related resource data: `items`.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Bulk Update Catalog Items Job
* @param jobId ID of the job to retrieve.
* @param fieldsCatalogItemBulkUpdateJob For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param fieldsCatalogItem For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param include For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#relationships
*/
public async getBulkUpdateCatalogItemsJob (jobId: string, options: { fieldsCatalogItemBulkUpdateJob?: Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>, fieldsCatalogItem?: Array<'created' | 'custom_metadata' | 'description' | 'external_id' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'price' | 'published' | 'title' | 'updated' | 'url'>, include?: Array<'items'>, } = {}): Promise<{ response: AxiosResponse; body: GetCatalogItemUpdateJobResponseCompoundDocument; }> {
const localVarPath = this.basePath + '/api/catalog-item-bulk-update-jobs/{job_id}'
.replace('{' + 'job_id' + '}', encodeURIComponent(String(jobId)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'jobId' is not null or undefined
if (jobId === null || jobId === undefined) {
throw new Error('Required parameter jobId was null or undefined when calling getBulkUpdateCatalogItemsJob.');
}
if (options.fieldsCatalogItemBulkUpdateJob !== undefined) {
localVarQueryParameters['fields[catalog-item-bulk-update-job]'] = ObjectSerializer.serialize(options.fieldsCatalogItemBulkUpdateJob, "Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>");
}
if (options.fieldsCatalogItem !== undefined) {
localVarQueryParameters['fields[catalog-item]'] = ObjectSerializer.serialize(options.fieldsCatalogItem, "Array<'created' | 'custom_metadata' | 'description' | 'external_id' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'price' | 'published' | 'title' | 'updated' | 'url'>");
}
if (options.include !== undefined) {
localVarQueryParameters['include'] = ObjectSerializer.serialize(options.include, "Array<'items'>");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogItemUpdateJobResponseCompoundDocument; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogItemUpdateJobResponseCompoundDocument");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get all catalog item bulk update jobs. Returns a maximum of 100 jobs per request.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Bulk Update Catalog Items Jobs
* @param fieldsCatalogItemBulkUpdateJob For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param filter For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`* @param pageCursor For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination
*/
public async getBulkUpdateCatalogItemsJobs (options: { fieldsCatalogItemBulkUpdateJob?: Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>, filter?: string, pageCursor?: string, } = {}): Promise<{ response: AxiosResponse; body: GetCatalogItemUpdateJobResponseCollectionCompoundDocument; }> {
const localVarPath = this.basePath + '/api/catalog-item-bulk-update-jobs';
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
if (options.fieldsCatalogItemBulkUpdateJob !== undefined) {
localVarQueryParameters['fields[catalog-item-bulk-update-job]'] = ObjectSerializer.serialize(options.fieldsCatalogItemBulkUpdateJob, "Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>");
}
if (options.filter !== undefined) {
localVarQueryParameters['filter'] = ObjectSerializer.serialize(options.filter, "string");
}
if (options.pageCursor !== undefined) {
localVarQueryParameters['page[cursor]'] = ObjectSerializer.serialize(options.pageCursor, "string");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogItemUpdateJobResponseCollectionCompoundDocument; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogItemUpdateJobResponseCollectionCompoundDocument");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get a catalog category bulk update job with the given job ID. An `include` parameter can be provided to get the following related resource data: `categories`.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Bulk Update Categories Job
* @param jobId ID of the job to retrieve.
* @param fieldsCatalogCategoryBulkUpdateJob For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param fieldsCatalogCategory For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param include For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#relationships
*/
public async getBulkUpdateCategoriesJob (jobId: string, options: { fieldsCatalogCategoryBulkUpdateJob?: Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>, fieldsCatalogCategory?: Array<'external_id' | 'name' | 'updated'>, include?: Array<'categories'>, } = {}): Promise<{ response: AxiosResponse; body: GetCatalogCategoryUpdateJobResponseCompoundDocument; }> {
const localVarPath = this.basePath + '/api/catalog-category-bulk-update-jobs/{job_id}'
.replace('{' + 'job_id' + '}', encodeURIComponent(String(jobId)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'jobId' is not null or undefined
if (jobId === null || jobId === undefined) {
throw new Error('Required parameter jobId was null or undefined when calling getBulkUpdateCategoriesJob.');
}
if (options.fieldsCatalogCategoryBulkUpdateJob !== undefined) {
localVarQueryParameters['fields[catalog-category-bulk-update-job]'] = ObjectSerializer.serialize(options.fieldsCatalogCategoryBulkUpdateJob, "Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>");
}
if (options.fieldsCatalogCategory !== undefined) {
localVarQueryParameters['fields[catalog-category]'] = ObjectSerializer.serialize(options.fieldsCatalogCategory, "Array<'external_id' | 'name' | 'updated'>");
}
if (options.include !== undefined) {
localVarQueryParameters['include'] = ObjectSerializer.serialize(options.include, "Array<'categories'>");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogCategoryUpdateJobResponseCompoundDocument; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogCategoryUpdateJobResponseCompoundDocument");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get all catalog category bulk update jobs. Returns a maximum of 100 jobs per request.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Bulk Update Categories Jobs
* @param fieldsCatalogCategoryBulkUpdateJob For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param filter For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`* @param pageCursor For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination
*/
public async getBulkUpdateCategoriesJobs (options: { fieldsCatalogCategoryBulkUpdateJob?: Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>, filter?: string, pageCursor?: string, } = {}): Promise<{ response: AxiosResponse; body: GetCatalogCategoryUpdateJobResponseCollectionCompoundDocument; }> {
const localVarPath = this.basePath + '/api/catalog-category-bulk-update-jobs';
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
if (options.fieldsCatalogCategoryBulkUpdateJob !== undefined) {
localVarQueryParameters['fields[catalog-category-bulk-update-job]'] = ObjectSerializer.serialize(options.fieldsCatalogCategoryBulkUpdateJob, "Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>");
}
if (options.filter !== undefined) {
localVarQueryParameters['filter'] = ObjectSerializer.serialize(options.filter, "string");
}
if (options.pageCursor !== undefined) {
localVarQueryParameters['page[cursor]'] = ObjectSerializer.serialize(options.pageCursor, "string");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogCategoryUpdateJobResponseCollectionCompoundDocument; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogCategoryUpdateJobResponseCollectionCompoundDocument");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get a catalog variate bulk update job with the given job ID. An `include` parameter can be provided to get the following related resource data: `variants`.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Bulk Update Variants Job
* @param jobId ID of the job to retrieve.
* @param fieldsCatalogVariantBulkUpdateJob For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param fieldsCatalogVariant For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param include For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#relationships
*/
public async getBulkUpdateVariantsJob (jobId: string, options: { fieldsCatalogVariantBulkUpdateJob?: Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>, fieldsCatalogVariant?: Array<'created' | 'custom_metadata' | 'description' | 'external_id' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'inventory_policy' | 'inventory_quantity' | 'price' | 'published' | 'sku' | 'title' | 'updated' | 'url'>, include?: Array<'variants'>, } = {}): Promise<{ response: AxiosResponse; body: GetCatalogVariantUpdateJobResponseCompoundDocument; }> {
const localVarPath = this.basePath + '/api/catalog-variant-bulk-update-jobs/{job_id}'
.replace('{' + 'job_id' + '}', encodeURIComponent(String(jobId)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'jobId' is not null or undefined
if (jobId === null || jobId === undefined) {
throw new Error('Required parameter jobId was null or undefined when calling getBulkUpdateVariantsJob.');
}
if (options.fieldsCatalogVariantBulkUpdateJob !== undefined) {
localVarQueryParameters['fields[catalog-variant-bulk-update-job]'] = ObjectSerializer.serialize(options.fieldsCatalogVariantBulkUpdateJob, "Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>");
}
if (options.fieldsCatalogVariant !== undefined) {
localVarQueryParameters['fields[catalog-variant]'] = ObjectSerializer.serialize(options.fieldsCatalogVariant, "Array<'created' | 'custom_metadata' | 'description' | 'external_id' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'inventory_policy' | 'inventory_quantity' | 'price' | 'published' | 'sku' | 'title' | 'updated' | 'url'>");
}
if (options.include !== undefined) {
localVarQueryParameters['include'] = ObjectSerializer.serialize(options.include, "Array<'variants'>");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogVariantUpdateJobResponseCompoundDocument; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogVariantUpdateJobResponseCompoundDocument");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get all catalog variant bulk update jobs. Returns a maximum of 100 jobs per request.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Bulk Update Variants Jobs
* @param fieldsCatalogVariantBulkUpdateJob For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param filter For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`* @param pageCursor For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination
*/
public async getBulkUpdateVariantsJobs (options: { fieldsCatalogVariantBulkUpdateJob?: Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>, filter?: string, pageCursor?: string, } = {}): Promise<{ response: AxiosResponse; body: GetCatalogVariantUpdateJobResponseCollectionCompoundDocument; }> {
const localVarPath = this.basePath + '/api/catalog-variant-bulk-update-jobs';
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
if (options.fieldsCatalogVariantBulkUpdateJob !== undefined) {
localVarQueryParameters['fields[catalog-variant-bulk-update-job]'] = ObjectSerializer.serialize(options.fieldsCatalogVariantBulkUpdateJob, "Array<'completed_at' | 'completed_count' | 'created_at' | 'errors' | 'expires_at' | 'failed_count' | 'status' | 'total_count'>");
}
if (options.filter !== undefined) {
localVarQueryParameters['filter'] = ObjectSerializer.serialize(options.filter, "string");
}
if (options.pageCursor !== undefined) {
localVarQueryParameters['page[cursor]'] = ObjectSerializer.serialize(options.pageCursor, "string");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogVariantUpdateJobResponseCollectionCompoundDocument; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogVariantUpdateJobResponseCollectionCompoundDocument");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get all catalog categories in an account. Catalog categories can be sorted by the following fields, in ascending and descending order: `created` Currently, the only supported integration type is `$custom`, and the only supported catalog type is `$default`. Returns a maximum of 100 categories per request.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Catalog Categories
* @param fieldsCatalogCategory For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param filter For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`ids`: `any`<br>`item.id`: `equals`<br>`name`: `contains`* @param pageCursor For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination* @param sort For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sorting
*/
public async getCatalogCategories (options: { fieldsCatalogCategory?: Array<'external_id' | 'name' | 'updated'>, filter?: string, pageCursor?: string, sort?: 'created' | '-created', } = {}): Promise<{ response: AxiosResponse; body: GetCatalogCategoryResponseCollection; }> {
const localVarPath = this.basePath + '/api/catalog-categories';
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
if (options.fieldsCatalogCategory !== undefined) {
localVarQueryParameters['fields[catalog-category]'] = ObjectSerializer.serialize(options.fieldsCatalogCategory, "Array<'external_id' | 'name' | 'updated'>");
}
if (options.filter !== undefined) {
localVarQueryParameters['filter'] = ObjectSerializer.serialize(options.filter, "string");
}
if (options.pageCursor !== undefined) {
localVarQueryParameters['page[cursor]'] = ObjectSerializer.serialize(options.pageCursor, "string");
}
if (options.sort !== undefined) {
localVarQueryParameters['sort'] = ObjectSerializer.serialize(options.sort, "'created' | '-created'");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogCategoryResponseCollection; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogCategoryResponseCollection");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get a catalog category with the given category ID.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Catalog Category
* @param id The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
* @param fieldsCatalogCategory For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets
*/
public async getCatalogCategory (id: string, options: { fieldsCatalogCategory?: Array<'external_id' | 'name' | 'updated'>, } = {}): Promise<{ response: AxiosResponse; body: GetCatalogCategoryResponse; }> {
const localVarPath = this.basePath + '/api/catalog-categories/{id}'
.replace('{' + 'id' + '}', encodeURIComponent(String(id)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'id' is not null or undefined
if (id === null || id === undefined) {
throw new Error('Required parameter id was null or undefined when calling getCatalogCategory.');
}
if (options.fieldsCatalogCategory !== undefined) {
localVarQueryParameters['fields[catalog-category]'] = ObjectSerializer.serialize(options.fieldsCatalogCategory, "Array<'external_id' | 'name' | 'updated'>");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogCategoryResponse; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogCategoryResponse");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get a specific catalog item with the given item ID.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Catalog Item
* @param id The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
* @param fieldsCatalogItem For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param fieldsCatalogVariant For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param include For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#relationships
*/
public async getCatalogItem (id: string, options: { fieldsCatalogItem?: Array<'created' | 'custom_metadata' | 'description' | 'external_id' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'price' | 'published' | 'title' | 'updated' | 'url'>, fieldsCatalogVariant?: Array<'created' | 'custom_metadata' | 'description' | 'external_id' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'inventory_policy' | 'inventory_quantity' | 'price' | 'published' | 'sku' | 'title' | 'updated' | 'url'>, include?: Array<'variants'>, } = {}): Promise<{ response: AxiosResponse; body: GetCatalogItemResponseCompoundDocument; }> {
const localVarPath = this.basePath + '/api/catalog-items/{id}'
.replace('{' + 'id' + '}', encodeURIComponent(String(id)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'id' is not null or undefined
if (id === null || id === undefined) {
throw new Error('Required parameter id was null or undefined when calling getCatalogItem.');
}
if (options.fieldsCatalogItem !== undefined) {
localVarQueryParameters['fields[catalog-item]'] = ObjectSerializer.serialize(options.fieldsCatalogItem, "Array<'created' | 'custom_metadata' | 'description' | 'external_id' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'price' | 'published' | 'title' | 'updated' | 'url'>");
}
if (options.fieldsCatalogVariant !== undefined) {
localVarQueryParameters['fields[catalog-variant]'] = ObjectSerializer.serialize(options.fieldsCatalogVariant, "Array<'created' | 'custom_metadata' | 'description' | 'external_id' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'inventory_policy' | 'inventory_quantity' | 'price' | 'published' | 'sku' | 'title' | 'updated' | 'url'>");
}
if (options.include !== undefined) {
localVarQueryParameters['include'] = ObjectSerializer.serialize(options.include, "Array<'variants'>");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogItemResponseCompoundDocument; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogItemResponseCompoundDocument");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get all catalog items in an account. Catalog items can be sorted by the following fields, in ascending and descending order: `created` Currently, the only supported integration type is `$custom`, and the only supported catalog type is `$default`. Returns a maximum of 100 items per request.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Catalog Items
* @param fieldsCatalogItem For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param fieldsCatalogVariant For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param filter For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`ids`: `any`<br>`category.id`: `equals`<br>`title`: `contains`<br>`published`: `equals`* @param include For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#relationships* @param pageCursor For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination* @param sort For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sorting
*/
public async getCatalogItems (options: { fieldsCatalogItem?: Array<'created' | 'custom_metadata' | 'description' | 'external_id' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'price' | 'published' | 'title' | 'updated' | 'url'>, fieldsCatalogVariant?: Array<'created' | 'custom_metadata' | 'description' | 'external_id' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'inventory_policy' | 'inventory_quantity' | 'price' | 'published' | 'sku' | 'title' | 'updated' | 'url'>, filter?: string, include?: Array<'variants'>, pageCursor?: string, sort?: 'created' | '-created', } = {}): Promise<{ response: AxiosResponse; body: GetCatalogItemResponseCollectionCompoundDocument; }> {
const localVarPath = this.basePath + '/api/catalog-items';
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
if (options.fieldsCatalogItem !== undefined) {
localVarQueryParameters['fields[catalog-item]'] = ObjectSerializer.serialize(options.fieldsCatalogItem, "Array<'created' | 'custom_metadata' | 'description' | 'external_id' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'price' | 'published' | 'title' | 'updated' | 'url'>");
}
if (options.fieldsCatalogVariant !== undefined) {
localVarQueryParameters['fields[catalog-variant]'] = ObjectSerializer.serialize(options.fieldsCatalogVariant, "Array<'created' | 'custom_metadata' | 'description' | 'external_id' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'inventory_policy' | 'inventory_quantity' | 'price' | 'published' | 'sku' | 'title' | 'updated' | 'url'>");
}
if (options.filter !== undefined) {
localVarQueryParameters['filter'] = ObjectSerializer.serialize(options.filter, "string");
}
if (options.include !== undefined) {
localVarQueryParameters['include'] = ObjectSerializer.serialize(options.include, "Array<'variants'>");
}
if (options.pageCursor !== undefined) {
localVarQueryParameters['page[cursor]'] = ObjectSerializer.serialize(options.pageCursor, "string");
}
if (options.sort !== undefined) {
localVarQueryParameters['sort'] = ObjectSerializer.serialize(options.sort, "'created' | '-created'");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogItemResponseCollectionCompoundDocument; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogItemResponseCollectionCompoundDocument");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get a catalog item variant with the given variant ID.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Catalog Variant
* @param id The catalog variant ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
* @param fieldsCatalogVariant For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets
*/
public async getCatalogVariant (id: string, options: { fieldsCatalogVariant?: Array<'created' | 'custom_metadata' | 'description' | 'external_id' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'inventory_policy' | 'inventory_quantity' | 'price' | 'published' | 'sku' | 'title' | 'updated' | 'url'>, } = {}): Promise<{ response: AxiosResponse; body: GetCatalogVariantResponse; }> {
const localVarPath = this.basePath + '/api/catalog-variants/{id}'
.replace('{' + 'id' + '}', encodeURIComponent(String(id)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'id' is not null or undefined
if (id === null || id === undefined) {
throw new Error('Required parameter id was null or undefined when calling getCatalogVariant.');
}
if (options.fieldsCatalogVariant !== undefined) {
localVarQueryParameters['fields[catalog-variant]'] = ObjectSerializer.serialize(options.fieldsCatalogVariant, "Array<'created' | 'custom_metadata' | 'description' | 'external_id' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'inventory_policy' | 'inventory_quantity' | 'price' | 'published' | 'sku' | 'title' | 'updated' | 'url'>");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogVariantResponse; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogVariantResponse");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get all variants in an account. Variants can be sorted by the following fields, in ascending and descending order: `created` Currently, the only supported integration type is `$custom`, and the only supported catalog type is `$default`. Returns a maximum of 100 variants per request.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Catalog Variants
* @param fieldsCatalogVariant For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param filter For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`ids`: `any`<br>`item.id`: `equals`<br>`sku`: `equals`<br>`title`: `contains`<br>`published`: `equals`* @param pageCursor For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination* @param sort For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sorting
*/
public async getCatalogVariants (options: { fieldsCatalogVariant?: Array<'created' | 'custom_metadata' | 'description' | 'external_id' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'inventory_policy' | 'inventory_quantity' | 'price' | 'published' | 'sku' | 'title' | 'updated' | 'url'>, filter?: string, pageCursor?: string, sort?: 'created' | '-created', } = {}): Promise<{ response: AxiosResponse; body: GetCatalogVariantResponseCollection; }> {
const localVarPath = this.basePath + '/api/catalog-variants';
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
if (options.fieldsCatalogVariant !== undefined) {
localVarQueryParameters['fields[catalog-variant]'] = ObjectSerializer.serialize(options.fieldsCatalogVariant, "Array<'created' | 'custom_metadata' | 'description' | 'external_id' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'inventory_policy' | 'inventory_quantity' | 'price' | 'published' | 'sku' | 'title' | 'updated' | 'url'>");
}
if (options.filter !== undefined) {
localVarQueryParameters['filter'] = ObjectSerializer.serialize(options.filter, "string");
}
if (options.pageCursor !== undefined) {
localVarQueryParameters['page[cursor]'] = ObjectSerializer.serialize(options.pageCursor, "string");
}
if (options.sort !== undefined) {
localVarQueryParameters['sort'] = ObjectSerializer.serialize(options.sort, "'created' | '-created'");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogVariantResponseCollection; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogVariantResponseCollection");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get all catalog categories that an item with the given item ID is in. Catalog categories can be sorted by the following fields, in ascending and descending order: `created` Returns a maximum of 100 categories per request.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Categories for Catalog Item
* @param id The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
* @param fieldsCatalogCategory For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param filter For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`ids`: `any`<br>`item.id`: `equals`<br>`name`: `contains`* @param pageCursor For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination* @param sort For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sorting
*/
public async getCategoriesForCatalogItem (id: string, options: { fieldsCatalogCategory?: Array<'external_id' | 'name' | 'updated'>, filter?: string, pageCursor?: string, sort?: 'created' | '-created', } = {}): Promise<{ response: AxiosResponse; body: GetCatalogCategoryResponseCollection; }> {
const localVarPath = this.basePath + '/api/catalog-items/{id}/categories'
.replace('{' + 'id' + '}', encodeURIComponent(String(id)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'id' is not null or undefined
if (id === null || id === undefined) {
throw new Error('Required parameter id was null or undefined when calling getCategoriesForCatalogItem.');
}
if (options.fieldsCatalogCategory !== undefined) {
localVarQueryParameters['fields[catalog-category]'] = ObjectSerializer.serialize(options.fieldsCatalogCategory, "Array<'external_id' | 'name' | 'updated'>");
}
if (options.filter !== undefined) {
localVarQueryParameters['filter'] = ObjectSerializer.serialize(options.filter, "string");
}
if (options.pageCursor !== undefined) {
localVarQueryParameters['page[cursor]'] = ObjectSerializer.serialize(options.pageCursor, "string");
}
if (options.sort !== undefined) {
localVarQueryParameters['sort'] = ObjectSerializer.serialize(options.sort, "'created' | '-created'");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogCategoryResponseCollection; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogCategoryResponseCollection");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get all catalog categories that a particular item is in. Returns a maximum of 100 categories per request.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Category IDs for Catalog Item
* @param id The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
* @param filter For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`ids`: `any`<br>`item.id`: `equals`<br>`name`: `contains`* @param pageCursor For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination* @param sort For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sorting
*/
public async getCategoryIdsForCatalogItem (id: string, options: { filter?: string, pageCursor?: string, sort?: 'created' | '-created', } = {}): Promise<{ response: AxiosResponse; body: GetCatalogItemCategoriesRelationshipsResponseCollection; }> {
const localVarPath = this.basePath + '/api/catalog-items/{id}/relationships/categories'
.replace('{' + 'id' + '}', encodeURIComponent(String(id)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'id' is not null or undefined
if (id === null || id === undefined) {
throw new Error('Required parameter id was null or undefined when calling getCategoryIdsForCatalogItem.');
}
if (options.filter !== undefined) {
localVarQueryParameters['filter'] = ObjectSerializer.serialize(options.filter, "string");
}
if (options.pageCursor !== undefined) {
localVarQueryParameters['page[cursor]'] = ObjectSerializer.serialize(options.pageCursor, "string");
}
if (options.sort !== undefined) {
localVarQueryParameters['sort'] = ObjectSerializer.serialize(options.sort, "'created' | '-created'");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogItemCategoriesRelationshipsResponseCollection; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogItemCategoriesRelationshipsResponseCollection");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get all items in the given category ID. Returns a maximum of 100 items per request.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Item IDs for Catalog Category
* @param id The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
* @param filter For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`ids`: `any`<br>`category.id`: `equals`<br>`title`: `contains`<br>`published`: `equals`* @param pageCursor For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination* @param sort For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sorting
*/
public async getItemIdsForCatalogCategory (id: string, options: { filter?: string, pageCursor?: string, sort?: 'created' | '-created', } = {}): Promise<{ response: AxiosResponse; body: GetCatalogCategoryItemsRelationshipsResponseCollection; }> {
const localVarPath = this.basePath + '/api/catalog-categories/{id}/relationships/items'
.replace('{' + 'id' + '}', encodeURIComponent(String(id)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'id' is not null or undefined
if (id === null || id === undefined) {
throw new Error('Required parameter id was null or undefined when calling getItemIdsForCatalogCategory.');
}
if (options.filter !== undefined) {
localVarQueryParameters['filter'] = ObjectSerializer.serialize(options.filter, "string");
}
if (options.pageCursor !== undefined) {
localVarQueryParameters['page[cursor]'] = ObjectSerializer.serialize(options.pageCursor, "string");
}
if (options.sort !== undefined) {
localVarQueryParameters['sort'] = ObjectSerializer.serialize(options.sort, "'created' | '-created'");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogCategoryItemsRelationshipsResponseCollection; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogCategoryItemsRelationshipsResponseCollection");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get all items in a category with the given category ID. Items can be sorted by the following fields, in ascending and descending order: `created` Returns a maximum of 100 items per request.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Items for Catalog Category
* @param id The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
* @param fieldsCatalogItem For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param fieldsCatalogVariant For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param filter For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`ids`: `any`<br>`category.id`: `equals`<br>`title`: `contains`<br>`published`: `equals`* @param include For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#relationships* @param pageCursor For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination* @param sort For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sorting
*/
public async getItemsForCatalogCategory (id: string, options: { fieldsCatalogItem?: Array<'created' | 'custom_metadata' | 'description' | 'external_id' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'price' | 'published' | 'title' | 'updated' | 'url'>, fieldsCatalogVariant?: Array<'created' | 'custom_metadata' | 'description' | 'external_id' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'inventory_policy' | 'inventory_quantity' | 'price' | 'published' | 'sku' | 'title' | 'updated' | 'url'>, filter?: string, include?: Array<'variants'>, pageCursor?: string, sort?: 'created' | '-created', } = {}): Promise<{ response: AxiosResponse; body: GetCatalogItemResponseCollectionCompoundDocument; }> {
const localVarPath = this.basePath + '/api/catalog-categories/{id}/items'
.replace('{' + 'id' + '}', encodeURIComponent(String(id)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'id' is not null or undefined
if (id === null || id === undefined) {
throw new Error('Required parameter id was null or undefined when calling getItemsForCatalogCategory.');
}
if (options.fieldsCatalogItem !== undefined) {
localVarQueryParameters['fields[catalog-item]'] = ObjectSerializer.serialize(options.fieldsCatalogItem, "Array<'created' | 'custom_metadata' | 'description' | 'external_id' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'price' | 'published' | 'title' | 'updated' | 'url'>");
}
if (options.fieldsCatalogVariant !== undefined) {
localVarQueryParameters['fields[catalog-variant]'] = ObjectSerializer.serialize(options.fieldsCatalogVariant, "Array<'created' | 'custom_metadata' | 'description' | 'external_id' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'inventory_policy' | 'inventory_quantity' | 'price' | 'published' | 'sku' | 'title' | 'updated' | 'url'>");
}
if (options.filter !== undefined) {
localVarQueryParameters['filter'] = ObjectSerializer.serialize(options.filter, "string");
}
if (options.include !== undefined) {
localVarQueryParameters['include'] = ObjectSerializer.serialize(options.include, "Array<'variants'>");
}
if (options.pageCursor !== undefined) {
localVarQueryParameters['page[cursor]'] = ObjectSerializer.serialize(options.pageCursor, "string");
}
if (options.sort !== undefined) {
localVarQueryParameters['sort'] = ObjectSerializer.serialize(options.sort, "'created' | '-created'");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogItemResponseCollectionCompoundDocument; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogItemResponseCollectionCompoundDocument");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get all variants related to the given item ID. Variants can be sorted by the following fields, in ascending and descending order: `created` Returns a maximum of 100 variants per request.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Variant IDs for Catalog Item
* @param id The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
* @param filter For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`ids`: `any`<br>`item.id`: `equals`<br>`sku`: `equals`<br>`title`: `contains`<br>`published`: `equals`* @param pageCursor For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination* @param sort For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sorting
*/
public async getVariantIdsForCatalogItem (id: string, options: { filter?: string, pageCursor?: string, sort?: 'created' | '-created', } = {}): Promise<{ response: AxiosResponse; body: GetCatalogItemVariantsRelationshipsResponseCollection; }> {
const localVarPath = this.basePath + '/api/catalog-items/{id}/relationships/variants'
.replace('{' + 'id' + '}', encodeURIComponent(String(id)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'id' is not null or undefined
if (id === null || id === undefined) {
throw new Error('Required parameter id was null or undefined when calling getVariantIdsForCatalogItem.');
}
if (options.filter !== undefined) {
localVarQueryParameters['filter'] = ObjectSerializer.serialize(options.filter, "string");
}
if (options.pageCursor !== undefined) {
localVarQueryParameters['page[cursor]'] = ObjectSerializer.serialize(options.pageCursor, "string");
}
if (options.sort !== undefined) {
localVarQueryParameters['sort'] = ObjectSerializer.serialize(options.sort, "'created' | '-created'");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogItemVariantsRelationshipsResponseCollection; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogItemVariantsRelationshipsResponseCollection");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Get all variants related to the given item ID. Variants can be sorted by the following fields, in ascending and descending order: `created` Returns a maximum of 100 variants per request.
*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`
* @summary Get Variants for Catalog Item
* @param id The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
* @param fieldsCatalogVariant For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets* @param filter For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`ids`: `any`<br>`item.id`: `equals`<br>`sku`: `equals`<br>`title`: `contains`<br>`published`: `equals`* @param pageCursor For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination* @param sort For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sorting
*/
public async getVariantsForCatalogItem (id: string, options: { fieldsCatalogVariant?: Array<'created' | 'custom_metadata' | 'description' | 'external_id' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'inventory_policy' | 'inventory_quantity' | 'price' | 'published' | 'sku' | 'title' | 'updated' | 'url'>, filter?: string, pageCursor?: string, sort?: 'created' | '-created', } = {}): Promise<{ response: AxiosResponse; body: GetCatalogVariantResponseCollection; }> {
const localVarPath = this.basePath + '/api/catalog-items/{id}/variants'
.replace('{' + 'id' + '}', encodeURIComponent(String(id)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'id' is not null or undefined
if (id === null || id === undefined) {
throw new Error('Required parameter id was null or undefined when calling getVariantsForCatalogItem.');
}
if (options.fieldsCatalogVariant !== undefined) {
localVarQueryParameters['fields[catalog-variant]'] = ObjectSerializer.serialize(options.fieldsCatalogVariant, "Array<'created' | 'custom_metadata' | 'description' | 'external_id' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'inventory_policy' | 'inventory_quantity' | 'price' | 'published' | 'sku' | 'title' | 'updated' | 'url'>");
}
if (options.filter !== undefined) {
localVarQueryParameters['filter'] = ObjectSerializer.serialize(options.filter, "string");
}
if (options.pageCursor !== undefined) {
localVarQueryParameters['page[cursor]'] = ObjectSerializer.serialize(options.pageCursor, "string");
}
if (options.sort !== undefined) {
localVarQueryParameters['sort'] = ObjectSerializer.serialize(options.sort, "'created' | '-created'");
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'GET',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: GetCatalogVariantResponseCollection; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "GetCatalogVariantResponseCollection");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Delete catalog category relationships for the given item ID.
*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `catalogs:write`
* @summary Remove Categories from Catalog Item
* @param id The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.* @param catalogItemCategoryOp
*/
public async removeCategoriesFromCatalogItem (id: string, catalogItemCategoryOp: CatalogItemCategoryOp, ): Promise<{ response: AxiosResponse; body?: any; }> {
const localVarPath = this.basePath + '/api/catalog-items/{id}/relationships/categories'
.replace('{' + 'id' + '}', encodeURIComponent(String(id)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'id' is not null or undefined
if (id === null || id === undefined) {
throw new Error('Required parameter id was null or undefined when calling removeCategoriesFromCatalogItem.');
}
// verify required parameter 'catalogItemCategoryOp' is not null or undefined
if (catalogItemCategoryOp === null || catalogItemCategoryOp === undefined) {
throw new Error('Required parameter catalogItemCategoryOp was null or undefined when calling removeCategoriesFromCatalogItem.');
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'DELETE',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
data: ObjectSerializer.serialize(catalogItemCategoryOp, "CatalogItemCategoryOp")
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body?: any; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Delete item relationships for the given category ID.
*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `catalogs:write`
* @summary Remove Items from Catalog Category
* @param id The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.* @param catalogCategoryItemOp
*/
public async removeItemsFromCatalogCategory (id: string, catalogCategoryItemOp: CatalogCategoryItemOp, ): Promise<{ response: AxiosResponse; body?: any; }> {
const localVarPath = this.basePath + '/api/catalog-categories/{id}/relationships/items'
.replace('{' + 'id' + '}', encodeURIComponent(String(id)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'id' is not null or undefined
if (id === null || id === undefined) {
throw new Error('Required parameter id was null or undefined when calling removeItemsFromCatalogCategory.');
}
// verify required parameter 'catalogCategoryItemOp' is not null or undefined
if (catalogCategoryItemOp === null || catalogCategoryItemOp === undefined) {
throw new Error('Required parameter catalogCategoryItemOp was null or undefined when calling removeItemsFromCatalogCategory.');
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'DELETE',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
data: ObjectSerializer.serialize(catalogCategoryItemOp, "CatalogCategoryItemOp")
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body?: any; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Update a catalog category with the given category ID.
*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `catalogs:write`
* @summary Update Catalog Category
* @param id The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.* @param catalogCategoryUpdateQuery
*/
public async updateCatalogCategory (id: string, catalogCategoryUpdateQuery: CatalogCategoryUpdateQuery, ): Promise<{ response: AxiosResponse; body: PatchCatalogCategoryResponse; }> {
const localVarPath = this.basePath + '/api/catalog-categories/{id}'
.replace('{' + 'id' + '}', encodeURIComponent(String(id)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'id' is not null or undefined
if (id === null || id === undefined) {
throw new Error('Required parameter id was null or undefined when calling updateCatalogCategory.');
}
// verify required parameter 'catalogCategoryUpdateQuery' is not null or undefined
if (catalogCategoryUpdateQuery === null || catalogCategoryUpdateQuery === undefined) {
throw new Error('Required parameter catalogCategoryUpdateQuery was null or undefined when calling updateCatalogCategory.');
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'PATCH',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
data: ObjectSerializer.serialize(catalogCategoryUpdateQuery, "CatalogCategoryUpdateQuery")
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: PatchCatalogCategoryResponse; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "PatchCatalogCategoryResponse");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Update a catalog item with the given item ID.
*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `catalogs:write`
* @summary Update Catalog Item
* @param id The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.* @param catalogItemUpdateQuery
*/
public async updateCatalogItem (id: string, catalogItemUpdateQuery: CatalogItemUpdateQuery, ): Promise<{ response: AxiosResponse; body: PatchCatalogItemResponse; }> {
const localVarPath = this.basePath + '/api/catalog-items/{id}'
.replace('{' + 'id' + '}', encodeURIComponent(String(id)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'id' is not null or undefined
if (id === null || id === undefined) {
throw new Error('Required parameter id was null or undefined when calling updateCatalogItem.');
}
// verify required parameter 'catalogItemUpdateQuery' is not null or undefined
if (catalogItemUpdateQuery === null || catalogItemUpdateQuery === undefined) {
throw new Error('Required parameter catalogItemUpdateQuery was null or undefined when calling updateCatalogItem.');
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'PATCH',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
data: ObjectSerializer.serialize(catalogItemUpdateQuery, "CatalogItemUpdateQuery")
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: PatchCatalogItemResponse; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "PatchCatalogItemResponse");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Update a catalog item variant with the given variant ID.
*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `catalogs:write`
* @summary Update Catalog Variant
* @param id The catalog variant ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.* @param catalogVariantUpdateQuery
*/
public async updateCatalogVariant (id: string, catalogVariantUpdateQuery: CatalogVariantUpdateQuery, ): Promise<{ response: AxiosResponse; body: PatchCatalogVariantResponse; }> {
const localVarPath = this.basePath + '/api/catalog-variants/{id}'
.replace('{' + 'id' + '}', encodeURIComponent(String(id)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'id' is not null or undefined
if (id === null || id === undefined) {
throw new Error('Required parameter id was null or undefined when calling updateCatalogVariant.');
}
// verify required parameter 'catalogVariantUpdateQuery' is not null or undefined
if (catalogVariantUpdateQuery === null || catalogVariantUpdateQuery === undefined) {
throw new Error('Required parameter catalogVariantUpdateQuery was null or undefined when calling updateCatalogVariant.');
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'PATCH',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
data: ObjectSerializer.serialize(catalogVariantUpdateQuery, "CatalogVariantUpdateQuery")
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body: PatchCatalogVariantResponse; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
body = ObjectSerializer.deserialize(axiosResponse.data, "PatchCatalogVariantResponse");
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Update catalog category relationships for the given item ID.
*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `catalogs:write`
* @summary Update Categories for Catalog Item
* @param id The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.* @param catalogItemCategoryOp
*/
public async updateCategoriesForCatalogItem (id: string, catalogItemCategoryOp: CatalogItemCategoryOp, ): Promise<{ response: AxiosResponse; body?: any; }> {
const localVarPath = this.basePath + '/api/catalog-items/{id}/relationships/categories'
.replace('{' + 'id' + '}', encodeURIComponent(String(id)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'id' is not null or undefined
if (id === null || id === undefined) {
throw new Error('Required parameter id was null or undefined when calling updateCategoriesForCatalogItem.');
}
// verify required parameter 'catalogItemCategoryOp' is not null or undefined
if (catalogItemCategoryOp === null || catalogItemCategoryOp === undefined) {
throw new Error('Required parameter catalogItemCategoryOp was null or undefined when calling updateCategoriesForCatalogItem.');
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'PATCH',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
data: ObjectSerializer.serialize(catalogItemCategoryOp, "CatalogItemCategoryOp")
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body?: any; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
/**
* Update item relationships for the given category ID.
*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `catalogs:write`
* @summary Update Items for Catalog Category
* @param id The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.* @param catalogCategoryItemOp
*/
public async updateItemsForCatalogCategory (id: string, catalogCategoryItemOp: CatalogCategoryItemOp, ): Promise<{ response: AxiosResponse; body?: any; }> {
const localVarPath = this.basePath + '/api/catalog-categories/{id}/relationships/items'
.replace('{' + 'id' + '}', encodeURIComponent(String(id)));
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders);
const produces = ['application/vnd.api+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
// verify required parameter 'id' is not null or undefined
if (id === null || id === undefined) {
throw new Error('Required parameter id was null or undefined when calling updateItemsForCatalogCategory.');
}
// verify required parameter 'catalogCategoryItemOp' is not null or undefined
if (catalogCategoryItemOp === null || catalogCategoryItemOp === undefined) {
throw new Error('Required parameter catalogCategoryItemOp was null or undefined when calling updateItemsForCatalogCategory.');
}
queryParamPreProcessor(localVarQueryParameters)
let config: AxiosRequestConfig = {
method: 'PATCH',
url: localVarPath,
headers: localVarHeaderParams,
params: localVarQueryParameters,
data: ObjectSerializer.serialize(catalogCategoryItemOp, "CatalogCategoryItemOp")
}
await this.session.applyToRequest(config)
const request = async (config: AxiosRequestConfig, retried = false): Promise<{ response: AxiosResponse; body?: any; }> => {
try {
const axiosResponse = await this.session.requestWithRetry(config)
let body;
return ({response: axiosResponse, body: body});
} catch (error) {
if (await this.session.refreshAndRetry(error, retried)) {
await this.session.applyToRequest(config)
return request(config, true)
}
throw error
}
}
return request(config)
}
}
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.addCategoriesToCatalogItem}
*
* @deprecated Use {@link CatalogsApi.addCategoriesToCatalogItem} instead
*/
addCategoryToCatalogItem: typeof CatalogsApi.prototype.addCategoriesToCatalogItem;
}
CatalogsApi.prototype.addCategoryToCatalogItem = CatalogsApi.prototype.addCategoriesToCatalogItem
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.addCategoriesToCatalogItem}
*
* @deprecated Use {@link CatalogsApi.addCategoriesToCatalogItem} instead
*/
createCatalogItemRelationshipsCategory: typeof CatalogsApi.prototype.addCategoriesToCatalogItem;
}
CatalogsApi.prototype.createCatalogItemRelationshipsCategory = CatalogsApi.prototype.addCategoriesToCatalogItem
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.addCategoriesToCatalogItem}
*
* @deprecated Use {@link CatalogsApi.addCategoriesToCatalogItem} instead
*/
createCatalogItemRelationshipsCategories: typeof CatalogsApi.prototype.addCategoriesToCatalogItem;
}
CatalogsApi.prototype.createCatalogItemRelationshipsCategories = CatalogsApi.prototype.addCategoriesToCatalogItem
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.addItemsToCatalogCategory}
*
* @deprecated Use {@link CatalogsApi.addItemsToCatalogCategory} instead
*/
createCatalogCategoryRelationshipsItem: typeof CatalogsApi.prototype.addItemsToCatalogCategory;
}
CatalogsApi.prototype.createCatalogCategoryRelationshipsItem = CatalogsApi.prototype.addItemsToCatalogCategory
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.addItemsToCatalogCategory}
*
* @deprecated Use {@link CatalogsApi.addItemsToCatalogCategory} instead
*/
createCatalogCategoryRelationshipsItems: typeof CatalogsApi.prototype.addItemsToCatalogCategory;
}
CatalogsApi.prototype.createCatalogCategoryRelationshipsItems = CatalogsApi.prototype.addItemsToCatalogCategory
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.bulkCreateCatalogCategories}
*
* @deprecated Use {@link CatalogsApi.bulkCreateCatalogCategories} instead
*/
spawnCreateCategoriesJob: typeof CatalogsApi.prototype.bulkCreateCatalogCategories;
}
CatalogsApi.prototype.spawnCreateCategoriesJob = CatalogsApi.prototype.bulkCreateCatalogCategories
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.bulkCreateCatalogCategories}
*
* @deprecated Use {@link CatalogsApi.bulkCreateCatalogCategories} instead
*/
createCatalogCategoryBulkCreateJob: typeof CatalogsApi.prototype.bulkCreateCatalogCategories;
}
CatalogsApi.prototype.createCatalogCategoryBulkCreateJob = CatalogsApi.prototype.bulkCreateCatalogCategories
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.bulkCreateCatalogItems}
*
* @deprecated Use {@link CatalogsApi.bulkCreateCatalogItems} instead
*/
spawnCreateItemsJob: typeof CatalogsApi.prototype.bulkCreateCatalogItems;
}
CatalogsApi.prototype.spawnCreateItemsJob = CatalogsApi.prototype.bulkCreateCatalogItems
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.bulkCreateCatalogItems}
*
* @deprecated Use {@link CatalogsApi.bulkCreateCatalogItems} instead
*/
createCatalogItemBulkCreateJob: typeof CatalogsApi.prototype.bulkCreateCatalogItems;
}
CatalogsApi.prototype.createCatalogItemBulkCreateJob = CatalogsApi.prototype.bulkCreateCatalogItems
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.bulkCreateCatalogVariants}
*
* @deprecated Use {@link CatalogsApi.bulkCreateCatalogVariants} instead
*/
spawnCreateVariantsJob: typeof CatalogsApi.prototype.bulkCreateCatalogVariants;
}
CatalogsApi.prototype.spawnCreateVariantsJob = CatalogsApi.prototype.bulkCreateCatalogVariants
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.bulkCreateCatalogVariants}
*
* @deprecated Use {@link CatalogsApi.bulkCreateCatalogVariants} instead
*/
createCatalogVariantBulkCreateJob: typeof CatalogsApi.prototype.bulkCreateCatalogVariants;
}
CatalogsApi.prototype.createCatalogVariantBulkCreateJob = CatalogsApi.prototype.bulkCreateCatalogVariants
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.bulkDeleteCatalogCategories}
*
* @deprecated Use {@link CatalogsApi.bulkDeleteCatalogCategories} instead
*/
spawnDeleteCategoriesJob: typeof CatalogsApi.prototype.bulkDeleteCatalogCategories;
}
CatalogsApi.prototype.spawnDeleteCategoriesJob = CatalogsApi.prototype.bulkDeleteCatalogCategories
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.bulkDeleteCatalogCategories}
*
* @deprecated Use {@link CatalogsApi.bulkDeleteCatalogCategories} instead
*/
createCatalogCategoryBulkDeleteJob: typeof CatalogsApi.prototype.bulkDeleteCatalogCategories;
}
CatalogsApi.prototype.createCatalogCategoryBulkDeleteJob = CatalogsApi.prototype.bulkDeleteCatalogCategories
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.bulkDeleteCatalogItems}
*
* @deprecated Use {@link CatalogsApi.bulkDeleteCatalogItems} instead
*/
spawnDeleteItemsJob: typeof CatalogsApi.prototype.bulkDeleteCatalogItems;
}
CatalogsApi.prototype.spawnDeleteItemsJob = CatalogsApi.prototype.bulkDeleteCatalogItems
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.bulkDeleteCatalogItems}
*
* @deprecated Use {@link CatalogsApi.bulkDeleteCatalogItems} instead
*/
createCatalogItemBulkDeleteJob: typeof CatalogsApi.prototype.bulkDeleteCatalogItems;
}
CatalogsApi.prototype.createCatalogItemBulkDeleteJob = CatalogsApi.prototype.bulkDeleteCatalogItems
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.bulkDeleteCatalogVariants}
*
* @deprecated Use {@link CatalogsApi.bulkDeleteCatalogVariants} instead
*/
spawnDeleteVariantsJob: typeof CatalogsApi.prototype.bulkDeleteCatalogVariants;
}
CatalogsApi.prototype.spawnDeleteVariantsJob = CatalogsApi.prototype.bulkDeleteCatalogVariants
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.bulkDeleteCatalogVariants}
*
* @deprecated Use {@link CatalogsApi.bulkDeleteCatalogVariants} instead
*/
createCatalogVariantBulkDeleteJob: typeof CatalogsApi.prototype.bulkDeleteCatalogVariants;
}
CatalogsApi.prototype.createCatalogVariantBulkDeleteJob = CatalogsApi.prototype.bulkDeleteCatalogVariants
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.bulkUpdateCatalogCategories}
*
* @deprecated Use {@link CatalogsApi.bulkUpdateCatalogCategories} instead
*/
spawnUpdateCategoriesJob: typeof CatalogsApi.prototype.bulkUpdateCatalogCategories;
}
CatalogsApi.prototype.spawnUpdateCategoriesJob = CatalogsApi.prototype.bulkUpdateCatalogCategories
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.bulkUpdateCatalogCategories}
*
* @deprecated Use {@link CatalogsApi.bulkUpdateCatalogCategories} instead
*/
createCatalogCategoryBulkUpdateJob: typeof CatalogsApi.prototype.bulkUpdateCatalogCategories;
}
CatalogsApi.prototype.createCatalogCategoryBulkUpdateJob = CatalogsApi.prototype.bulkUpdateCatalogCategories
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.bulkUpdateCatalogItems}
*
* @deprecated Use {@link CatalogsApi.bulkUpdateCatalogItems} instead
*/
spawnUpdateItemsJob: typeof CatalogsApi.prototype.bulkUpdateCatalogItems;
}
CatalogsApi.prototype.spawnUpdateItemsJob = CatalogsApi.prototype.bulkUpdateCatalogItems
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.bulkUpdateCatalogItems}
*
* @deprecated Use {@link CatalogsApi.bulkUpdateCatalogItems} instead
*/
createCatalogItemBulkUpdateJob: typeof CatalogsApi.prototype.bulkUpdateCatalogItems;
}
CatalogsApi.prototype.createCatalogItemBulkUpdateJob = CatalogsApi.prototype.bulkUpdateCatalogItems
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.bulkUpdateCatalogVariants}
*
* @deprecated Use {@link CatalogsApi.bulkUpdateCatalogVariants} instead
*/
spawnUpdateVariantsJob: typeof CatalogsApi.prototype.bulkUpdateCatalogVariants;
}
CatalogsApi.prototype.spawnUpdateVariantsJob = CatalogsApi.prototype.bulkUpdateCatalogVariants
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.bulkUpdateCatalogVariants}
*
* @deprecated Use {@link CatalogsApi.bulkUpdateCatalogVariants} instead
*/
createCatalogVariantBulkUpdateJob: typeof CatalogsApi.prototype.bulkUpdateCatalogVariants;
}
CatalogsApi.prototype.createCatalogVariantBulkUpdateJob = CatalogsApi.prototype.bulkUpdateCatalogVariants
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkCreateCatalogItemsJob}
*
* @deprecated Use {@link CatalogsApi.getBulkCreateCatalogItemsJob} instead
*/
getCreateItemsJob: typeof CatalogsApi.prototype.getBulkCreateCatalogItemsJob;
}
CatalogsApi.prototype.getCreateItemsJob = CatalogsApi.prototype.getBulkCreateCatalogItemsJob
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkCreateCatalogItemsJob}
*
* @deprecated Use {@link CatalogsApi.getBulkCreateCatalogItemsJob} instead
*/
getCatalogItemBulkCreateJob: typeof CatalogsApi.prototype.getBulkCreateCatalogItemsJob;
}
CatalogsApi.prototype.getCatalogItemBulkCreateJob = CatalogsApi.prototype.getBulkCreateCatalogItemsJob
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkCreateCatalogItemsJobs}
*
* @deprecated Use {@link CatalogsApi.getBulkCreateCatalogItemsJobs} instead
*/
getCreateItemsJobs: typeof CatalogsApi.prototype.getBulkCreateCatalogItemsJobs;
}
CatalogsApi.prototype.getCreateItemsJobs = CatalogsApi.prototype.getBulkCreateCatalogItemsJobs
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkCreateCatalogItemsJobs}
*
* @deprecated Use {@link CatalogsApi.getBulkCreateCatalogItemsJobs} instead
*/
getCatalogItemBulkCreateJobs: typeof CatalogsApi.prototype.getBulkCreateCatalogItemsJobs;
}
CatalogsApi.prototype.getCatalogItemBulkCreateJobs = CatalogsApi.prototype.getBulkCreateCatalogItemsJobs
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkCreateCategoriesJob}
*
* @deprecated Use {@link CatalogsApi.getBulkCreateCategoriesJob} instead
*/
getCreateCategoriesJob: typeof CatalogsApi.prototype.getBulkCreateCategoriesJob;
}
CatalogsApi.prototype.getCreateCategoriesJob = CatalogsApi.prototype.getBulkCreateCategoriesJob
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkCreateCategoriesJob}
*
* @deprecated Use {@link CatalogsApi.getBulkCreateCategoriesJob} instead
*/
getCatalogCategoryBulkCreateJob: typeof CatalogsApi.prototype.getBulkCreateCategoriesJob;
}
CatalogsApi.prototype.getCatalogCategoryBulkCreateJob = CatalogsApi.prototype.getBulkCreateCategoriesJob
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkCreateCategoriesJobs}
*
* @deprecated Use {@link CatalogsApi.getBulkCreateCategoriesJobs} instead
*/
getCreateCategoriesJobs: typeof CatalogsApi.prototype.getBulkCreateCategoriesJobs;
}
CatalogsApi.prototype.getCreateCategoriesJobs = CatalogsApi.prototype.getBulkCreateCategoriesJobs
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkCreateCategoriesJobs}
*
* @deprecated Use {@link CatalogsApi.getBulkCreateCategoriesJobs} instead
*/
getCatalogCategoryBulkCreateJobs: typeof CatalogsApi.prototype.getBulkCreateCategoriesJobs;
}
CatalogsApi.prototype.getCatalogCategoryBulkCreateJobs = CatalogsApi.prototype.getBulkCreateCategoriesJobs
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkCreateVariantsJob}
*
* @deprecated Use {@link CatalogsApi.getBulkCreateVariantsJob} instead
*/
getCreateVariantsJob: typeof CatalogsApi.prototype.getBulkCreateVariantsJob;
}
CatalogsApi.prototype.getCreateVariantsJob = CatalogsApi.prototype.getBulkCreateVariantsJob
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkCreateVariantsJob}
*
* @deprecated Use {@link CatalogsApi.getBulkCreateVariantsJob} instead
*/
getCatalogVariantBulkCreateJob: typeof CatalogsApi.prototype.getBulkCreateVariantsJob;
}
CatalogsApi.prototype.getCatalogVariantBulkCreateJob = CatalogsApi.prototype.getBulkCreateVariantsJob
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkCreateVariantsJobs}
*
* @deprecated Use {@link CatalogsApi.getBulkCreateVariantsJobs} instead
*/
getCreateVariantsJobs: typeof CatalogsApi.prototype.getBulkCreateVariantsJobs;
}
CatalogsApi.prototype.getCreateVariantsJobs = CatalogsApi.prototype.getBulkCreateVariantsJobs
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkCreateVariantsJobs}
*
* @deprecated Use {@link CatalogsApi.getBulkCreateVariantsJobs} instead
*/
getCatalogVariantBulkCreateJobs: typeof CatalogsApi.prototype.getBulkCreateVariantsJobs;
}
CatalogsApi.prototype.getCatalogVariantBulkCreateJobs = CatalogsApi.prototype.getBulkCreateVariantsJobs
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkDeleteCatalogItemsJob}
*
* @deprecated Use {@link CatalogsApi.getBulkDeleteCatalogItemsJob} instead
*/
getDeleteItemsJob: typeof CatalogsApi.prototype.getBulkDeleteCatalogItemsJob;
}
CatalogsApi.prototype.getDeleteItemsJob = CatalogsApi.prototype.getBulkDeleteCatalogItemsJob
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkDeleteCatalogItemsJob}
*
* @deprecated Use {@link CatalogsApi.getBulkDeleteCatalogItemsJob} instead
*/
getCatalogItemBulkDeleteJob: typeof CatalogsApi.prototype.getBulkDeleteCatalogItemsJob;
}
CatalogsApi.prototype.getCatalogItemBulkDeleteJob = CatalogsApi.prototype.getBulkDeleteCatalogItemsJob
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkDeleteCatalogItemsJobs}
*
* @deprecated Use {@link CatalogsApi.getBulkDeleteCatalogItemsJobs} instead
*/
getDeleteItemsJobs: typeof CatalogsApi.prototype.getBulkDeleteCatalogItemsJobs;
}
CatalogsApi.prototype.getDeleteItemsJobs = CatalogsApi.prototype.getBulkDeleteCatalogItemsJobs
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkDeleteCatalogItemsJobs}
*
* @deprecated Use {@link CatalogsApi.getBulkDeleteCatalogItemsJobs} instead
*/
getCatalogItemBulkDeleteJobs: typeof CatalogsApi.prototype.getBulkDeleteCatalogItemsJobs;
}
CatalogsApi.prototype.getCatalogItemBulkDeleteJobs = CatalogsApi.prototype.getBulkDeleteCatalogItemsJobs
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkDeleteCategoriesJob}
*
* @deprecated Use {@link CatalogsApi.getBulkDeleteCategoriesJob} instead
*/
getDeleteCategoriesJob: typeof CatalogsApi.prototype.getBulkDeleteCategoriesJob;
}
CatalogsApi.prototype.getDeleteCategoriesJob = CatalogsApi.prototype.getBulkDeleteCategoriesJob
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkDeleteCategoriesJob}
*
* @deprecated Use {@link CatalogsApi.getBulkDeleteCategoriesJob} instead
*/
getCatalogCategoryBulkDeleteJob: typeof CatalogsApi.prototype.getBulkDeleteCategoriesJob;
}
CatalogsApi.prototype.getCatalogCategoryBulkDeleteJob = CatalogsApi.prototype.getBulkDeleteCategoriesJob
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkDeleteCategoriesJobs}
*
* @deprecated Use {@link CatalogsApi.getBulkDeleteCategoriesJobs} instead
*/
getDeleteCategoriesJobs: typeof CatalogsApi.prototype.getBulkDeleteCategoriesJobs;
}
CatalogsApi.prototype.getDeleteCategoriesJobs = CatalogsApi.prototype.getBulkDeleteCategoriesJobs
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkDeleteCategoriesJobs}
*
* @deprecated Use {@link CatalogsApi.getBulkDeleteCategoriesJobs} instead
*/
getCatalogCategoryBulkDeleteJobs: typeof CatalogsApi.prototype.getBulkDeleteCategoriesJobs;
}
CatalogsApi.prototype.getCatalogCategoryBulkDeleteJobs = CatalogsApi.prototype.getBulkDeleteCategoriesJobs
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkDeleteVariantsJob}
*
* @deprecated Use {@link CatalogsApi.getBulkDeleteVariantsJob} instead
*/
getDeleteVariantsJob: typeof CatalogsApi.prototype.getBulkDeleteVariantsJob;
}
CatalogsApi.prototype.getDeleteVariantsJob = CatalogsApi.prototype.getBulkDeleteVariantsJob
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkDeleteVariantsJob}
*
* @deprecated Use {@link CatalogsApi.getBulkDeleteVariantsJob} instead
*/
getCatalogVariantBulkDeleteJob: typeof CatalogsApi.prototype.getBulkDeleteVariantsJob;
}
CatalogsApi.prototype.getCatalogVariantBulkDeleteJob = CatalogsApi.prototype.getBulkDeleteVariantsJob
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkDeleteVariantsJobs}
*
* @deprecated Use {@link CatalogsApi.getBulkDeleteVariantsJobs} instead
*/
getDeleteVariantsJobs: typeof CatalogsApi.prototype.getBulkDeleteVariantsJobs;
}
CatalogsApi.prototype.getDeleteVariantsJobs = CatalogsApi.prototype.getBulkDeleteVariantsJobs
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkDeleteVariantsJobs}
*
* @deprecated Use {@link CatalogsApi.getBulkDeleteVariantsJobs} instead
*/
getCatalogVariantBulkDeleteJobs: typeof CatalogsApi.prototype.getBulkDeleteVariantsJobs;
}
CatalogsApi.prototype.getCatalogVariantBulkDeleteJobs = CatalogsApi.prototype.getBulkDeleteVariantsJobs
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkUpdateCatalogItemsJob}
*
* @deprecated Use {@link CatalogsApi.getBulkUpdateCatalogItemsJob} instead
*/
getUpdateItemsJob: typeof CatalogsApi.prototype.getBulkUpdateCatalogItemsJob;
}
CatalogsApi.prototype.getUpdateItemsJob = CatalogsApi.prototype.getBulkUpdateCatalogItemsJob
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkUpdateCatalogItemsJob}
*
* @deprecated Use {@link CatalogsApi.getBulkUpdateCatalogItemsJob} instead
*/
getCatalogItemBulkUpdateJob: typeof CatalogsApi.prototype.getBulkUpdateCatalogItemsJob;
}
CatalogsApi.prototype.getCatalogItemBulkUpdateJob = CatalogsApi.prototype.getBulkUpdateCatalogItemsJob
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkUpdateCatalogItemsJobs}
*
* @deprecated Use {@link CatalogsApi.getBulkUpdateCatalogItemsJobs} instead
*/
getUpdateItemsJobs: typeof CatalogsApi.prototype.getBulkUpdateCatalogItemsJobs;
}
CatalogsApi.prototype.getUpdateItemsJobs = CatalogsApi.prototype.getBulkUpdateCatalogItemsJobs
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkUpdateCatalogItemsJobs}
*
* @deprecated Use {@link CatalogsApi.getBulkUpdateCatalogItemsJobs} instead
*/
getCatalogItemBulkUpdateJobs: typeof CatalogsApi.prototype.getBulkUpdateCatalogItemsJobs;
}
CatalogsApi.prototype.getCatalogItemBulkUpdateJobs = CatalogsApi.prototype.getBulkUpdateCatalogItemsJobs
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkUpdateCategoriesJob}
*
* @deprecated Use {@link CatalogsApi.getBulkUpdateCategoriesJob} instead
*/
getUpdateCategoriesJob: typeof CatalogsApi.prototype.getBulkUpdateCategoriesJob;
}
CatalogsApi.prototype.getUpdateCategoriesJob = CatalogsApi.prototype.getBulkUpdateCategoriesJob
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkUpdateCategoriesJob}
*
* @deprecated Use {@link CatalogsApi.getBulkUpdateCategoriesJob} instead
*/
getCatalogCategoryBulkUpdateJob: typeof CatalogsApi.prototype.getBulkUpdateCategoriesJob;
}
CatalogsApi.prototype.getCatalogCategoryBulkUpdateJob = CatalogsApi.prototype.getBulkUpdateCategoriesJob
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkUpdateCategoriesJobs}
*
* @deprecated Use {@link CatalogsApi.getBulkUpdateCategoriesJobs} instead
*/
getUpdateCategoriesJobs: typeof CatalogsApi.prototype.getBulkUpdateCategoriesJobs;
}
CatalogsApi.prototype.getUpdateCategoriesJobs = CatalogsApi.prototype.getBulkUpdateCategoriesJobs
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkUpdateCategoriesJobs}
*
* @deprecated Use {@link CatalogsApi.getBulkUpdateCategoriesJobs} instead
*/
getCatalogCategoryBulkUpdateJobs: typeof CatalogsApi.prototype.getBulkUpdateCategoriesJobs;
}
CatalogsApi.prototype.getCatalogCategoryBulkUpdateJobs = CatalogsApi.prototype.getBulkUpdateCategoriesJobs
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkUpdateVariantsJob}
*
* @deprecated Use {@link CatalogsApi.getBulkUpdateVariantsJob} instead
*/
getUpdateVariantsJob: typeof CatalogsApi.prototype.getBulkUpdateVariantsJob;
}
CatalogsApi.prototype.getUpdateVariantsJob = CatalogsApi.prototype.getBulkUpdateVariantsJob
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkUpdateVariantsJob}
*
* @deprecated Use {@link CatalogsApi.getBulkUpdateVariantsJob} instead
*/
getCatalogVariantBulkUpdateJob: typeof CatalogsApi.prototype.getBulkUpdateVariantsJob;
}
CatalogsApi.prototype.getCatalogVariantBulkUpdateJob = CatalogsApi.prototype.getBulkUpdateVariantsJob
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkUpdateVariantsJobs}
*
* @deprecated Use {@link CatalogsApi.getBulkUpdateVariantsJobs} instead
*/
getUpdateVariantsJobs: typeof CatalogsApi.prototype.getBulkUpdateVariantsJobs;
}
CatalogsApi.prototype.getUpdateVariantsJobs = CatalogsApi.prototype.getBulkUpdateVariantsJobs
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getBulkUpdateVariantsJobs}
*
* @deprecated Use {@link CatalogsApi.getBulkUpdateVariantsJobs} instead
*/
getCatalogVariantBulkUpdateJobs: typeof CatalogsApi.prototype.getBulkUpdateVariantsJobs;
}
CatalogsApi.prototype.getCatalogVariantBulkUpdateJobs = CatalogsApi.prototype.getBulkUpdateVariantsJobs
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getCategoriesForCatalogItem}
*
* @deprecated Use {@link CatalogsApi.getCategoriesForCatalogItem} instead
*/
getCatalogItemCategories: typeof CatalogsApi.prototype.getCategoriesForCatalogItem;
}
CatalogsApi.prototype.getCatalogItemCategories = CatalogsApi.prototype.getCategoriesForCatalogItem
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getCategoryIdsForCatalogItem}
*
* @deprecated Use {@link CatalogsApi.getCategoryIdsForCatalogItem} instead
*/
getCatalogItemRelationshipsCategories: typeof CatalogsApi.prototype.getCategoryIdsForCatalogItem;
}
CatalogsApi.prototype.getCatalogItemRelationshipsCategories = CatalogsApi.prototype.getCategoryIdsForCatalogItem
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getItemIdsForCatalogCategory}
*
* @deprecated Use {@link CatalogsApi.getItemIdsForCatalogCategory} instead
*/
getCatalogCategoryRelationshipsItems: typeof CatalogsApi.prototype.getItemIdsForCatalogCategory;
}
CatalogsApi.prototype.getCatalogCategoryRelationshipsItems = CatalogsApi.prototype.getItemIdsForCatalogCategory
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getItemsForCatalogCategory}
*
* @deprecated Use {@link CatalogsApi.getItemsForCatalogCategory} instead
*/
getCatalogCategoryItems: typeof CatalogsApi.prototype.getItemsForCatalogCategory;
}
CatalogsApi.prototype.getCatalogCategoryItems = CatalogsApi.prototype.getItemsForCatalogCategory
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getVariantIdsForCatalogItem}
*
* @deprecated Use {@link CatalogsApi.getVariantIdsForCatalogItem} instead
*/
getCatalogItemRelationshipsVariants: typeof CatalogsApi.prototype.getVariantIdsForCatalogItem;
}
CatalogsApi.prototype.getCatalogItemRelationshipsVariants = CatalogsApi.prototype.getVariantIdsForCatalogItem
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.getVariantsForCatalogItem}
*
* @deprecated Use {@link CatalogsApi.getVariantsForCatalogItem} instead
*/
getCatalogItemVariants: typeof CatalogsApi.prototype.getVariantsForCatalogItem;
}
CatalogsApi.prototype.getCatalogItemVariants = CatalogsApi.prototype.getVariantsForCatalogItem
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.removeCategoriesFromCatalogItem}
*
* @deprecated Use {@link CatalogsApi.removeCategoriesFromCatalogItem} instead
*/
deleteCatalogItemRelationshipsCategories: typeof CatalogsApi.prototype.removeCategoriesFromCatalogItem;
}
CatalogsApi.prototype.deleteCatalogItemRelationshipsCategories = CatalogsApi.prototype.removeCategoriesFromCatalogItem
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.removeItemsFromCatalogCategory}
*
* @deprecated Use {@link CatalogsApi.removeItemsFromCatalogCategory} instead
*/
deleteCatalogCategoryRelationshipsItems: typeof CatalogsApi.prototype.removeItemsFromCatalogCategory;
}
CatalogsApi.prototype.deleteCatalogCategoryRelationshipsItems = CatalogsApi.prototype.removeItemsFromCatalogCategory
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.updateCategoriesForCatalogItem}
*
* @deprecated Use {@link CatalogsApi.updateCategoriesForCatalogItem} instead
*/
updateCatalogItemRelationshipsCategories: typeof CatalogsApi.prototype.updateCategoriesForCatalogItem;
}
CatalogsApi.prototype.updateCatalogItemRelationshipsCategories = CatalogsApi.prototype.updateCategoriesForCatalogItem
export interface CatalogsApi {
/**
* Alias of {@link CatalogsApi.updateItemsForCatalogCategory}
*
* @deprecated Use {@link CatalogsApi.updateItemsForCatalogCategory} instead
*/
updateCatalogCategoryRelationshipsItems: typeof CatalogsApi.prototype.updateItemsForCatalogCategory;
}
CatalogsApi.prototype.updateCatalogCategoryRelationshipsItems = CatalogsApi.prototype.updateItemsForCatalogCategory