Skip to content

Create the Report ​

http
GET /api/v1/warehouse_remains

Base URL: https://seller-analytics-api.wildberries.ru · Module: reports · Section: Warehouses Inventory Report · Specification doc ↗

Creates a task for report generation. The parameters groupBy and filter can be set in any combination — similar to the version in the personal account.

Request limit per one seller account:

TypePeriodLimitIntervalBurst
Personal1 min1 request1 min5 requests
Service1 min1 request1 min5 requests
Base with secret1 min1 request1 min5 requests
Base1 h4 requests15 min1 request

Parameters ​

NameInTypeReq.Description
localequerystringnoLanguage of the subjectName and warehouseName response fields: - ru — Russian - en — English - zh — Chinese. Values of the warehouseName are in English
groupByBrandquerybooleannoGroup by brand
groupBySubjectquerybooleannoGroup by subcategory
groupBySaquerybooleannoGroup by seller item number
groupByNmquerybooleannoGroup by WB item number. If groupByNm=true, there will be volume field in the response
groupByBarcodequerybooleannoGroup by SKUs
groupBySizequerybooleannoGroup by size
filterPicsqueryinteger<int64>noPhoto filter: - -1 — without photo - 0 — do not apply filter - 1 — with photo
filterVolumequeryinteger<int64>noVolume filter: - -1 — without dimensions - 0 — do not apply filter - 3 — over three liters

Responses ​

CodeDescriptionSchema
200SuccessCreateTaskResponse
400Bad requestHttp4XXResponse
401Unauthorizedobject
402Payment requiredobject
403Access deniedobject
429Too many requestsobject

Structure 200:

  • data CreateTaskResponseData
    • taskId string — Task ID

Structure 400:

  • detail string — Error details
  • origin string — WB internal service ID
  • requestId string — Unique request ID
  • title string — Error title

Structure 401:

  • title string — Error title
  • detail string — Error details
  • code string — Internal error code
  • requestId string — Unique request ID
  • origin string — WB internal service ID
  • status number — HTTP status code
  • statusText string — Text of the HTTP status code
  • timestamp string — Request date and time

Structure 402:

Structure 403:

  • title string — Error title
  • detail string — Error details
  • code string — Internal error code
  • requestId string — Request ID
  • origin string — WB internal service ID
  • status number — HTTP status code
  • statusText string — Text of the HTTP status code
  • timestamp string — Request date and time

Structure 429:

  • title string — Error title
  • detail string — Error details
  • code string — Internal error code
  • requestId string — Unique request ID
  • origin string — WB internal service ID
  • status number — HTTP status code
  • statusText string — Text of the HTTP status code
  • timestamp string — Request date and time

Call examples ​

Arguments are shown as parameter names — substitute your own values. Languages whose client does not expose this operation are omitted.

python
from wb_api_client.reports import Configuration, ApiClient
from wb_api_client.reports.api import ReportsApi

cfg = Configuration(access_token="<your WB JWT>")
api = ReportsApi(ApiClient(cfg))

result = api.get_v1_warehouse_remains(locale=..., group_by_brand=..., group_by_subject=..., group_by_sa=..., group_by_nm=..., group_by_barcode=..., group_by_size=..., filter_pics=..., filter_volume=...)
print(result)
ts
import {
  Configuration,
  ReportsApi,
} from "@valeryverkhoturov/wb-api-client/reports";

const cfg = new Configuration({});
cfg.setAccessToken("<your WB JWT>");
const api = new ReportsApi(cfg);

const { data } = await api.getV1WarehouseRemains(locale, groupByBrand, groupBySubject, groupBySa, groupByNm, groupByBarcode, groupBySize, filterPics, filterVolume);
console.log(data);
go
import (
	"context"
	"fmt"

	wbreports "github.com/ValeryVerkhoturov/wb-api-client-go/reports"
)

cfg := wbreports.NewConfiguration()
cfg.SetAccessToken("<your WB JWT>")
client := wbreports.NewAPIClient(cfg)

result, _, err := client.ReportsAPI.GetV1WarehouseRemains(context.Background()).Execute()
if err != nil {
    panic(err)
}
fmt.Printf("%+v\n", result)
java
import io.github.valeryverkhoturov.wbapi.reports.ApiClient;
import io.github.valeryverkhoturov.wbapi.reports.SecretString;
import io.github.valeryverkhoturov.wbapi.reports.api.ReportsApi;

ApiClient client = new ApiClient();
client.setAccessToken(new SecretString("<your WB JWT>"));
ReportsApi api = new ReportsApi(client);

System.out.println(api.getV1WarehouseRemains(locale, groupByBrand, groupBySubject, groupBySa, groupByNm, groupByBarcode, groupBySize, filterPics, filterVolume));
php
use ValeryVerkhoturov\WbApiClient\Reports\Configuration;
use ValeryVerkhoturov\WbApiClient\Reports\SecretString;
use ValeryVerkhoturov\WbApiClient\Reports\Api\ReportsApi;
use GuzzleHttp\Client;

$config = (new Configuration())
    ->setAccessTokenSecret(new SecretString('<your WB JWT>'));
$api = new ReportsApi(new Client(), $config);

print_r($api->getV1WarehouseRemains());
bsl
#Использовать "wb-api-client"

Настройки = Новый Конфигурация();
Настройки.УстановитьТокен("<your WB JWT>");
Клиент = Новый ReportsApi(Настройки);

Сообщить(Клиент.GetV1WarehouseRemains().Тело);
csharp
using ValeryVerkhoturov.WbApiClient.Reports.Api;
using ValeryVerkhoturov.WbApiClient.Reports.Client;

var config = new Configuration();
config.AccessTokenSecret = new SecretString("<your WB JWT>");
var api = new ReportsApi(config);

Console.WriteLine(api.GetV1WarehouseRemains());
rust
use wb_api_client::reports::apis::{configuration::Configuration, reports_api};

#[tokio::main]
async fn main() {
    let mut cfg = Configuration::new();
    cfg.set_access_token("<your WB JWT>");

    let result = reports_api::get_v1_warehouse_remains(&cfg, locale, group_by_brand, group_by_subject, group_by_sa, group_by_nm, group_by_barcode, group_by_size, filter_pics, filter_volume).await;
    println!("{:#?}", result);
}