{"openapi":"3.0.1","info":{"title":"OpenAPI definition","version":"v0"},"servers":[{"url":"http://api.partners.esc.ru","description":"Generated server url"}],"paths":{"/stu/v3/orders":{"post":{"tags":["Заказы СТУ"],"description":"Возвращает данные по заказам СТУ аптек.\n\nЕсли в запросе указаны аптеки - только по указанным аптекам.\n\nЕсли в запросе указаны аптеки, не привязанные к пользователю - данные аптеки будут исключены.\n\nЕсли в запросе не указаны аптеки - по всем аптекам пользователя.\n\nВ ответ <b>включаются</b> аптеки без заказов.\n\nВ составе номенклатуры возвращаются коды из таблицы соответствий аптеки.","operationId":"stu_orders_v3","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/stu_order_request"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/xml":{"schema":{"$ref":"#/components/schemas/response_v3"}}}},"401":{"description":"UNAUTHORIZED","content":{"application/json":{"example":{"error":"unauthorized","error_description":"Full authentication is required to access this resource"}}}}},"security":[{"bearerAuth":[]}]}},"/stu/v2/orders":{"post":{"tags":["Заказы СТУ"],"description":"Возвращает данные по заказам СТУ аптек.\n\nЕсли в запросе указаны аптеки - только по указанным аптекам.\n\nЕсли в запросе указаны аптеки, не привязанные к пользователю - данные аптеки будут исключены.\n\nЕсли в запросе не указаны аптеки - по всем аптекам пользователя.\n\nВ ответ <b>включаются</b> аптеки без заказов.\n\nВ составе номенклатуры возвращаются код в кабинете и код ФЭ номенклатуры.","operationId":"stu_orders_v2","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/stu_order_request"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/xml":{"schema":{"$ref":"#/components/schemas/response_v1"}}}},"401":{"description":"UNAUTHORIZED","content":{"application/json":{"example":{"error":"unauthorized","error_description":"Full authentication is required to access this resource"}}}}},"security":[{"bearerAuth":[]}]}},"/stu/v1/orders":{"post":{"tags":["Заказы СТУ"],"description":"Возвращает данные по заказам СТУ аптек.\n\nЕсли в запросе указаны аптеки - только по указанным аптекам.\n\nЕсли в запросе указаны аптеки, не привязанные к пользователю - данные аптеки будут исключены.\n\nЕсли в запросе не указаны аптеки - по всем аптекам пользователя.\n\nВ ответ <b>не включаются</b> аптеки без заказов.\n\nВ составе номенклатуры возвращаются код в кабинете и код ФЭ номенклатуры.","operationId":"stu_orders_v1","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/stu_order_request"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/xml":{"schema":{"$ref":"#/components/schemas/response_v1"}}}},"401":{"description":"UNAUTHORIZED","content":{"application/json":{"example":{"error":"unauthorized","error_description":"Full authentication is required to access this resource"}}}}},"security":[{"bearerAuth":[]}]}},"/1_0/stock":{"post":{"tags":["Остатки ПУЛЬС"],"description":"Полностью удаляет все текущие данные об остатках и заменяет их полученными данными.\n\n<b>Данные с количеством = 0 не сохраняются, поэтому, если в результате выполнения задачи total != added + error, это нормально.</b>","operationId":"stock-save","parameters":[{"name":"api_key","in":"query","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/stock_balance"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/PulsRequestIdResponse"}}}}}}},"/1_0/stock/task/{requestId}":{"get":{"tags":["Остатки ПУЛЬС"],"description":"Предоставляет отчет о статусе и результате выполнения запроса.","operationId":"stock-task","parameters":[{"name":"requestId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"api_key","in":"query","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/request_state_response"}}}}}}}},"components":{"schemas":{"stu_order_request":{"type":"object","properties":{"since":{"type":"string","description":"Дата и время, начиная с которых запрашиваются заказы, в формате yyyy-MM-dd'T'HH:mm:ss","example":"2024-02-17T13:50:00"},"pharmacies":{"type":"array","description":"Перечень кодов аптек, по которым запрашиваются заказы. Может быть пустым, в таком случае предоставляется информация по всех аптекам клиента.\n\nКод аптеки состоит из Почтового ID и Кода подразделения аптеки, разделяемых нижним подчеркиванием.\n\nМожет быть пустым.","example":["78_1|1|","147_1|1|"],"items":{"type":"string"}}},"description":"Запрос на получение данных по заказам СТУ аптек."},"STUOrderDtoBaseNomenclature_v3":{"type":"object","properties":{"order_id":{"type":"string","description":"ID заказа.","format":"uuid","example":"205767a3-0731-493e-94d6-e8fa0d5d3efc"},"order_date":{"type":"string","description":"Дата и время заказа в формате yyyy-MM-dd'T'HH:mm:ss","example":"2024-02-21T18:30:00"},"products":{"type":"array","xml":{"wrapped":true},"items":{"$ref":"#/components/schemas/STUOrderProductDtoBaseNomenclature_v3"}}},"xml":{"name":"order"}},"STUOrderProductDtoBaseNomenclature_v3":{"type":"object","properties":{"product_id":{"type":"integer","description":"ID продукта.","format":"int64","example":9074},"product_name":{"type":"string","description":"Наименование номенклатуры.","example":"Сенаде табл. 13.5мг бл. N500"},"quantity":{"type":"integer","description":"Количество к приобретению.","format":"int64","example":21},"nomenclatures":{"uniqueItems":true,"type":"array","xml":{"wrapped":true},"items":{"$ref":"#/components/schemas/nomenclature_v3"}}},"xml":{"name":"product"}},"STUPharmacyToOrdersDtoBaseNomenclature_v3":{"type":"object","properties":{"client_id":{"type":"integer","description":"Почтовый ID.","format":"int64","example":147},"pharmacy_id":{"type":"string","description":"Код подразделения.","example":"1|1|"},"orders":{"type":"array","xml":{"wrapped":true},"items":{"$ref":"#/components/schemas/STUOrderDtoBaseNomenclature_v3"}}},"xml":{"name":"pharmacy"}},"nomenclature_v3":{"type":"object","properties":{"nomenclature_name":{"type":"string","description":"Наименование номенклатуры.","example":"Сенаде табл. 13.5мг бл. N500 Cipla Ltd"},"map_nomenclature_codes":{"uniqueItems":true,"type":"array","example":["8217:13068:0:847","8217:13066:672:847"],"xml":{"wrapped":true},"items":{"type":"string","description":"Код номенклатуры в таблице соответствия аптеки.","xml":{"name":"map_nomenclature_code"}}}},"xml":{"name":"nomenclature"}},"response_v3":{"type":"object","properties":{"pharmacies_data":{"type":"array","xml":{"wrapped":true},"items":{"$ref":"#/components/schemas/STUPharmacyToOrdersDtoBaseNomenclature_v3"}}},"xml":{"name":"stu_orders"}},"STUOrderDtoBaseNomenclature_v1":{"type":"object","properties":{"order_id":{"type":"string","description":"ID заказа.","format":"uuid","example":"205767a3-0731-493e-94d6-e8fa0d5d3efc"},"order_date":{"type":"string","description":"Дата и время заказа в формате yyyy-MM-dd'T'HH:mm:ss","example":"2024-02-21T18:30:00"},"products":{"type":"array","xml":{"wrapped":true},"items":{"$ref":"#/components/schemas/STUOrderProductDtoBaseNomenclature_v1"}}},"xml":{"name":"order"}},"STUOrderProductDtoBaseNomenclature_v1":{"type":"object","properties":{"product_id":{"type":"integer","description":"ID продукта.","format":"int64","example":9074},"product_name":{"type":"string","description":"Наименование номенклатуры.","example":"Сенаде табл. 13.5мг бл. N500"},"quantity":{"type":"integer","description":"Количество к приобретению.","format":"int64","example":21},"nomenclatures":{"uniqueItems":true,"type":"array","xml":{"wrapped":true},"items":{"$ref":"#/components/schemas/nomenclature_v1"}}},"xml":{"name":"product"}},"STUPharmacyToOrdersDtoBaseNomenclature_v1":{"type":"object","properties":{"client_id":{"type":"integer","description":"Почтовый ID.","format":"int64","example":147},"pharmacy_id":{"type":"string","description":"Код подразделения.","example":"1|1|"},"orders":{"type":"array","xml":{"wrapped":true},"items":{"$ref":"#/components/schemas/STUOrderDtoBaseNomenclature_v1"}}},"xml":{"name":"pharmacy"}},"nomenclature_v1":{"type":"object","properties":{"nomenclature_name":{"type":"string","description":"Наименование номенклатуры.","example":"Сенаде табл. 13.5мг бл. N500 Cipla Ltd"},"cab_code":{"type":"integer","description":"Код в кабинете.","format":"int64","example":43020},"fe_code":{"type":"integer","description":"Код ФЭ.","format":"int64","example":1876}},"xml":{"name":"nomenclature"}},"response_v1":{"type":"object","properties":{"pharmacies_data":{"type":"array","xml":{"wrapped":true},"items":{"$ref":"#/components/schemas/STUPharmacyToOrdersDtoBaseNomenclature_v1"}}},"xml":{"name":"stu_orders"}},"stock_balance":{"type":"object","properties":{"quantity":{"minimum":0,"type":"integer","description":"Количество единиц на складе.","format":"int32","example":302},"product_id":{"type":"string","description":"ID продукта в формате UUID v4.","format":"uuid","example":"00000000-0000-4000-8000-000000003b26"},"pricetype":{"type":"string","description":"ID склада.","format":"uuid","example":"3d17fac4-c2c7-11e2-9360-00505692789a"}}},"PulsRequestIdResponse":{"type":"object","properties":{"request_id":{"type":"string","description":"ID, присвоенный поступившему запросу.","format":"uuid","example":"419651be-b4cf-44fb-9da1-1557b06e4919"}}},"Item":{"type":"object","properties":{"total":{"type":"integer","description":"Количество поступивших в запрос записей об остатках.","format":"int32","example":10},"updated":{"type":"integer","description":"Обновлено записей.","format":"int32","example":0},"added":{"type":"integer","description":"Сохранено записей.","format":"int32","example":8},"error":{"type":"integer","description":"Кол-во записей, обработанных с ошибкой.","format":"int32","example":2}}},"request_state_response":{"type":"object","properties":{"status":{"type":"string","description":"Статус выполнения запроса.","example":"done","enum":["created","done","done_with_errors","failed"]},"result":{"$ref":"#/components/schemas/save_or_update_response"}}},"save_or_update_response":{"type":"object","properties":{"items":{"$ref":"#/components/schemas/Item"},"errors":{"type":"array","example":["Ошибка валидации для остатка PulsStockBalance(productId=00000000-0000-4000-8000-000000002ec6, quantity=806, warehouseCode=null). Причина: key.pulsWarehouseCode: Код склада должен быть задан.","Ошибка валидации для остатка PulsStockBalance(productId=00000000-0000-4000-8000-0000000119ac, quantity=-1, warehouseCode=73f2f041-0ae1-11e7-a36b-00215acb9620). Причина: quantity: Количество должно быть положительным."],"items":{"type":"string","description":"Ошибки обработки полученных данных."}}}}}}}