dakword / wbseller
Wildberries API client
Installs: 4 126
Dependents: 0
Suggesters: 0
Security: 0
Stars: 37
Watchers: 4
Forks: 16
Open Issues: 0
Requires
- php: ^7.4 || ^8.0
- guzzlehttp/guzzle: ^7.5
Requires (Dev)
- phpunit/phpunit: ^9.5.0
- 4.31.3
- 4.31.2
- 4.31.1
- 4.31.0
- 4.30.1
- 4.30.0
- 4.29.0
- 4.28.1
- 4.28.0
- 4.27.0
- 4.26.0
- 4.25.1
- 4.25.0
- 4.24.0
- 4.23.0
- 4.22.0
- 4.21.1
- 4.21.0
- 4.20.0
- 4.19.0
- 4.18.0
- 4.17.0
- 4.16.1
- 4.16.0
- 4.15.0
- 4.14.0
- 4.13.0
- 4.12.0
- 4.11.2
- 4.11.1
- 4.11.0
- 4.10.5
- 4.10.4
- 4.10.3
- 4.10.2
- 4.10.1
- 4.10.0
- 4.9.0
- 4.8.0
- 4.7.2
- 4.7.1
- 4.7.0
- 4.6.1
- 4.6.0
- 4.5.1
- 4.5.0
- 4.4.6
- 4.4.5
- 4.4.4
- 4.4.3
- 4.4.2
- 4.4.1
- 4.4.0
- 4.3.0
- 4.2.0
- 4.1.0
- 4.0.1
- 4.0.0
This package is not auto-updated.
Last update: 2025-03-05 18:52:38 UTC
README
Библиотека для работы с Wildberries API https://openapi.wb.ru
$wbSellerAPI = new \Dakword\WBSeller\API($options = [ 'masterkey' => 'token', //'keys' => [...], //'apiurls' => [...], //'locale' => 'ru' ]); // API Контента $contentAPI = $wbSellerAPI->Content(); $contentAPI->getCardsList(); // Получить список карточек
Поддерживаемые API
API | Endpoint |
---|---|
Общее | $wbSellerAPI->Common() |
Контент | $wbSellerAPI->Content() |
Цены и скидки | $wbSellerAPI->Prices() |
Маркетплейс | $wbSellerAPI->Marketplace() |
Статистика | $wbSellerAPI->Statistics() |
Аналитика | $wbSellerAPI->Analytics() |
Продвижение | $wbSellerAPI->Adv() |
Рекомендации | $wbSellerAPI->Recommends() |
Вопросы | $wbSellerAPI->Questions() |
Отзывы | $wbSellerAPI->Feedbacks() |
Тарифы | $wbSellerAPI->Tariffs() |
Чат с покупателями | $wbSellerAPI->Chat() |
Возвраты покупателями | $wbSellerAPI->Returns() |
Документы | $wbSellerAPI->Documents() |
Календарь акций | $wbSellerAPI->Calendar() |
Поставки | $wbSellerAPI->Supplies() |
Декодирование токена
try { $token = new \Dakword\WBSeller\APIToken('eyJhbGciOiJFUzI1NiIs...'); } catch (\Dakword\WBSeller\Exception\WBSellerException $exc) { echo $exc->getMessage(); // Неверный формат токена } echo $token->expireDate()->format('Y-m-d H:i:s'); // 2024-09-20 16:21:04 echo $token->isExpired() ? 'Просроченный' : 'Действительный'; echo $token->isReadOnly() ? 'Только чтение' : 'Чтение и запись'; echo $token->isTest() ? 'Для тестовой среды' : 'Рабочий'; echo $token->sellerId(); // 284034 echo $token->sellerUUID(); // 123e4567-e89b-12d3-a456-426655440000 echo $token->accessTo('marketplace') ? 'Yes' : 'No'; // Yes echo $token->accessTo('common') ? 'Yes' : 'No'; // Yes echo $token->accessTo('chat') ? 'Yes' : 'No'; // No echo implode(',', $token->accessList()); // 'Цены и скидки, Маркетплейс, Документы' echo implode(',', array_keys($token->accessList())); // '3, 4, 12' - Позиции бита echo $token; // eyJhbGciOiJFUzI1NiIs... print_r($token->getPayload());
Примеры использования WBSeller API
$wbSellerAPI = new \Dakword\WBSeller\API([ 'keys' => [ 'content' => 'Content_key', 'feedbacks' => 'FB_key', 'marketplace' => 'Marketplace_key', 'questions' => 'FB_key', ], 'masterkey' => 'multi_key', // 'content' + 'prices' + ... 'apiurls' => [ 'content' => 'https://suppliers-api.wb.ru', 'feedbacks' => 'https://feedbacks-api.wildberries.ru', 'adv' => 'https://advert-api-sandbox.wildberries.ru', 'analytics' => 'https://abc.site.ru', ], 'locale' => 'ru' ]); // Proxy $wbSellerAPI->useProxy('http://122.123.123.123:8088'); // Locale $wbSellerAPI->setLocale('en'); $contentApi = $wbSellerAPI->Content(); $pricesApi = $wbSellerAPI->Prices(); $marketApi = $wbSellerAPI->Marketplace(); // subAPI контента - теги $tagsApi = $wbSellerAPI->Content()->Tags(); // Получить список НМ $result = $contentApi->getCardsList(); if (!$result->error) { var_dump($result->cards, $result->cursor); } // Получение информации по ценам и скидкам $info = $pricesApi->getPrices(); var_dump($info); // Cписок складов поставщика $warehouses = $wbSellerAPI->Marketplace()->Warehouses()->list(); var_dump($warehouses); // Заказы FBS (С автоповтором запросов 💡) $orders = $marketApi->retryOnTooManyRequests(10, 1000)->getOrders(); var_dump($orders); // Создание КТ try { $createCardResult = $contentApi->createCard([ 'subjectID' => 105, 'variants' => [ [ 'vendorCode' => 'A0001', 'title' => 'Наименование', 'description' => 'Описание', 'brand' => 'Бренд', 'dimensions' => [ 'length' => 55, 'width' => 40, 'height' => 15, ], 'characteristics' => [ [ 'id' => 12, 'value' => 'свободный крой', ], [ 'id' => 88952, 'value' => 200, ], [ 'id' => 14177449, 'value' => ['red'], ], ], 'sizes' => [ [ 'techSize' => '39', 'wbSize' => '', 'price' => (int) 3999.99, 'skus' => [ '1000000001' ] ] ], ], ] ]); if ($createCardResult->error) { echo 'Ошибка создания карточки: ' . $createCardResult->errorText; } else { echo 'Запрос на создание карточки отправлен'; } } catch (\Dakword\WBSeller\Exception\WBSellerException $exc) { echo 'Исключение при создании карточки: ' . $exc->getMessage(); }