Имя: Пароль:
1C
 
Токен WB ответ HTTP запроса 401
0 bvb
 
13.05.26
14:38
Добрый день

Клиент 3 раз присылает мне сгенеренный токен статистики :

мHTTPЗапрос = Новый HTTPЗапрос(МетодAPI + СтрокаПараметры, мЗаголовки);
МетодAPI = "/api/v1/warehouse_remains";
СтрокаПараметры = "?groupByBrand=true&groupBySubject=true&groupBySa=true&groupByNm=true&groupByBarcode=true&groupBySize=true";

HTTP возвращает 401 - ошибку авторизации

Не могу понять толь они токен криво генерят, толи у меня параметры запроса неверны.

У других все нормально работает
1 timurhv
 
13.05.26
14:47
А где тут токен?
2 timurhv
 
13.05.26
14:48
У других - это кто?
Другие ваши клиенты и код из (0) отрабатывает?
Или соратники в интернете на форумах?
3 reg0303
 
13.05.26
14:49
Токен так передается?
мЗаголовки.Вставить("Authorization", Токен);
4 Garykom
 
гуру
13.05.26
15:13
мЗаголовки.Вставить("Authorized", Токен);
5 bvb
 
13.05.26
15:20
Все у меня так и есть :

&НаСервере
Функция СформироватьЗапрос_WB_API (Организация, мАдресСервераСтат, Токен, МетодAPI, СтрокаПараметры)  Экспорт
    
    мHTTPСоединение = Новый HTTPСоединение(мАдресСервераСтат,,,,,, Новый ЗащищенноеСоединениеOpenSSL());
    
    мЗаголовки = Новый Соответствие;
    мЗаголовки.Вставить("Authorization", Токен);
    
    мHTTPЗапрос = Новый HTTPЗапрос(МетодAPI + СтрокаПараметры, мЗаголовки);
    
    мТаб = Новый Массив;
    
    мРезультат = мHTTPСоединение.Получить(мHTTPЗапрос);
    Если мРезультат.КодСостояния = 200 Тогда
        
        мОтветJSON = мРезультат.ПолучитьТелоКакСтроку();
        мЧтениеJSON = Новый ЧтениеJSON;
        мЧтениеJSON.УстановитьСтроку(мОтветJSON);
        мРезультат = ПрочитатьJSON(мЧтениеJSON, Истина);
        
        мЧтениеJSON.Закрыть();
        
        Возврат мРезультат;
        
    Иначе
        ВызватьИсключение("Ошибка запроса остатков " + Строка(Организация) +  " :   Ошибка "+МетодAPI+"; КодСостояния =" + мРезультат.КодСостояния);
        Возврат Неопределено;
    КонецЕсли;
    
    Возврат мТаб;  
    
КонецФункции
6 reg0303
 
13.05.26
15:21
(4) https://dev.wildberries.ru/docs/openapi/api-information#tag/Avtorizaciya

"Чтобы авторизоваться в API, вам понадобится токен. Он действует 180 дней после создания. Добавляйте токен в заголовок запроса Authorization."
7 reg0303
 
13.05.26
15:43
Что мРезультат.ПолучитьТелоКакСтроку() пишет при 401 ошибке?
8 timurhv
 
13.05.26
15:47
Можно по документации в (6)
Сперва декодировать токен "Декодирование токена".
Далее попинговать методом "Проверка подключения к WB API". Как понимаю, могли дать токен от песочницы, а не рабочего контура (по 2 адреса в документации на разные категории).
9 bvb
 
13.05.26
16:20
Беда в том ячто я в порталы доступа не имею и токены не генерю.
И не понимаю что от них требовать а они не понимают что мне нужно дать.

И как выходить из это ситуации хз
10 timurhv
 
13.05.26
16:33
11 Garykom
 
гуру
13.05.26
16:34
(6) да вроде Authorization с Bearer
https://dev.wildberries.ru/en/news/144

Только ху из ACCESS_TOKEN а ху SECRET_TOKEN?
12 paramedic
 
13.05.26
17:08
А токен-то вообще подходит под тот раздел, куда запрос посылаете?
13 bvb
 
13.05.26
17:41
12   Хороший вопрос

А как это проверить ?

Меня смущает &groupByBarcode=true
Я не уверен что они используют баркоды (продукция без размера)

Но с другой стороны код о шибки соответствует ошибке авторизации
14 timurhv
 
13.05.26
18:15
(13) вы так и документацию не прочитали?
15 timurhv
 
13.05.26
18:18
Декодировать токен и получить бит s
16 timurhv
 
13.05.26
18:28
А вот пример на ИС:
https://infostart.ru/1c/tools/2288197/

(11) Это новость для бизнес-решений из каталога WB. По секретному ключу лимиты запросов другие.
https://dev.wildberries.ru/business-solutions
17 bvb
 
13.05.26
18:40
Вроде все норм

Информация о токене
API token
Активен
Тестовый контур
Выключен
Создан
13.05.2026, 12:04:16 GMT+03:00
Действует до
12.11.2026, 0:04:16 GMT+03:00
на чтение и запись
Уникальный ID токена

019e2094-651d-7705-b7fc-1fdc4f2a9a30
Уникальный ID продавца на Wildberries

abd04622-49cc-5ae1-b92b-bdf14698c56b
Категории, доступные в токене
Статистика
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой