PHPackages                             whatis/wbapi - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. whatis/wbapi

ActiveLibrary[API Development](/categories/api)

whatis/wbapi
============

Библиотека для взаимодействия с wildberries api

0.8.7(2y ago)211unlicensePHPPHP ^8.2

Since Dec 22Pushed 2y ago2 watchersCompare

[ Source](https://github.com/TheWhatis/WBAPI)[ Packagist](https://packagist.org/packages/whatis/wbapi)[ RSS](/packages/whatis-wbapi/feed)WikiDiscussions master Synced 3w ago

READMEChangelogDependencies (2)Versions (9)Used By (0)

Библиотека для WBAPI
====================

[](#библиотека-для-wbapi)

Документация
------------

[](#документация)

- [Documentation](https://github.com/TheWhatis/WBAPI/tree/master/docs/markdown/Home.md "Documentation")

Установка
---------

[](#установка)

```
composer require whatis/wbapi

```

Использование
-------------

[](#использование)

### Использование с ServiceManager

[](#использование-с-servicemanager)

```
/// ... Подключение пакета (require_once 'vendor/autoload.php')

use Whatis\WBAPI\Client\Client;
use Whatis\WBAPI\V1\Prices;

$token 'some.jwt.token.-asdffsdfJLA';
$prices = new Prices(new Client($clientId, $token));

var_dump($prices->get());
// ...
```

### С использованием ServiceManager

[](#с-использованием-servicemanager)

```
/// ... Подключение пакета (require_once 'vendor/autoload.php')

use Whatis\WBAPI\Client\Client;
use Whatis\WBAPI\ServiceManager;
use Whatis\WBAPI\ServiceCompositor;
use Whatis\WBAPI\Package\DefaultPackage;

$token 'some.jwt.token.-asdffsdfJLA';

// С использованием клиента
$manager = new ServiceManager(new Client($clientId, $token));

// Без использования клиента
$manager = new ServiceManager($token);

// Для работы с сервисами по-умолчанию, необходимо
// расширить менеджер пакетом DefaultPackage
$manager->package(new DefaultPackage);

// Вы можете расширять менеджер своими сервисами,
// например, создать псевдоним для существующего
$manager->extend('prices', fn ($manager) => $manager->service('v1/prices'));

// Или скомпановать несколько сервисов
// под одним названием
$manager->extend('composed', fn ($manager) => new ServiceCompositor([
    $manager->creator('v1/prices'),
    $manager->creator('v1/statistics')
]));

// Стандартное использование
var_dump($manager->use('prices')->get());
var_dump($manager->use('v1/prices')->get());
var_dump($manager->use('composed')->get());

// С автоматическим поиском сервиса и метода.
// Это работает так: делится название метода по
// Camel|Case, если находит название сервиса
// по одному из разделенных слов, то удаляет
// его из названия метода и вызывает его
// из сервиса: pricesGet->|prices|get
// getPrices->get|Prices|

var_dump($manager->pricesGet());
var_dump($manager->getPrices());
// ...
```

Создание своего сервиса
-----------------------

[](#создание-своего-сервиса)

```
