UPD
Документация к v1 api обновлена. Теперь она вполне приятная и удобная(а не как раньше pdf файл). Если разработчики сделали это благодаря моему разбору - выражаю большую благодарность.
Так же прошу не обижаться на меня тех, кто решил поставить мне минусы за этот пост. Как мы можем видеть, возможно, это привело к хорошему результату.
Что касается остальных ошибок, сейчас сказать не могу, так как уже работаю с другими заказами и с другими апи, но ко мне в личные сообщения, до сих пор приходят вопросы касающегося плохо работающих методов в апи.
О себе
Разработчик-фрилансер, с опытом работы 2 года, а так же с большим количеством разного api (paypal, vk, moysklad и т. д.).
В этой статье, я не претендую на экспертность, а просто хочу рассказать свое субъективное мнение, об очень существенных на мой взгляд недостатках wildberries api.
Первое
Есть две версии апи и на каждую отдельная документация, в очень разных местах, при чем вторую обнаружить достаточно не тривиальная задача. Вместо двух документаций, лучше сделать одну и хорошо продуманную. (Если вам нужна полноценная документация вот ссылка)
Так же, я долго не мог понять, почему мой токен не подходит ко второй версии документации, а удалось мне это понять, только во время обсуждений в неофициальном чате разработчиков. Оказывается, что для этого нужно получать другой токен, во вкладке которая отображается только у владельца аккаунта. Как можно понять, владельцем аккаунта далеко не вседга является разработчик которому требуется апи wildberries. При этом, что более важно, об этом нету ни одного слова в документации.
Ошибки
429 (слишком частые запросы), появляется даже если я делаю запрос с перерывом в несколько минут. В чем её причина, можно только гадать. При обычном интервале в 3 секунды между тремя запросами — ошибка появляется практически при каждом запуске узла. При этом, никакой информации об ограничениях, в документации мне найти не удалось. Эта ошибка наиболее сильно мешает нормальной работе.
500 (ошибка сервера), стандартная ошибка, встречается почти в любых апи. Но очень хочется, что бы был отдельный канал в который будут приходить уведомления о работах на сервере или о внештатных ситуациях, и предполагаемом времени их решения.
В документации нету описания всех возможных кодов ошибок, как это сделано например в документации Вконтакте или МойСклад, в которых есть информация об ошибках на любой случай, и можно заранее написать обработчики этих ошибок.
Авторизация
Нельзя сгенерировать разные токены, с разными правами, для разных пользователей.
Нету возможности, обновления токена при новых запросах.
Функционал
Очень не хватает веб-хуков. Особенно учитывая, что есть ограничения на запросы с очень загадочными правилами.
Не хватает возможности, получать остатки/продажи товаров по Конкретному региону или складу/списку складов.
Синтаксические ошибки
Например в документации (не полная) указан ключ Date, но от сервера приходит словарь с ключом date. В полной документации такой ошибки нету.
Баги
Возможно только я с ними столкнулся, но как минимум два бага, сейчас не дают закончить проект на финишной прямой.
в остатках товара на складе, на сайте указано одно число, а в апи приходит другое. (на сайте остаток по номенклатуре N, на складе N - 7, а с апи приходит - 1)
не получается пройти авторизацию к апи из второй документации (v2).Инструкций для этого нету. И даже если пробовать делать запросы через формы на сайте, то в ответ приходит ошибка "Invalid token".
Техническая поддержка
Найти техническую поддержку именно для разработчиков мне не удалось. Сколько еще багов они не исправляют из-за этого, можно только гадать. Ибо многие просто перестают работать с их апи, или находят несоразмерно сложные решения, не обращаясь в тех поддержку из-за сложностей связанных с этим процессом именно в wildberries.
P. S.
Одной из предполагаемых причин ошибки 429, является работающий у меня VPN, в таком случае, хотелось бы получать информацию об ошибке из-за слишком частых запросов с одного IP.
Если у кого-то либо возникает желание порекомендовать отключить VPN, или отключить его для WB Api, то вам нужно понимать, что я использую VPN для защиты передаваемых в сеть данных, в связи с периодическими новостями о найденных в роутерах уязвимостях позволяющих получить злоумышленникам полный контроль над роутером, что в свою очередь позволяет перехватывать все отправляемые в сеть данные, в связи с чем я предпочитаю передавать данные в недоступном для злоумышленников виде, до первого относительно безопасного узла, коим и является VPN.
Написал этот пост без агрессии или претензий, а с надеждой на изменение wb api в лучшую сторону. Так же надеюсь этот будет полезен тем, кто проектирует новое апи.