|   |   | 
| 
 | Перестал работать PUT запрос на изменение статуса заказа в Яндекс-Маркете | ☑ | ||
|---|---|---|---|---|
| 0
    
        eddy_n 05.04.23✎ 10:42 | 
        Как выяснилось, уже 1,5 месяца примерно. Сразу могу сказать тело запроса - присутствует, зная о том, что PUT запрос без тела платформа 1С считает ошибочным и заменяет метод на HEAD.
 Заг = Новый Соответствие;
СтрЗаголовков = "OAuth oauth_token=""Зн_oauth_token"", oauth_client_id=""Зн_oauth_client_id""";
СтрЗаголовков = СтрЗаменить(СтрЗаголовков,"Зн_oauth_token", oauth_token);
СтрЗаголовков = СтрЗаменить(СтрЗаголовков,"Зн_oauth_client_id", oauth_client_id);
Заг.Вставить("Authorization", СтрЗаголовков);
Заг.Вставить("Content-type", "application/json");
Запрос = Новый HTTPЗапрос(Запр + Заказ.market_order_id + "/status.json", Заг);
Запрос.УстановитьТелоИзСтроки(СтрЗапроса, КодировкаТекста.UTF8);Запрос возвращает код состояния 400. Может substatus заказа (его в запросе нет) стал обязателен для абсолютно всех статусов заказа? | |||
| 1
    
        eddy_n 05.04.23✎ 10:40 | 
        Или стали обязательными Диапазон дат доставки и Реальная дата доставки?     | |||
| 2
    
        eddy_n 05.04.23✎ 10:55 | 
        А может перестало работать потому, что Запрос в 1с явно не определен как PUT?     | |||
| 3
    
        НафНаф 05.04.23✎ 10:58 | 
        (0) ну а где выполнение запроса?     | |||
| 4
    
        eddy_n 05.04.23✎ 11:03 | 
        (3) BAD REQUEST     | |||
| 5
    
        eddy_n 05.04.23✎ 12:50 | 
        Может ещё от схемы работы зависит: FBS, DBS?     | |||
| 6
    
        eddy_n 05.04.23✎ 12:51 | 
        И типа субстатус в зависимости от схемы - обязателен?     | |||
| 7
    
        timurhv 05.04.23✎ 13:03 | 
        Это?
 https://yandex.ru/dev/market/partner-api/doc/ru/reference/orders/updateOrderStatus#request В ответе есть причина отказа | |||
| 8
    
        eddy_n 05.04.23✎ 13:19 | 
        Это я видел. А если статус DELIVERY, DELIVERED?     | |||
| 9
    
        eddy_n 05.04.23✎ 13:28 | 
        Я уже и метод явно определил: PUT. Не помогло. Может даты?     | |||
| 10
    
        eklmn гуру 05.04.23✎ 14:39 | 
        не надо гадать, ответ будет в message
 { "status": "OK", "errors": [ { "code": "string", "message": "string" } ] } | |||
| 11
    
        eddy_n 05.04.23✎ 14:41 | 
        Кажется понял. Раньше запрос шёл через "v2...". Теперь скорее всего это не прокатывает. И надо явно прописывать "https://partner.market.yandex.ru..."     | |||
| 12
    
        eddy_n 05.04.23✎ 14:42 | 
        (10) Про месседж я писал: Bad Request.     | |||
| 13
    
        eddy_n 05.04.23✎ 17:11 | 
        Кажется, понял. Нельзя было включать в запрос пустой substatus. Субстатус должен включаться только в случае статусов PROCESSING и CANCELLED.     | |||
| 14
    
        FirstLine Support 05.04.23✎ 20:37 | 
        (13) в Постмане сначала попробуй, быстрее разберешься     | |||
| 15
    
        eddy_n 05.04.23✎ 20:49 | 
        (14) Всё уже разобрался. Не принимает Яндекс маркет статусы с пустым субстатусом.     | |||
| 16
    
        timurhv 05.04.23✎ 21:19 | 
        (15) У Я.Маркета заявлено свое расширение для 1С конфигураций, оно не работает или вы свою самописку используете?     | |||
| 17
    
        FirstLine Support 05.04.23✎ 21:30 | 
        (16) в том расширении используется процентов 30 от всей функциональности api, управление статусами я сам допиливал     | |||
| 18
    
        eddy_n 05.04.23✎ 21:55 | 
        (16) Свою. Она исторически раньше возникла. А вот Synchrozon похоже возьмём на вооружение.     | |||
| 19
    
        eddy_n 07.04.23✎ 06:00 | 
        В общем, кому интересно: у Яндекс-Маркета субстатус не должен быть пустым (пока во всяком случае) у статусов "DELIVERY" и "DELIVERED".     | |||
| 20
    
        eddy_n 07.04.23✎ 06:02 | 
        В моём случае - при отправке с используемой схемой DBS.     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |