"use strict";
/* tslint:disable */
/* eslint-disable */
/**
* Документация Ozon Seller API
* По вопросам работы с Seller API обращайтесь в поддержку через личный кабинет. > [Инструкции по работе с маркетплейсом](https://seller-edu.ozon.ru) > [Информационная платформа и сообщество разработчиков Ozon for dev](https://dev.ozon.ru/)
*
* The version of the OpenAPI document: 2.1
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.AnalyticsAPI = void 0;
const runtime = require("../runtime");
const index_1 = require("../models/index");
/**
*
*/
class AnalyticsAPI extends runtime.BaseAPI {
/**
* Метод для получения отчёта по остаткам и товарам в перемещении по складам Ozon.
* Отчёт по остаткам и товарам
*/
analyticsAPIAnalyticsGetStockOnWarehousesV2Raw(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
if (requestParameters['clientId'] == null) {
throw new runtime.RequiredError('clientId', 'Required parameter "clientId" was null or undefined when calling analyticsAPIAnalyticsGetStockOnWarehousesV2().');
}
if (requestParameters['apiKey'] == null) {
throw new runtime.RequiredError('apiKey', 'Required parameter "apiKey" was null or undefined when calling analyticsAPIAnalyticsGetStockOnWarehousesV2().');
}
if (requestParameters['analyticsStockOnWarehouseRequest'] == null) {
throw new runtime.RequiredError('analyticsStockOnWarehouseRequest', 'Required parameter "analyticsStockOnWarehouseRequest" was null or undefined when calling analyticsAPIAnalyticsGetStockOnWarehousesV2().');
}
const queryParameters = {};
const headerParameters = {};
headerParameters['Content-Type'] = 'application/json';
if (requestParameters['clientId'] != null) {
headerParameters['Client-Id'] = String(requestParameters['clientId']);
}
if (requestParameters['apiKey'] != null) {
headerParameters['Api-Key'] = String(requestParameters['apiKey']);
}
const response = yield this.request({
path: `/v2/analytics/stock_on_warehouses`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: (0, index_1.AnalyticsStockOnWarehouseRequestToJSON)(requestParameters['analyticsStockOnWarehouseRequest']),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.AnalyticsStockOnWarehouseResponseFromJSON)(jsonValue));
});
}
/**
* Метод для получения отчёта по остаткам и товарам в перемещении по складам Ozon.
* Отчёт по остаткам и товарам
*/
analyticsAPIAnalyticsGetStockOnWarehousesV2(clientId, apiKey, analyticsStockOnWarehouseRequest, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
const response = yield this.analyticsAPIAnalyticsGetStockOnWarehousesV2Raw({ clientId: clientId, apiKey: apiKey, analyticsStockOnWarehouseRequest: analyticsStockOnWarehouseRequest }, initOverrides);
return yield response.value();
});
}
/**
* Используйте метод, чтобы получить аналитику по остаткам товаров на складах. Метод соответствует разделу [**FBO → Управление остатками**](https://seller.ozon.ru/app/fbo-stocks/stocks-management/) в личном кабинете. Аналитика обновляется два раза в день: примерно в 07:00 и 16:00 по UTC. В запросе используйте только одно из полей: `cluster_ids` или `macrolocal_cluster_ids`, иначе вернётся ошибка.
* Получить аналитику по остаткам
*/
analyticsAPIAnalyticsStocksRaw(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
if (requestParameters['clientId'] == null) {
throw new runtime.RequiredError('clientId', 'Required parameter "clientId" was null or undefined when calling analyticsAPIAnalyticsStocks().');
}
if (requestParameters['apiKey'] == null) {
throw new runtime.RequiredError('apiKey', 'Required parameter "apiKey" was null or undefined when calling analyticsAPIAnalyticsStocks().');
}
if (requestParameters['v1AnalyticsStocksRequest'] == null) {
throw new runtime.RequiredError('v1AnalyticsStocksRequest', 'Required parameter "v1AnalyticsStocksRequest" was null or undefined when calling analyticsAPIAnalyticsStocks().');
}
const queryParameters = {};
const headerParameters = {};
headerParameters['Content-Type'] = 'application/json';
if (requestParameters['clientId'] != null) {
headerParameters['Client-Id'] = String(requestParameters['clientId']);
}
if (requestParameters['apiKey'] != null) {
headerParameters['Api-Key'] = String(requestParameters['apiKey']);
}
const response = yield this.request({
path: `/v1/analytics/stocks`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: (0, index_1.V1AnalyticsStocksRequestToJSON)(requestParameters['v1AnalyticsStocksRequest']),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.V1AnalyticsStocksResponseFromJSON)(jsonValue));
});
}
/**
* Используйте метод, чтобы получить аналитику по остаткам товаров на складах. Метод соответствует разделу [**FBO → Управление остатками**](https://seller.ozon.ru/app/fbo-stocks/stocks-management/) в личном кабинете. Аналитика обновляется два раза в день: примерно в 07:00 и 16:00 по UTC. В запросе используйте только одно из полей: `cluster_ids` или `macrolocal_cluster_ids`, иначе вернётся ошибка.
* Получить аналитику по остаткам
*/
analyticsAPIAnalyticsStocks(clientId, apiKey, v1AnalyticsStocksRequest, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
const response = yield this.analyticsAPIAnalyticsStocksRaw({ clientId: clientId, apiKey: apiKey, v1AnalyticsStocksRequest: v1AnalyticsStocksRequest }, initOverrides);
return yield response.value();
});
}
/**
* Используйте метод, чтобы узнать оборачиваемость товара и количество дней, на которое хватит текущего остатка. Метод соответствует разделу [**FBO -> Управление остатками**](https://seller.ozon.ru/app/supply/stocks-management) в личном кабинете. Вы можете делать не больше 1 запроса в минуту по одному кабинету `Client-Id`. Если вы запрашиваете список товаров по `sku`, параметры `limit` и `offset` необязательны.
* Оборачиваемость товара
*/
analyticsAPIStocksTurnoverRaw(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
if (requestParameters['clientId'] == null) {
throw new runtime.RequiredError('clientId', 'Required parameter "clientId" was null or undefined when calling analyticsAPIStocksTurnover().');
}
if (requestParameters['apiKey'] == null) {
throw new runtime.RequiredError('apiKey', 'Required parameter "apiKey" was null or undefined when calling analyticsAPIStocksTurnover().');
}
if (requestParameters['v1AnalyticsTurnoverStocksRequest'] == null) {
throw new runtime.RequiredError('v1AnalyticsTurnoverStocksRequest', 'Required parameter "v1AnalyticsTurnoverStocksRequest" was null or undefined when calling analyticsAPIStocksTurnover().');
}
const queryParameters = {};
const headerParameters = {};
headerParameters['Content-Type'] = 'application/json';
if (requestParameters['clientId'] != null) {
headerParameters['Client-Id'] = String(requestParameters['clientId']);
}
if (requestParameters['apiKey'] != null) {
headerParameters['Api-Key'] = String(requestParameters['apiKey']);
}
const response = yield this.request({
path: `/v1/analytics/turnover/stocks`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: (0, index_1.V1AnalyticsTurnoverStocksRequestToJSON)(requestParameters['v1AnalyticsTurnoverStocksRequest']),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.V1AnalyticsTurnoverStocksResponseFromJSON)(jsonValue));
});
}
/**
* Используйте метод, чтобы узнать оборачиваемость товара и количество дней, на которое хватит текущего остатка. Метод соответствует разделу [**FBO -> Управление остатками**](https://seller.ozon.ru/app/supply/stocks-management) в личном кабинете. Вы можете делать не больше 1 запроса в минуту по одному кабинету `Client-Id`. Если вы запрашиваете список товаров по `sku`, параметры `limit` и `offset` необязательны.
* Оборачиваемость товара
*/
analyticsAPIStocksTurnover(clientId, apiKey, v1AnalyticsTurnoverStocksRequest, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
const response = yield this.analyticsAPIStocksTurnoverRaw({ clientId: clientId, apiKey: apiKey, v1AnalyticsTurnoverStocksRequest: v1AnalyticsTurnoverStocksRequest }, initOverrides);
return yield response.value();
});
}
}
exports.AnalyticsAPI = AnalyticsAPI;