Обмен с api эвотор

1. user1619761 24.01.25 09:03 Сейчас в теме
Добрый день. Пытаюсь получить документы за определенную дату и определенного типа, в ответе получаю документы всех типов и за все даты. Пробовал сделать так
Добрый день. Пытаюсь получить документы за вчерашний день, приходят все документы. Подскажите, пожалуйста, что не так с запросом? [1C-CODE]АдресРесурса = "api.evotor.ru";
    ИмяМетода = "stores";
    Заголовки = Новый Соответствие;
    Заголовки.Вставить("Accept", "application/vnd.evotor.v2+json");
    Заголовки.Вставить("Content-Type", "application/vnd.evotor.v2+json");
    Заголовки.Вставить("Authorization", "Bearer " + Константы.ТокенДоступа.Получить());
    
    SSL = Новый ЗащищенноеСоединениеOpenSSL();        
    Соединение = Новый HTTPСоединение(АдресРесурса, , , , , , SSL);
    
    HTTPЗапрос = Новый HTTPЗапрос(ИмяМетода, Заголовки);
    
    Ответ = Соединение.Получить(HTTPЗапрос); 
    
    Если Ответ.КодСостояния = 200 Тогда
        
        ЧтениеJSON = Новый ЧтениеJSON;
        ЧтениеJSON.УстановитьСтроку(Ответ.ПолучитьТелоКакСтроку()); 
        ДанныеЗапроса = ПрочитатьJSON(ЧтениеJSON);                  
        ЧтениеJSON.Закрыть();    
        
        СписокТоваров = ПолучитьСписокТоваров(); 
        
        Для Каждого СтрокаДанных Из ДанныеЗапроса.items Цикл
            store_id = СтрокаДанных.id;    
            HTTPЗапрос.АдресРесурса = СтрШаблон("api/v1/inventories/stores/%1/documents?since=1705968000000&type=SELL", store_id); 
            
            Ответ = Соединение.Получить(HTTPЗапрос); 
            
            Если Ответ.КодСостояния = 200 Тогда
                ЧтениеJSON = Новый ЧтениеJSON;
                ЧтениеJSON.УстановитьСтроку(Ответ.ПолучитьТелоКакСтроку()); 
                ДанныеДокументов = ПрочитатьJSON(ЧтениеJSON);                  
                ЧтениеJSON.Закрыть();

////////////////////////////////////////////////////////////­////////////////////////////////////////////////////////////­///
АдресРесурса = "api.evotor.ru";
    ИмяМетода = "stores";
    Заголовки = Новый Соответствие;
    Заголовки.Вставить("Accept", "application/vnd.evotor.v2+json");
    Заголовки.Вставить("Content-Type", "application/vnd.evotor.v2+json");
    Заголовки.Вставить("Authorization", "Bearer " + Константы.ОбщепитТокенДоступа.Получить());
    
    SSL = Новый ЗащищенноеСоединениеOpenSSL();        
    Соединение = Новый HTTPСоединение(АдресРесурса, , , , , , SSL);
    
    HTTPЗапрос = Новый HTTPЗапрос(ИмяМетода, Заголовки);
    
    Ответ = Соединение.Получить(HTTPЗапрос); 
    
    Если Ответ.КодСостояния = 200 Тогда
        
        ЧтениеJSON = Новый ЧтениеJSON;
        ЧтениеJSON.УстановитьСтроку(Ответ.ПолучитьТелоКакСтроку()); 
        ДанныеЗапроса = ПрочитатьJSON(ЧтениеJSON);                  
        ЧтениеJSON.Закрыть();    
        
        СписокТоваров = ПолучитьСписокТоваров();
        
        ПараметрыЗапроса = Новый Структура;
        ПараметрыЗапроса.Вставить("since", 1705968000000); 
                ПараметрыЗапроса.Вставить("type", "SELL");
        МассивПараметров = Новый Массив;
        МассивПараметров.Добавить(ПараметрыЗапроса);
        
        ЗаписьJSON = Новый ЗаписьJSON;
        ЗаписьJSON.УстановитьСтроку();
        ЗаписатьJSON(ЗаписьJSON, МассивПараметров);
        ПараметрыСтрокой = ЗаписьJSON.Закрыть();
        
        Для Каждого СтрокаДанных Из ДанныеЗапроса.items Цикл
            store_id = СтрокаДанных.id;    
            HTTPЗапрос.АдресРесурса = СтрШаблон("api/v1/inventories/stores/%1/documents", store_id); 
            HTTPЗапрос.УстановитьТелоИзСтроки(ПараметрыСтрокой);
            
            Ответ = Соединение.Получить(HTTPЗапрос); 
            
            Если Ответ.КодСостояния = 200 Тогда
                ЧтениеJSON = Новый ЧтениеJSON;
                ЧтениеJSON.УстановитьСтроку(Ответ.ПолучитьТелоКакСтроку()); 
                ДанныеДокументов = ПрочитатьJSON(ЧтениеJSON);                  
                ЧтениеJSON.Закрыть();

////////////////////////////////////////////////////////////­////////////////////////////////////////////////////////////­/////////////////////////////
АдресРесурса = "api.evotor.ru";
    ИмяМетода = "stores";
    Заголовки = Новый Соответствие;
    Заголовки.Вставить("Accept", "application/vnd.evotor.v2+json");
    Заголовки.Вставить("Content-Type", "application/vnd.evotor.v2+json");
    Заголовки.Вставить("Authorization", "Bearer " + Константы.ОбщепитТокенДоступа.Получить());
    
    SSL = Новый ЗащищенноеСоединениеOpenSSL();        
    Соединение = Новый HTTPСоединение(АдресРесурса, , , , , , SSL);
    
    HTTPЗапрос = Новый HTTPЗапрос(ИмяМетода, Заголовки);
    
    Ответ = Соединение.Получить(HTTPЗапрос); 
    
    Если Ответ.КодСостояния = 200 Тогда
        
        ЧтениеJSON = Новый ЧтениеJSON;
        ЧтениеJSON.УстановитьСтроку(Ответ.ПолучитьТелоКакСтроку()); 
        ДанныеЗапроса = ПрочитатьJSON(ЧтениеJSON);                  
        ЧтениеJSON.Закрыть();    
        
        СписокТоваров = ПолучитьСписокТоваров();
        
        ПараметрыЗапроса = Новый Структура;
        ПараметрыЗапроса.Вставить("since", 1705968000000);  
                ПараметрыЗапроса.Вставить("type", "SELL");
       // МассивПараметров = Новый Массив;
        //МассивПараметров.Добавить(ПараметрыЗапроса);
        
        ЗаписьJSON = Новый ЗаписьJSON;
        ЗаписьJSON.УстановитьСтроку();
        ЗаписатьJSON(ЗаписьJSON, ПараметрыЗапроса);
        ПараметрыСтрокой = ЗаписьJSON.Закрыть();
        
        Для Каждого СтрокаДанных Из ДанныеЗапроса.items Цикл
            store_id = СтрокаДанных.id;    
            HTTPЗапрос.АдресРесурса = СтрШаблон("api/v1/inventories/stores/%1/documents", store_id); 
            HTTPЗапрос.УстановитьТелоИзСтроки(ПараметрыСтрокой);
            
            Ответ = Соединение.Получить(HTTPЗапрос); 
            
            Если Ответ.КодСостояния = 200 Тогда
                ЧтениеJSON = Новый ЧтениеJSON;
                ЧтениеJSON.УстановитьСтроку(Ответ.ПолучитьТелоКакСтроку()); 
                ДанныеДокументов = ПрочитатьJSON(ЧтениеJSON);                  
                ЧтениеJSON.Закрыть();

Показать
Подскажите, пожалуйста, что не так делаю? Документация rest api
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. user1040271 25.01.25 10:31 Сейчас в теме
Авторизуетесь Вы как v2, путь используете как из v1, а параметры по v2.

Чтобы получать документы в рамках v1 надо использовать эту документацию. Вот здесь пример интеграции.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот