---
title: "SDKs for the Wildberries Seller API"
description: "Auto-generated SDKs for Python, TypeScript, Go, Java, PHP, OneScript (1С), C# and Rust. One version across every ecosystem. Bearer tokens redacted by default."
lang: en-US
source: https://valeryverkhoturov.github.io/wb-api-client-docs/en/
---

# wb-api-client — Wildberries API, in your language.

Auto-generated SDKs for Python, TypeScript, Go, Java, PHP, OneScript (1С), C# and Rust. One version across every ecosystem. Bearer tokens redacted by default.

- **13 API categories, one package** — Every category — items, orders (FBS/DBW/FBW/DBS), promotion, analytics, finances, and the rest — ships as an isolated sub-module inside a single per-language package. No cross-category name clashes.
- **Secret redaction, built in** — Your bearer JWT is wrapped in a per-language SecretString so it stays out of logs, prints, and debuggers unless you explicitly ask for the raw value.
- **Daily upstream sync** — A CI job re-downloads the WB specs every morning. If anything changed, a new release is cut and pushed to PyPI, npm, Go, Maven Central, Packagist, hub.oscript.io, NuGet and crates.io automatically — with a matching git tag.
- **One version, eight ecosystems** — 1.YYYYMMDD.N — a valid stable semver in every language. pip / npm / go get / mvn / composer / opm / dotnet add / cargo add all pick the latest without prerelease dance.
- **Bearer auth, everywhere** — The upstream YAMLs conflate an API-key scheme with a bearer JWT. A post-processing pass strips that duplication so every generated client exposes exactly one auth path.
- **Deterministic regeneration** — Pinned openapi-generator + formatter versions + hidden generation timestamps. PRs that break determinism are caught by a per-PR regen check.

wb-api-client is a set of client libraries for the Wildberries Seller API: 13 categories (items, orders across FBS / DBW / FBW / DBS, promotion, analytics, finances and the rest) in eight languages, sharing one version and rebuilt from the official WB specs every day.

## Install

**Python**

```bash
pip install valeryverkhoturov-wb-api-client
```

**TypeScript**

```bash
npm install @valeryverkhoturov/wb-api-client
```

**Go**

```bash
go get github.com/ValeryVerkhoturov/wb-api-client-go@latest
```

**Java (Maven)**

```xml
<dependency>
  <groupId>io.github.valeryverkhoturov</groupId>
  <artifactId>wb-api-client</artifactId>
  <version>LATEST</version>
</dependency>
```

**PHP**

```bash
composer require valeryverkhoturov/wb-api-client
```

**OneScript**

```bash
opm install wb-api-client
```

**C#**

```bash
dotnet add package ValeryVerkhoturov.WbApiClient
```

**Rust**

```bash
cargo add wb-api-client
```

## Call something

**Python**

```python
from wb_api_client.items import Configuration, ApiClient
from wb_api_client.items.api import ItemsApi

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

**TypeScript**

```ts
import { Configuration, ItemsApi } from "@valeryverkhoturov/wb-api-client/items";

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

**Go**

```go
import wbitems "github.com/ValeryVerkhoturov/wb-api-client-go/items"

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

**Java**

```java
import io.github.valeryverkhoturov.wbapi.items.ApiClient;
import io.github.valeryverkhoturov.wbapi.items.api.ItemsApi;

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

**PHP**

```php
use ValeryVerkhoturov\WbApiClient\Items\Configuration;
use ValeryVerkhoturov\WbApiClient\Items\Api\ItemsApi;
use GuzzleHttp\Client;

$config = (new Configuration())
    ->setAccessToken('<your WB JWT>');
$api = new ItemsApi(new Client(), $config);
```

**OneScript**

```bsl
#Использовать "wb-api-client"

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

**C#**

```csharp
using ValeryVerkhoturov.WbApiClient.Items.Api;
using ValeryVerkhoturov.WbApiClient.Items.Client;

var config = new Configuration();
config.SetAccessToken("<your WB JWT>");
var api = new ItemsApi(config);
```

**Rust**

```rust
use wb_api_client::items::apis::{configuration::Configuration, items_api};

let mut cfg = Configuration::new();
cfg.set_access_token("<your WB JWT>");
```

Full tour of every sub-module, per-language: [Python](https://valeryverkhoturov.github.io/wb-api-client-docs/en/languages/python) · [TypeScript](https://valeryverkhoturov.github.io/wb-api-client-docs/en/languages/typescript) · [Go](https://valeryverkhoturov.github.io/wb-api-client-docs/en/languages/go) · [Java](https://valeryverkhoturov.github.io/wb-api-client-docs/en/languages/java) · [PHP](https://valeryverkhoturov.github.io/wb-api-client-docs/en/languages/php) · [OneScript](https://valeryverkhoturov.github.io/wb-api-client-docs/en/languages/onescript) · [C#](https://valeryverkhoturov.github.io/wb-api-client-docs/en/languages/csharp) · [Rust](https://valeryverkhoturov.github.io/wb-api-client-docs/en/languages/rust).

For LLM agents: [llms.txt](https://valeryverkhoturov.github.io/wb-api-client-docs/en/llms.txt) — an index of every page on the site, [llms-full.txt](https://valeryverkhoturov.github.io/wb-api-client-docs/en/llms-full.txt) — the whole documentation in one file.

<p align="center">
  <img src="/pics/blueberry-ascii-animated.webp" style="height: 200px; width: auto; max-width: 100%; object-fit: contain" alt="wb-api-client mascot">
</p>
