{"openapi":"3.0.1","info":{"title":"API для интеграции сервиса Яндекс Еда","description":"Описание API для работы с сервисом Яндекс Еда по моделям Yandex и\nMarketplace. Все методы, описанные ниже, должны быть реализованы на стороне\nпартнера в процессе интеграции. В части методов сервис Яндекс Еда выступает в роли\nклиента, а Вам необходимо реализовать серверную часть. Общение происходит на\nосновании pull-модели: сервис Яндекс Еда как клиент запрашивает\nинформацию о ресурсе либо может создавать или обновлять ресурсы если это\nнеобходимо.\n\nВ блоке Vendor Management Integration API описана push-модель,\nт.е. сервис Яндекс Еда выступает в роли сервера.\n\n\n# Authentication\n\n\n<!-- ReDoc-Inject: <security-definitions> -->\n","version":"1.0-oas3","x-logo":{"url":"public/logo.svg","altText":"Yandex.Eda logo"}},"servers":[{"url":""}],"tags":[{"name":"Аутентификация","description":"Аутентификация в системе"},{"name":"Меню","description":"Меню"},{"name":"Заказы","description":"Прием и обновление заказов от Яндекс Еды"},{"name":"Рестораны","description":"Список заведений партнера"},{"name":"Отзывы","description":"Отзыв клиента по заказу"},{"name":"Зоны доставки","description":"Получение зон доставки"},{"name":"График работы","description":"Получение графика работы ресторана"},{"name":"Vendor Management Integration API","description":"PUSH-методы работы с ресторанами\n\nДля PUSH-методов необходимо обращаться по адресу https://dc-partner.eda.yandex.net\n"}],"security":[{"OAuth2":["read","write"]}],"paths":{"/v1/feedback":{"post":{"tags":["Отзывы"],"summary":"Передать отзыв клиента по заказу.","description":"Передать отзыв клиента по заказу.\n\n{% note info %}\n\nМетод доступен только по подписке.\n\n{% endnote %}\n\nМетод для предоставления ответа на отзыв находится в блоке Vendor Management Integration API.\n","operationId":"partner.feedback.post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrderFeedback"}}},"required":true},"responses":{"200":{"description":"Отзыв успешно обработан внутренней системой ресторана.","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"string","example":"OK"}}}}}},"400":{"description":"Bad request. Ошибка в параметрах, **_В теле ответа ожидается массив с объектом из списка ошибок_**","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}},"401":{"description":"Не пройдена авторизация - истек токен, либо не был передан в\nзапросе. Будет сделан ретрай.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthorizationRequiredResponse"}}}},"500":{"description":"Внутренние ошибки сервера.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}}},"security":[{"OAuth2":["read","write"]}]}},"/oauth2/token":{"post":{"summary":"Получение токена авторизации","operationId":"BlocksAuth","tags":["Vendor Management Integration API"],"requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/AuthBody"}}},"required":true},"responses":{"200":{"description":"OK,","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthResponse"}}}},"401":{"description":"Ошибка авторизации"}}}},"/feedback-answer":{"post":{"tags":["Vendor Management Integration API"],"summary":"Ответить на отзыв клиента по заказу c возможностью отправить текст и/или промокод","description":"{% note info %}\n\nМетод доступен только по подписке.\n\n{% endnote %}\n","operationId":"feedback.answer","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PartnerFeedbackRequest"}}},"required":true},"responses":{"200":{"description":"Успешный запрос, ответ на отзыв отправлен клиенту. Без тела ответа."},"204":{"description":"Успешный запрос, но отзыв неакутален. В этом случае клиент ответ не получит, а также не удастся выдать клиенту промокод."},"400":{"description":"Неверный формат id отзыва. Без тела ответа."},"401":{"description":"Не пройдена авторизация - неправильный токен, либо не был передан в запросе.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PushAuthorizationRequiredResponse"}}}},"403":{"description":"У ресторана отсутствует подписка. Без тела ответа."},"404":{"description":"Отзыв не найден. Без тела ответа."}}}},"/block":{"post":{"summary":"Блокировка ресторанов","operationId":"Blocks","tags":["Vendor Management Integration API"],"parameters":[{"name":"Partner-Name","in":"header","description":"Имя партнера","schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Токен сформированный на стороне ЯЕды","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Blocks"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","additionalProperties":false}}}},"400":{"description":"Ошибка запроса","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Плейс не найден","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Ошибка сервиса","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v2/status":{"post":{"summary":"Получение статуса блокировок","operationId":"v2StatusBlocks","tags":["Vendor Management Integration API"],"parameters":[{"name":"Partner-Name","in":"header","description":"Имя партнера","schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Токен сформированный на стороне ЯЕды","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlockStatus"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/V2BlockStatusResponse"}}}},"400":{"description":"Ошибка запроса","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Плейс не найден","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Ошибка сервиса","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/unblock":{"post":{"summary":"Разблокировка ресторанов","operationId":"Unblocks","tags":["Vendor Management Integration API"],"parameters":[{"name":"Partner-Name","in":"header","description":"Имя партнера","schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Токен сформированный на стороне ЯЕды","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Unblocks"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","additionalProperties":false}}}},"400":{"description":"Ошибка запроса","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Плейс не найден","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Ошибка сервиса","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/menu/import/initiation":{"post":{"summary":"Инициация парсинга меню","description":"Принудительный запуск процесса обновления меню/стоп-листов\n","operationId":"MenuImport","tags":["Vendor Management Integration API"],"parameters":[{"name":"Partner-Name","in":"header","description":"Имя партнера","schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Токен сформированный на стороне ЯЕды","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MenuImportInitiation"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","additionalProperties":false}}}},"400":{"description":"Ошибка запроса","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Плейс не найден","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Ошибка сервиса","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/platform/orders/{orderId}/codes/validate":{"post":{"summary":"Валидация кода курьера","description":"Валидация кода для получения заказа курьером","operationId":"CourierCodeValidate","tags":["Vendor Management Integration API"],"parameters":[{"name":"orderId","in":"path","required":true,"description":"Идентификатор заказа во внешней системе","schema":{"type":"string"}},{"name":"Partner-Name","in":"header","description":"Имя партнера","schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Токен сформированный на стороне ЯЕды","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidateCodeRequest"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidateCodeResponse"}}}},"400":{"description":"Ошибка запроса","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Access denied"},"404":{"description":"Плейс не найден","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Conflict. Возможные причины:\n- 1001: Использованы все попытки валидации кода.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Ошибка сервиса","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/security/oauth/token":{"post":{"tags":["Аутентификация"],"summary":"Получить токен аутентификации","description":"Получает токен авторизации. Формат – OAuth 2.0. Токен передается в заголовке каждого запроса\nкак `Authorization : Bearer token`.\n\n{% note alert %}\n\nТело запроса должно быть передано в одну строку.\n\n{% cut \"Пример запроса\" %}\n\n```\ncurl -X 'POST' \\\n'{host}/security/oauth/token' \\\n-H 'accept: application/json' \\\n-H 'Content-Type: application/x-www-form-urlencoded' \\\n-d 'client_id=client_id&client_secret=client_secret&grant_type=client_credentials&scope=read%20write'\n```\n\n{% endcut %}\n\n{% endnote %}\n","operationId":"partner.auth.post","security":[],"requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/AuthenticationRequest"}}},"required":true},"responses":{"200":{"description":"Успешная аутентификация","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthenticationResponse"}}}},"400":{"description":"Ошибка в параметрах, в ответе список ошибок валидации","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}},"500":{"description":"Внутренние ошибки сервера","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}}}}},"/menu/{restaurantId}/composition":{"get":{"security":[{"OAuth2":["read"]}],"tags":["Меню"],"summary":"Получить актуальное меню ресторана","description":"Позиции, содержащие схематические или логические несоответствия (слишком длинная строка, цена равная 0.00) могут быть проигнорированы. Актуальная версия модели ответа - application/vnd.eats.menu.composition.v2+json","operationId":"partner.menu.get","parameters":[{"name":"restaurantId","in":"path","description":"Идентификатор ресторана в системе партнера","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK, возвращается актуальное на данный момент меню для указанного ресторана","content":{"application/vnd.eats.menu.composition.v2+json":{"schema":{"$ref":"#/components/schemas/MenuCompositionV2"}}}},"400":{"description":"Bad request. Ошибка в параметрах. **_В теле ответа ожидается массив с объектом из списка ошибок_**","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}},"401":{"description":"Не пройдена авторизация - истек токен, либо не был передан в запросе. Будет сделан ретрай","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthorizationRequiredResponse"}}}},"404":{"description":"Не найден ресторан. **_В теле ответа ожидается массив с объектом из списка ошибок_**","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}},"500":{"description":"Внутренние ошибки сервера. **_В теле ответа ожидается массив с объектом из списка ошибок_**","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}}}}},"/menu/{restaurantId}/availability":{"get":{"tags":["Меню"],"summary":"Получить позиции меню, недоступные для заказа на текущий момент","description":"Позиции, содержащие схематические или логические несоответствия (слишком длинная строка, остаток равен -10.00) могут быть проигнорированы. Актуальная версия модели ответа - application/vnd.eats.menu.availability.v2+json","operationId":"partner.availability.get","parameters":[{"name":"restaurantId","in":"path","description":"Идентификатор ресторана в системе партнёра","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Возвращает список позиций меню, недоступных на текущий момент в данном ресторане","content":{"application/vnd.eats.menu.availability.v2+json":{"schema":{"$ref":"#/components/schemas/MenuAvailabilityV2"}}}},"401":{"description":"Не пройдена авторизация - истек токен, либо не был передан в запросе. Будет сделан ретрай","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthorizationRequiredResponse"}}}},"404":{"description":"Не найден ресторан. **_В теле ответа ожидается массив с объектом из списка ошибок_**","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}},"500":{"description":"Внутренние ошибки сервера. **_В теле ответа ожидается массив с объектом из списка ошибок_**","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}}},"security":[{"OAuth2":["read","write"]}]}},"/menu/{restaurantId}/promos":{"get":{"tags":["Меню"],"summary":"Получить акционные блюда в связке с меню","description":"Метод используется для передачи подменного ID подарочного блюда для акции «блюдо в подарок».\n","operationId":"partner.promos.get","parameters":[{"name":"restaurantId","in":"path","description":"Идентификатор ресторана в системе партнера","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Возвращает список позиций акционных блюд меню, связанных с основным меню","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MenuPromo"}}}},"401":{"description":"Не пройдена авторизация - истек токен, либо не был передан в запросе. Будет сделан ретрай","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthorizationRequiredResponse"}}}},"404":{"description":"Не найден ресторан. **_В теле ответа ожидается массив с объектом из списка ошибок_**","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}},"500":{"description":"Внутренние ошибки сервера. **_В теле ответа ожидается массив с объектом из списка ошибок_**","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}}},"security":[{"OAuth2":["read"]}]}},"/restaurants":{"get":{"tags":["Рестораны"],"summary":"Получить список заведений партнера","description":"Получает список заведений партнера.","operationId":"partner.restaurants.get","responses":{"200":{"description":"Возвращает список ресторанов партнера","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestaurantList"}}}},"401":{"description":"Не пройдена авторизация - истек токен, либо не был передан в запросе. Будет сделан ретрай","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthorizationRequiredResponse"}}}},"500":{"description":"Внутренние ошибки сервера. **_В теле ответа ожидается массив с объектом из списка ошибок_**","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}}},"security":[{"OAuth2":["read"]}]}},"/restaurants/availability":{"get":{"tags":["Рестораны"],"summary":"Получить информацию об активности ресторанов сети","description":"Включение и отключение ресторанов в сервисе Яндекс Еда.\n\nДля проставления доступности или недоступности ресторана в сервисе\nЯндекс Еда следует передать соответствующее places.enabled значение.\nЕсли ресторан отсутствует в ответе партнера - доступность не меняется.\nВключить можно только рестораны, которые ранее не были отключены сервисом\nЯндекс Еда по другим причинам.","operationId":"partner.restaurants.availability.get","responses":{"200":{"description":"Список ресторанов с признаком активности","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestaurantAvailabilityList"}}}},"401":{"description":"Не пройдена авторизация - истек токен, либо не был передан в запросе","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthorizationRequiredResponse"}}}},"500":{"description":"Внутренние ошибки сервера. **_В теле ответа ожидается массив с объектом из списка ошибок_**","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}}},"security":[{"OAuth2":["read"]}]}},"/order":{"post":{"tags":["Заказы"],"summary":"Создать заказ в системе ресторана","description":"* `YandexOrder` – схема заказа при доставке Яндекс Еды.\n* `MarketplaceOrder` – схема заказа при доставке партнера.\n* `PickupOrder` – схема заказа при самовывозе.\n\nАктуальная версия модели запроса – application/vnd.eats.order.v2+json.\n","operationId":"partner.order.create","requestBody":{"content":{"application/vnd.eats.order.v2+json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/YandexOrderV2"},{"$ref":"#/components/schemas/MarketplaceOrderV2"},{"$ref":"#/components/schemas/PickupOrderV1"}],"discriminator":{"propertyName":"discriminator","mapping":{"marketplace":"#/components/schemas/MarketplaceOrderV2","yandex":"#/components/schemas/YandexOrderV2","pickup":"#/components/schemas/PickupOrderV1"}}}}},"required":true},"responses":{"200":{"description":"Заказ успешно обработан внутренней системой ресторана","content":{"application/json":{"schema":{"type":"object","required":["orderId"],"properties":{"result":{"type":"string","example":"OK"},"orderId":{"type":"string","description":"Идентификатор созданного заказа в системе партнера. Формат свободный. Рекомендуется UUID4.","example":"03d3b69b-331c-4f84-b2c4-888b30320e63"}}}}}},"400":{"description":"Bad request. Ошибка в параметрах. **_В теле ответа ожидается массив с объектом из списка ошибок_**","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}},"401":{"description":"Не пройдена авторизация – истек токен либо не был передан в запросе. Будет сделан ретрай.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthorizationRequiredResponse"}}}},"406":{"description":"Какие-то блюда в заказе находятся в стоплисте у партнёра. Переданные партнером блюда будут поставлены в стоп-лист. Если при следующем опросе стоп-листов этих блюд в нем не будет - то они вновь станут доступны. После этого клиенту предложат изменить заказ с учетом отсутствующих блюд. Если он согласится, то заказ вновь отправиться в ресторан со скорректированным составом.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnavailableGoodsResponse"}}}},"500":{"description":"Внутренние ошибки сервера.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}}},"security":[{"OAuth2":["read","write"]}]}},"/order/{orderId}":{"get":{"tags":["Заказы"],"summary":"Получить информацию о заказе в системе ресторана","description":"Получает информацию о заказе. Актуальная версия модели ответа - application/vnd.eats.order.v2+json","operationId":"partner.order.get","parameters":[{"name":"orderId","in":"path","description":"Идентификатор заказа в системе партнера","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Информация о заказе успешно выдана","content":{"application/vnd.eats.order.v2+json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/MarketplaceOrderV2"},{"$ref":"#/components/schemas/YandexOrderV2"},{"$ref":"#/components/schemas/PickupOrderV1"}],"discriminator":{"propertyName":"discriminator","mapping":{"marketplace":"#/components/schemas/MarketplaceOrderV2","yandex":"#/components/schemas/YandexOrderV2","pickup":"#/components/schemas/PickupOrderV1"}}}}}},"400":{"description":"Bad request. Ошибка в параметрах. **_В теле ответа ожидается массив с объектом из списка ошибок_**","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}},"401":{"description":"Не пройдена авторизация - истек токен, либо не был передан в запросе. Будет сделан ретрай","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthorizationRequiredResponse"}}}},"404":{"description":"Заказ не найден в системе. **_В теле ответа ожидается массив с объектом из списка ошибок_**","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}},"500":{"description":"Внутренние ошибки сервера. **_В теле ответа ожидается массив с объектом из списка ошибок_**","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}}},"security":[{"OAuth2":["read","write"]}]},"delete":{"summary":"Отменить заказ в системе ресторана","description":"Отменяет заказ в системе ресторана","operationId":"partner.order.cancel","tags":["Заказы"],"parameters":[{"name":"orderId","in":"path","required":true,"description":"Идентификатор заказа в системе партнера","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrderCancellation"}}},"required":true},"responses":{"200":{"description":"Заказ успешно отменен в ресторане"},"400":{"description":"Bad request. Ошибка в параметрах. **_В теле ответа ожидается массив с объектом из списка ошибок_**","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}},"401":{"description":"Не пройдена авторизация - истек токен, либо не был передан в запросе. Будет сделан ретрай","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthorizationRequiredResponse"}}}},"404":{"description":"Заказ не найден в системе. **_В теле ответа ожидается массив с объектом из списка ошибок_**","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}},"500":{"description":"Внутренние ошибки сервера. **_В теле ответа ожидается массив с объектом из списка ошибок_**","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}}},"security":[{"OAuth2":["read","write"]}]},"put":{"tags":["Заказы"],"summary":"Обновить заказ в системе ресторана","description":"Обновление состава заказа в системе партнера по инициативе Яндекс Еды. Для использования данного метода требуется согласование с сотрудниками Яндекса. Передается объект заказа целиком. Актуальная версия модели запроса - application/vnd.eats.order.v2+json","operationId":"partner.order.update","parameters":[{"name":"orderId","in":"path","required":true,"description":"Идентификатор заказа в системе партнера","schema":{"type":"string"}}],"requestBody":{"content":{"application/vnd.eats.order.v2+json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/MarketplaceOrderV2"},{"$ref":"#/components/schemas/YandexOrderV2"},{"$ref":"#/components/schemas/PickupOrderV1"}],"discriminator":{"propertyName":"discriminator","mapping":{"marketplace":"#/components/schemas/MarketplaceOrderV2","yandex":"#/components/schemas/YandexOrderV2","pickup":"#/components/schemas/PickupOrderV1"}}}}},"required":true},"responses":{"200":{"description":"Обновление заказа успешно обработано внутренней системой ресторана","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"string","example":"OK"}}}}}},"400":{"description":"Bad request. Ошибка в параметрах. **_В теле ответа ожидается массив с объектом из списка ошибок_**","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}},"401":{"description":"Не пройдена авторизация - истек токен, либо не был передан в запросе. Будет сделан ретрай.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthorizationRequiredResponse"}}}},"404":{"description":"Заказ не найден в системе. **_В теле ответа ожидается массив с объектом из списка ошибок_**","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}},"422":{"description":"Заказ не может быть обновлен","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}},"500":{"description":"Внутренние ошибки сервера. **_В теле ответа ожидается массив с объектом из списка ошибок_**","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}}},"security":[{"OAuth2":["read","write"]}]}},"/order/{orderId}/status":{"get":{"tags":["Заказы"],"summary":"Получить статус заказа в системе ресторана","description":"Получает статус заказа.","operationId":"partner.order.status","parameters":[{"name":"orderId","in":"path","description":"Идентификатор заказа в системе партнера","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Статус заказа успешно выдан","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrderStatus"}}}},"400":{"description":"Bad request. Ошибка в параметрах. **_В теле ответа ожидается массив с объектом из списка ошибок_**","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}},"401":{"description":"Не пройдена авторизация - истек токен, либо не был передан в запросе. Будет сделан ретрай","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthorizationRequiredResponse"}}}},"404":{"description":"Заказ не найден в системе. **_В теле ответа ожидается массив с объектом из списка ошибок_**","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}},"500":{"description":"Внутренние ошибки сервера. **_В теле ответа ожидается массив с объектом из списка ошибок_**","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}}},"security":[{"OAuth2":["read","write"]}]},"put":{"tags":["Заказы"],"summary":"Обновление статуса заказа со стороны Яндекс.Еды","description":"Обновление статуса заказа в системе партнера по инициативе Яндекс Еды. В общем случае отмену заказа Яндекс Еда передает через метод DELETE /order/{orderId}","operationId":"partner.order.status.put","parameters":[{"name":"orderId","in":"path","description":"Идентификатор заказа в системе партнера","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrderStatusPut"}}}},"responses":{"204":{"description":"Статус заказа успешно обновлен"},"400":{"description":"Bad request. Ошибка в параметрах. **_В теле ответа ожидается массив с объектом из списка ошибок_**","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}},"401":{"description":"Не пройдена авторизация - истек токен, либо не был передан в запросе. Будет сделан ретрай","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthorizationRequiredResponse"}}}},"404":{"description":"Заказ не найден в системе. **_В теле ответа ожидается массив с объектом из списка ошибок_**","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}},"500":{"description":"Внутренние ошибки сервера. **_В теле ответа ожидается массив с объектом из списка ошибок_**","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}}},"security":[{"OAuth2":["read","write"]}]}},"/order/{orderId}/courier":{"put":{"tags":["Заказы"],"summary":"Обновить информацию про курьера","description":"Передается объект, содержащий актуальную информацию о курьере.","operationId":"partner.order.courier.post","parameters":[{"name":"orderId","in":"path","description":"Идентификатор заказа в системе партнера","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CourierInfo"}}}},"responses":{"204":{"description":"Информация о курьере успешно обновлена"},"400":{"description":"Некорректный запрос","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}},"401":{"description":"Не пройдена авторизация - истек срок действия токена, либо не был\nпередан в запросе","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthorizationRequiredResponse"}}}},"404":{"description":"Заведение не найдено"}},"security":[{"OAuth2":["read"]}]}},"/places/{restaurantId}/zones":{"get":{"tags":["Зоны доставки"],"summary":"Получить зоны доставки ресторана","description":"Метод создания зон доставки в системах Яндекс Еды. Работает по расписанию (по умолчанию один раз в сутки в 9:00, возможно изменение/расширение интервала запроса по согласованию с Яндекс.Едой).\n\n{% note info %}\n\nМетод доступен только по подписке.\n\n{% endnote %}\n","parameters":[{"name":"restaurantId","in":"path","description":"Идентификатор торговой точки в системе партнера","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Успешно получен результат","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Zone"}}}}},"400":{"description":"Ошибка в параметрах, в ответе список ошибок валидации","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}},"401":{"description":"Ошибка авторизации, последует перезапрос токена","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthorizationRequiredResponse"}}}},"500":{"description":"Внутренние ошибки сервера","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}}}}},"/places/{restaurantId}/zone/meta":{"get":{"tags":["Зоны доставки"],"summary":"Получить данные доставки для обновления информации в зонах доставки","description":"Метод обновления уже созданных зон доставки. Работает с определенной периодичностью (по умолчанию раз в 5 минут). Вы можете обновлять параметры уже имеющихся в системах Яндекс Еды зон доставки. Например можно обновлять интервалы работы зоны, среднее время доставки в зонах, условия доставки. Нельзя изменять координаты зон. Для изменения координат придется создать новую зону.\n\n{% note info %}\n\nМетод доступен только по подписке.\n\n{% endnote %}\n","parameters":[{"name":"restaurantId","in":"path","description":"Идентификатор торговой точки в системе партнера","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Успешно получен результат","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ZoneMeta"}}}}},"400":{"description":"Ошибка в параметрах, в ответе список ошибок валидации","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}},"401":{"description":"Ошибка авторизации, последует перезапрос токена","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthorizationRequiredResponse"}}}},"500":{"description":"Внутренние ошибки сервера","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}}}}},"/places/{restaurantId}/schedule":{"get":{"tags":["График работы"],"summary":"Получить график работы ресторана","description":"Работает по расписанию (возможно изменение/расширение интервала запроса по согласованию с Яндекс.Едой).\n","parameters":[{"name":"restaurantId","in":"path","description":"Идентификатор торговой точки в системе партнера","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Успешно получен результат","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PlaceSchedule"}}}},"400":{"description":"Ошибка в параметрах, в ответе список ошибок валидации","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}},"401":{"description":"Ошибка авторизации, последует перезапрос токена","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthorizationRequiredResponse"}}}},"500":{"description":"Внутренние ошибки сервера","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorList"}}}}}}},"/v1/orders-history":{"post":{"tags":["Vendor Management Integration API"],"summary":"Получение истории заказов","description":"Позволяет получать информацию по заказам. Заказы можно фильтровать по нескольким фильтрам:\n    - Статус заказа\n    - Дате создания заказа\n    - Сервису, в котором сделан заказ\n\nОграничения метода:\n    - Максимальное количество заказов в ответе - 1000\n    - История хранится для заказов за последние 180 дней\n","operationId":"partner.orders.history.post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrdersHistoryRequestBody"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrdersHistoryResponse"}}}},"400":{"description":"Неуспешная валидация","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorV2"}}}},"500":{"description":"Ошибка сервиса","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorV2"}}}}}}},"/v1/get-orders-details":{"post":{"summary":"Детальная информация о заказах","description":"Позволяет получать подробную информацию по заказам.\n\nОграничения метода:\n    - В запросе можно передать не более 100 заказов\n    - История хранится для заказов за последние 180 дней\n","operationId":"partner.integration.v1.get.orders.details.post","tags":["Vendor Management Integration API"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/V1GetOrdersDetailsRequest"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/V1GetOrdersDetailsResponse"}}}},"400":{"description":"Ошибка запроса","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorV2"}}}},"500":{"description":"Ошибка сервиса","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorV2"}}}}}}},"/partner-integration/v1/place-info/v1/busy-mode-status":{"post":{"summary":"Получение списка ресторанов с активным статусом высокого спроса","description":"Высокий спрос можно установить через приложение Яндекс Еда Вендор, если\nресторан нагружен в данный момент и время приготовления заказов увеличилось.\n\nВ будущем будет возможно устанавливать и снимать высокий спрос через API\n","operationId":"partner.external.busy.mode.status.post","tags":["Vendor Management Integration API"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BusyModeStatusRequest"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BusyModeStatusResponse"}}}},"400":{"description":"Ошибка запроса","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorV2"}}}},"500":{"description":"Ошибка сервиса","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorV2"}}}}}}}},"components":{"securitySchemes":{"OAuth2":{"type":"oauth2","flows":{"clientCredentials":{"tokenUrl":"/security/oauth/token","scopes":{"read":"Доступ на чтение","write":"Доступ на запись"}}},"description":"Партнер у себя должен реализовать OAuth2 авторизацию. Минимальные требования: должен быть доступен метод для получения токена с client_id, client_secret, grand_type и scopes. Urls приведен ниже. Ссылка на полную спецификацию OAuth2 - https://tools.ietf.org/html/rfc6749"}},"parameters":{"Partner-Name":{"name":"Partner-Name","in":"header","description":"Имя партнера","schema":{"type":"string"}},"Authorization":{"name":"Authorization","in":"header","description":"Токен сформированный на стороне ЯЕды","schema":{"type":"string"}},"orderId":{"name":"orderId","in":"path","required":true,"description":"Идентификатор заказа во внешней системе","schema":{"type":"string"}}},"schemas":{"AuthenticationRequest":{"type":"object","properties":{"client_id":{"description":"Идентификатор клиента","type":"string","example":"client_id"},"client_secret":{"type":"string","description":"Секрет","example":"client_secret"},"grant_type":{"type":"string","description":"Тип доступа","default":"client_credentials"},"scope":{"type":"string","description":"Права доступа","default":"read write"}},"required":["client_id","client_secret","grant_type","scope"],"example":{"client_id":"123123123","client_secret":"ABCDEFGHIJKLMNOPQRSTUVWXYZ","grant_type":"client_credentials","scope":"read write"}},"AuthenticationResponse":{"description":"Модель результата успешной аутентификации. Единственное обязательное поле - access_token. Остальные возможные по спецификации поля - опциональны и не используются на стороне Yandex Eda","type":"object","properties":{"access_token":{"type":"string"}},"required":["access_token"],"example":{"access_token":"ABCDEFGHIJKLMNOPQRSTUVWXYZ"}},"MenuCompositionV2":{"type":"object","description":"Актуальная версия модели меню","properties":{"schedules":{"description":"Описание возможных типов расписаний категорий меню","$ref":"#/components/schemas/Schedule"},"categories":{"description":"Категории меню","items":{"$ref":"#/components/schemas/Category"},"type":"array"},"items":{"description":"Список блюд, доступных для заказа","items":{"$ref":"#/components/schemas/MenuCompositionItem"},"type":"array"},"combos":{"description":"Список комбо, доступных для заказа","type":"array","items":{"$ref":"#/components/schemas/MenuCompositionCombo"}},"lastChange":{"type":"string","description":"Дата последнего изменения меню ресторана (на стороне партнера). Важно: дата в формате RFC3339 с дробной частью секунд (Y-m-d\\TH:i:s.uP)! Если эта дата не менялась, Яндекс Еда может в автоматическом режиме принять решение о том, что обновлять меню не требуется. Если дата обновления в этом поле отличается от даты во время последнего обновления меню, то оно будет загружено заново","format":"date-time","example":"1937-01-01T12:00:27.870000+00:20"}},"required":["categories","lastChange","items"]},"Schedule":{"properties":{"scheduleName":{"description":"Объявление необходимого типа расписания. Тип определяется названием ключа. Например, breakfasts. Далее этот ключ используется в массиве расписаний у категорий меню.","items":{"$ref":"#/components/schemas/ScheduleName"},"type":"array"}}},"ScheduleName":{"properties":{"from":{"type":"string","description":"Время начала работы объявленного типа расписания, может принимать значения от 00:00 до 24:00","example":"08:00"},"till":{"type":"string","description":"Время окончания работы объявленного типа расписания, может принимать значения от 00:00 до 24:00","example":"09:45"},"weekdays":{"description":"Дни недели работы объявленного типа расписания","type":"array","items":{"type":"string","example":"monday","enum":["monday","tuesday","wednesday","thursday","friday","saturday","sunday"]}}},"required":["from","till","weekdays"]},"Category":{"properties":{"id":{"maxLength":64,"type":"string","description":"Внутренний идентификатор категории в системе партнера. Может быть любым значением, приводимым к строке. Рекомендация - UUID4","example":"5af86d5a-d92d-4e07-9271-aea0f7ef95a6"},"parentId":{"maxLength":64,"type":"string","description":"Уникальный идентификатор родительской категории для древовидной структуры. nullable: true. Не может быть пустой строкой. Ссылается на существующие категории. При загрузке адаптируется к плоской структуре категорий Яндекс.Еды (товары из подкатегорий попадают в родительские категории первого уровня)","example":"5af86d5a-d92d-4e07-9271-aea0f7ef95a6"},"schedules":{"type":"array","items":{"type":"string","description":"Тип расписания категории. Если указать пустой список или сослаться на пустую категорию, находящуюся в отдельном блоке schedules, то считаем категорию всегда доступной.","example":"breakfasts"}},"name":{"type":"string","description":"Наименование категории (например \"Завтраки\")","example":"Завтраки"},"sortOrder":{"type":"integer","description":"Порядок сортировки от меньшего к большему. Если не указан, считаем за 100","example":0},"images":{"description":"Изображение категории ресторана","type":"array","items":{"$ref":"#/components/schemas/CategoryImages"}}},"required":["id","name"]},"CategoryImages":{"type":"object","properties":{"url":{"type":"string","description":"Ссылка на изображение для скачивания","format":"uri"},"updatedAt":{"type":"string","description":"Дата обновления изображения, в формате RFC3339 с дробной частью секунд (Y-m-d\\TH:i:s.uP)","format":"date-time","example":"1937-01-01T12:00:27.870000+00:20"}},"required":["url","updatedAt"]},"MenuCompositionItem":{"properties":{"id":{"maxLength":64,"type":"string","description":"Внутренний идентификатор блюда в ресторане в системе партнера. Может быть любым значением, приводимым к строке. Рекомендация - UUID4","example":"e6709e9a-d3ab-4d1e-aa69-7ce30073cbc9"},"categoryId":{"maxLength":64,"type":"string","description":"Идентификатор категории в системе партнера","example":"fa494dc1-2578-4adb-a8fa-e270de8c3d28"},"name":{"type":"string","description":"Наименование блюда в ресторане (например \"Пирожки с вишней\")","example":"Вареники с творогом и вишней"},"description":{"type":"string","description":"Полное описание блюда","example":"Мука, вода, яичный порошок, вишня замороженная, творог 5%"},"price":{"type":"number","format":"double","description":"Цена продукта. Блюда с нулевой ценой пропускаются и не попадают в меню","example":1000},"vat":{"type":"number","format":"int32","description":"НДС, включенный в стоимость, в процентах, если не указан, считается за 0","example":20},"shippingType":{"type":"string","description":"Тип доставки доступный для блюда - доставка или самовывоз. Если не указан, то блюдо доступно как для доставки, так и для самовывоза","enum":["delivery","pickup"]},"isCatchweight":{"type":"boolean","description":"Флаг того, что позиция весовая","default":false,"example":false},"measure":{"type":"integer","description":"Характеристика измерений блюда - например вес или объем","example":666},"weightQuantum":{"type":"number","format":"float","description":"Наименьшее количество продукта (квант) доступное для заказа. Поле является обязательным, если значение isCatchweight равно true, иначе значение поля не используется","example":0.1},"measureUnit":{"type":"string","description":"Единица измерения. Допустимые значения - граммы и миллилитры","example":"г","enum":["г","мл","g","ml"]},"excise":{"type":"string","enum":["sugary_drink","other"],"description":"Признак акцизного товара. Также можно вместо ключа excise передавать метку [AT] (заглавными латинскими буквами в квадратных скобках) в name товара.","example":"sugary_drink"},"nutrients":{"description":"Параметры КБЖУ","$ref":"#/components/schemas/Nutrients"},"sortOrder":{"type":"integer","description":"Порядок сортировки от меньшего к большему. Если не указан, считаем за 100","example":0},"modifierGroups":{"type":"array","description":"Группы модификаторов для блюда. Обязательность модификаторов определяется параметром `minSelectedModifiers` в группе модификаторов.\n","items":{"$ref":"#/components/schemas/ModifierGroups"}},"images":{"description":"Изображение блюда","type":"array","items":{"$ref":"#/components/schemas/ItemsImages"}},"additional_descriptions":{"$ref":"#/components/schemas/MenuCompositionItemAdditionalDescriptions"},"adult_info":{"$ref":"#/components/schemas/AdultInfo"},"onlyForCombo":{"type":"boolean","description":"Блюдо только для комбо"}},"required":["categoryId","id","measureUnit","name","price","measure"]},"MenuCompositionCombo":{"type":"object","required":["id","categoryId","name","components","price"],"properties":{"id":{"type":"string","description":"Идентификатор комбо","example":"fa494dc1-2578-4adb-a8fa-e270de8c3d28"},"categoryId":{"type":"string","description":"Идентификатор категории в системе партнера","example":"fa494dc1-2578-4adb-a8fa-e270de8c3d28"},"name":{"type":"string","description":"Название комбо","example":"Комбо с Воппер По-Итальянски"},"description":{"type":"string","description":"Описание комбо"},"image":{"$ref":"#/components/schemas/ItemsImages"},"components":{"type":"array","items":{"$ref":"#/components/schemas/ComboComponent"}},"price":{"$ref":"#/components/schemas/ComboPrice"}}},"ComboComponent":{"type":"object","description":"Компонент комбо","required":["id","name","items"],"properties":{"id":{"type":"string","description":"Идентификатор компонента"},"name":{"type":"string","description":"Название компонента","example":"Горячее"},"sortOrder":{"type":"integer","description":"Порядок сортировки компоненты комбо","minimum":0},"items":{"type":"array","description":"Список позиций, которые можно выбрать как компонент комбо","items":{"$ref":"#/components/schemas/ComboComponentItem"}}}},"ComboComponentItem":{"type":"object","description":"Позиция в меню, которую можно выбрать как компонент комбо","required":["itemId"],"properties":{"itemId":{"$ref":"#/components/schemas/ItemId"},"sortOrder":{"type":"integer","description":"Порядок сортировки товара внутри компоненты комбо","minimum":0},"isDefault":{"type":"boolean","description":"Является ли данный продукт выбором по умолчанию\nЕсли не указано ни одного продукта в списке с такой опцией,\nто дефолтным будет первый продукт в списке\n"}}},"ComboPrice":{"oneOf":[{"$ref":"#/components/schemas/ComboFixedPrice"},{"$ref":"#/components/schemas/ComboItemFixedPrice"},{"$ref":"#/components/schemas/ComboSingleDiscountPrice"},{"$ref":"#/components/schemas/ComboItemDiscountsPrice"}],"discriminator":{"propertyName":"type","mapping":{"fixed":"#/components/schemas/ComboFixedPrice","item_fixed":"#/components/schemas/ComboItemFixedPrice","single_discount":"#/components/schemas/ComboSingleDiscountPrice","item_discounts":"#/components/schemas/ComboItemDiscountsPrice"}}},"ComboFixedPrice":{"type":"object","description":"Фиксированная цена на комбо.\nЦена на блюда в заказе будет распределена пропорционально их цене в меню.\nНапример, если цена комбо 2500 и оно состоит из блюд, цена которых в меню 1000 и 2000,\nто в заказе цены блюд будут 833.33 и 1666.67 соответственно\n","required":["type","price"],"properties":{"type":{"type":"string","enum":["fixed"]},"price":{"$ref":"#/components/schemas/Price"}}},"ComboItemFixedPrice":{"type":"object","description":"На каждую позицию в комбо предоставляется отдельная цена","required":["type","prices"],"properties":{"type":{"type":"string","enum":["item_fixed"]},"prices":{"type":"array","items":{"$ref":"#/components/schemas/ComboItemPrice"}}}},"ComboItemPrice":{"type":"object","description":"Цена для блюда в комбо","required":["itemId","price"],"properties":{"itemId":{"$ref":"#/components/schemas/ItemId"},"price":{"$ref":"#/components/schemas/Price"}}},"ComboSingleDiscountPrice":{"type":"object","description":"На комбо предоставляется процентная скидка, применяемая к сумме позиций в комбо","required":["type","discount"],"properties":{"type":{"type":"string","enum":["single_discount"]},"discount":{"$ref":"#/components/schemas/DiscountPercent"}}},"ComboItemDiscountsPrice":{"type":"object","description":"На каждую позицию в комбо предоставляется отдельная процентная скидка","required":["type","discounts"],"properties":{"type":{"type":"string","enum":["item_discounts"]},"discounts":{"type":"array","items":{"$ref":"#/components/schemas/ComboItemDiscount"}}}},"ComboItemDiscount":{"type":"object","description":"Скидка для блюда в комбо","required":["itemId","discount"],"properties":{"itemId":{"$ref":"#/components/schemas/ItemId"},"discount":{"$ref":"#/components/schemas/DiscountPercent"}}},"ItemId":{"type":"string","description":"Внутренний идентификатор блюда в ресторане в системе партнера. Может быть любым значением, приводимым к строке. Рекомендация - UUID4","example":"e6709e9a-d3ab-4d1e-aa69-7ce30073cbc9"},"DiscountPercent":{"type":"integer","minimum":0,"maximum":100,"description":"Размер скидки в процентах"},"Price":{"type":"string","pattern":"^-?[0-9]+(\\.[0-9]{1,2})?$"},"AdultInfo":{"type":"object","additionalProperties":false,"description":"Информация о adult-свойствах товара","required":["age_group"],"properties":{"age_group":{"$ref":"#/components/schemas/AgeGroup"},"alcohol_percentage":{"$ref":"#/components/schemas/AlcoholPercentage"}}},"AgeGroup":{"type":"integer","description":"Возрастное ограничение на товар","enum":[18,21]},"AlcoholPercentage":{"type":"string","pattern":"^[0-9]+(\\.[0-9]{1,2})?$","example":"12.34","description":"Процент содержания алкоголя в блюде. Число указывается только через точку."},"MenuCompositionItemAdditionalDescriptions":{"type":"object","additionalProperties":false,"description":"Дополнительные поля для описания блюда","properties":{"consisting_ingredients":{"description":"Перечень ингредиентов, из которых состоит блюдо. Это исходные компоненты блюда, а не его составные части. Желательно указать все ингредиенты, которые могут вызвать аллергию или сильно влияют на вкус. Так пользователи сразу увидят важные подробности о блюде.\nНапример: мука, яйца, вода, мясо.","type":"array","maxItems":100,"items":{"type":"string","example":"мука","maxLength":100}},"badges":{"type":"array","items":{"$ref":"#/components/schemas/MenuCompositionItemAdditionalDescriptionsBadge"}}}},"MenuCompositionItemAdditionalDescriptionsBadge":{"description":"Тэги блюда разделены на категории и значения. В каждой категории можно выбрать всего один вариант. При обработке из каждой категории будет браться первое валидное значение. Дублирующие, неизвестные категории или несоответствие значения категории будут пропущены.\nДоступные категории и их значения:\n* `food_specifics` - Особенности питания\n  - `halal` - халяль\n  - `meat_free` - без мяса\n* `food_spiciness` - острота\n  - `spicy` - острое\n* `cooking_method` - способ готовки\n  - `fried` - жареное\n  - `baked` - запечённое\n  - `grilled` - на гриле\n  - `not_cooked` - нужно готовить\n* `food_portion` - размер\n  - `portion_for_several_people` - на компанию\n  - `big_portion` - мегапорция\n  - `combo` - комбо","type":"object","required":["category","value"],"properties":{"category":{"type":"string","enum":["food_specifics","food_spiciness","cooking_method","food_portion"],"example":"cooking_method"},"value":{"type":"string","enum":["halal","meat_free","spicy","fried","baked","grilled","not_cooked","portion_for_several_people","big_portion","combo"],"example":"fried"}}},"Nutrients":{"description":"Энергетическая ценность продукта на 100гр","type":"object","properties":{"calories":{"type":"number","description":"Калории на 100гр","example":12.5},"proteins":{"type":"number","description":"Белки на 100гр","example":15.3},"fats":{"type":"number","description":"Жиры на 100гр","example":12.5},"carbohydrates":{"type":"number","description":"Углеводы на 100гр","example":15.3}},"required":["calories","proteins","fats","carbohydrates"]},"ModifierGroups":{"properties":{"id":{"type":"string","description":"Идентификатор группы модификаторов на стороне партнера. Может быть любым значением, приводимым к строке. Рекомендация - UUID4","example":"9987c815-3069-46ad-9626-74799fb22210"},"name":{"type":"string","description":"Наименование группы модификаторов","example":"Выбор приборов"},"modifiers":{"type":"array","description":"Опции, включаемые в группу","items":{"$ref":"#/components/schemas/Modifiers"}},"minSelectedModifiers":{"type":"integer","minimum":0,"maximum":255,"format":"int32","description":"Минимальное количество модификаторов, которые необходимо выбрать для данной группы. Не должно быть больше общего числа необходимых \"modifiers\" (с учетом их minAmount) и не должно быть больше maxSelectedModifiers","example":0},"maxSelectedModifiers":{"type":"integer","minimum":0,"maximum":255,"format":"int32","description":"Максимальное количество модификаторов, которые возможно выбрать для данной группы. Не должно быть меньше общего числа возможных \"modifiers\" (с учетом их maxAmount) и не должно быть меньше minSelectedModifiers","example":10},"sortOrder":{"type":"integer","description":"Порядок сортировки от меньшего к большему. Если не указан, считаем за 100.","example":0}},"required":["id","name","minSelectedModifiers","maxSelectedModifiers"]},"ItemsImages":{"properties":{"hash":{"type":"string","description":"SHA1-хэш от содержимого файла изображения. Рассчитывается партнером, служит признаком уникальности. В случае если он меняется, Яндекс Еда перезагружает картинку"},"url":{"type":"string","description":"Ссылка на изображение для скачивания","format":"uri"}},"required":["hash","url"]},"Modifiers":{"properties":{"id":{"type":"string","description":"Идентификатор модификатора на стороне партнера. Может быть любым значением, приводимым к строке. Рекомендация – UUID4. Этот идентификатор передаётся в заказе вместе с выбранным количеством","example":"916cfc99-acb4-4a96-9a42-b29159e88189"},"name":{"type":"string","description":"Название модификатора","example":"Европейские приборы"},"price":{"type":"number","format":"double","description":"Цена модификатора","example":150},"originalPrice":{"type":"number","format":"double","description":"Отдельное поле для передачи исходых цен опций/модификаторов. Пользователю не показывается. Используется для расчета суммы при частичных возвратах.\n","example":150},"vat":{"type":"integer","format":"int32","description":"НДС, включенный в стоимость, в процентах. Если не указан, считается за 0","example":20},"excise":{"type":"string","enum":["sugary_drink","other"],"description":"Признак акцизного товара. Вместо ключа excise можно передавать метку [AT] (заглавными латинскими буквами в квадратных скобках) в поле `name` модификатора.","example":"sugary_drink"},"minAmount":{"type":"integer","minimum":0,"maximum":255,"format":"int32","description":"Минимальное количество указанного модификатора для блюда в заказе. Должно быть меньше maxAmount.","example":0},"maxAmount":{"type":"integer","minimum":0,"maximum":255,"format":"int32","description":"Максимальное количество указанного модификатора для блюда в заказе. Это число не должно превышать значение параметра `maxSelectedModifiers` в модели `ModifierGroup` для заказа целиком. Например, вы поддерживаете 5 модификаторов в группе целиком, но максимальное значение модификатора для отдельного блюда указано 10 – такой модификатор не пройдет валидацию. Не будут загружены: некорректный модификатор, группа, к которой он принадлежит, а также пункты меню, в которых используются некорректные данные","example":10}},"required":["id","maxAmount","minAmount","name","price"]},"MenuAvailabilityV2":{"type":"object","description":"Актуальная версия модели доступности меню","properties":{"items":{"type":"array","description":"Список пунктов меню, по которым требуется изменить доступность","items":{"$ref":"#/components/schemas/MenuAvailabilityItems"}},"modifiers":{"type":"array","description":"Список модификаторов блюд, по которым требуется изменить доступность","items":{"$ref":"#/components/schemas/MenuAvailabilityModifiers"}},"combos":{"type":"array","description":"Список комбо, по которым требуется изменить доступность","items":{"$ref":"#/components/schemas/MenuAvailabilityCombos"}}},"required":["items","modifiers"]},"MenuAvailabilityItems":{"properties":{"itemId":{"type":"string","description":"Внутренний идентификатор блюда в ресторане в системе партнера. Может быть любым значением, приводимым к строке. Рекомендация – UUID4","example":"eff0cec0-058c-4d53-b524-1c04ac24fb51"},"stock":{"type":"integer","format":"int32","description":"Остаток в ресторане. При 0 блюдо пропадает из выдачи. Не обязательное поле. Если stock для itemId не передан, то остаток блюда считается за 0.","default":0,"example":5}},"required":["itemId"]},"MenuAvailabilityModifiers":{"properties":{"modifierId":{"type":"string","description":"Внутренний идентификатор модификатора в ресторане в системе партнера. Может быть любым значением, приводимым к строке. Рекомендация – UUID4","example":"eff0cec0-058c-4d53-b524-1c04ac24fb51"},"stock":{"type":"integer","format":"int32","description":"Остаток в ресторане. При 0 модификатор пропадает из выдачи. Не обязательное поле. Если stock для modifierId не передан, то остаток блюда считается за 0.","default":0,"example":5}},"required":["modifierId"]},"MenuAvailabilityCombos":{"properties":{"comboId":{"type":"string","description":"Внутренний идентификатор комбо в ресторане в системе партнера. Может быть любым значением, приводимым к строке. Рекомендация - UUID4"},"stock":{"type":"number","format":"float","default":0,"description":"Остаток в ресторане. При 0 комбо пропадает из выдачи. Не обязательное поле. Если не указан, считается за 0","example":5.5}},"required":["comboId"]},"MenuPromo":{"type":"object","properties":{"promoItems":{"type":"array","items":{"$ref":"#/components/schemas/PromoItems"}}},"required":["promoItems"]},"PromoItems":{"properties":{"id":{"type":"string","description":"ID блюда из основного меню","example":"string"},"promoId":{"type":"string","description":"ID акционного блюда","example":"string"}},"required":["id","promoId"]},"RestaurantList":{"type":"object","properties":{"places":{"type":"array","items":{"$ref":"#/components/schemas/Places"}}},"required":["places"]},"Places":{"properties":{"id":{"type":"string","description":"ID заведения в системе партнера","example":"123"},"title":{"type":"string","description":"Название заведения","example":"Test place"},"address":{"type":"string","description":"Адрес заведения","example":"City, str. Street, 1"}},"required":["id","title","address"]},"RestaurantAvailabilityList":{"properties":{"places":{"type":"array","items":{"$ref":"#/components/schemas/RestaurantAvailability"}}}},"RestaurantAvailability":{"type":"object","properties":{"id":{"type":"string","maxLength":255,"description":"ID заведения в системе партнера","example":"e89b-12d3-a456"},"enabled":{"type":"boolean","description":"Активность ресторана","nullable":false,"example":true}},"required":["id","enabled"]},"YandexOrderV2":{"type":"object","description":"Актуальная версия модели заказа по схеме доставки \"yandex\".","properties":{"platform":{"type":"string","description":"Идентификатор платформы:\n* YE – Yandex Eda.\n* DC – Delivery club.\n","enum":["YE","DC"]},"discriminator":{"type":"string","description":"Дискриминатор схемы обьекта. Для YandexOrder равен \"yandex\".","example":"yandex"},"eatsId":{"type":"string","description":"Сквозной идентификатор заказа на стороне Яндекс.Еды в формате DDDDDD-DDDDDDDD.","example":"190330-12345678"},"restaurantId":{"type":"string","description":"Внутренний идентификатор заведения в системе партнера, в которое передаётся заказ. Формат свободный, рекомендуется UUID4.","example":"937c57f6-4508-4858-be7f-20691a16fbb0"},"deliveryInfo":{"description":"Информация о доставке.","$ref":"#/components/schemas/YandexOrderDeliveryInfo"},"paymentInfo":{"$ref":"#/components/schemas/YandexOrderPaymentInfo"},"items":{"type":"array","items":{"$ref":"#/components/schemas/OrdersItem"}},"persons":{"type":"integer","description":"Количество персон, на которых оформлен заказ. Может влиять на количество комплектов приборов","example":2},"comment":{"type":"string","description":"Дополнительная информация о заказе","example":"Дополнительная информация о заказе: ..."},"promos":{"type":"array","description":"Список акций, действующих на весь заказ. Если у заказа объект \"promos\" не пустой, значит на него действует акция в системе партнера. Если пустой – это означает, что на заказ не действуют никакие акции","items":{"$ref":"#/components/schemas/OrdersPromoItem","type":"object"}}},"required":["discriminator","comment","nativeOrderDelivery","deliveryInfo","paymentInfo","eatsId","restaurantId","items","nativeOrderPayment","promos"]},"YandexOrderDeliveryInfo":{"properties":{"clientName":{"type":"string","description":"Имя клиента в сервисе Яндекс Еда","example":"Иванов Иван Иванович"},"phoneNumber":{"$ref":"#/components/schemas/PhoneNumber"},"additionalPhoneNumbers":{"description":"Список дополнительных номеров для связи с клиентом.","type":"array","items":{"$ref":"#/components/schemas/PhoneNumber"}},"courierArrivementDate":{"type":"string","description":"Дата, когда придет курьер в ресторан, в формате RFC3339 с дробной частью секунд (Y-m-d\\TH:i:s.uP).","format":"date-time","example":"1937-01-01T12:00:27.870000+00:20"},"realPhoneNumber":{"type":"string","description":"Номер телефона для связи с клиентом в международном формате. Состоит из частей \"+<код страны><номер>\". Указывается в случае если клиент дает согласие на обработку своих персональных данных","example":"79031111111"},"pickupCode":{"type":"string","description":"Код для идентификации курьера","example":123},"batches":{"type":"array","description":"Список идентификаторов заказов в системе Яндекс.Еды, входящих в один батч вместе с текущим заказом. Если заказ не входит в батч — передаётся пустой массив. Если информация о батчах пока недоступна — поле отсутствует.","example":["240425-1548210","240425-1548211"],"items":{"type":"string"}}},"required":["courierArrivementDate"]},"YandexOrderPaymentInfo":{"properties":{"itemsCost":{"type":"number","format":"double","example":100,"description":"Полная стоимость блюд в заказе, обычна равна сумме стоимости блюд, которые передает партнер в меню. Если в заказе есть скидка на корзину, то она учитывается и вычитается в этом поле."},"paymentType":{"type":"string","description":"Информация о типе оплаты. CARD – оплаченный заказа, CASH – неоплаченный заказ.","enum":["CARD","CASH"]}},"required":["itemsCost","paymentType"]},"OrdersItem":{"type":"object","properties":{"id":{"type":"string","description":"ID позиции меню в системе партнера","example":"937c57f6-4508-4858-be7f-20691a16fbb0"},"name":{"type":"string","description":"Наименование позиции меню","example":"Пицца Пепперони"},"quantity":{"type":"number","format":"float","description":"Количество позиции в заказе","example":3.5},"price":{"type":"number","format":"double","description":"Стоимость одной позиции вместе со стоимостью модификаций.","example":100},"modifications":{"type":"array","description":"Список выбранных модификаций. Может быть пустым, передаётся явно, для каждой отдельной позиции в заказе. При заказе двух позиций одного и того же блюда с разным набором модификаций - передаются разные позиции, с разными списками \"modifications\"","items":{"$ref":"#/components/schemas/OrdersModificationItem"}},"promos":{"type":"array","description":"Список акций, действующих на текущее блюдо. Если у блюда объект \"promos\" не пустой, значит на него действует акция в системе партнера. Если пустой – это означает, что на блюдо не действуют никакие акции","items":{"$ref":"#/components/schemas/OrdersPromoItem"}},"comboInfo":{"$ref":"#/components/schemas/OrderItemComboInfo"}},"required":["id","modifications","price","quantity","promos"]},"OrdersPromoItem":{"properties":{"type":{"type":"string","description":"Тип акции. Может быть подарок \"GIFT\", процентная скидка \"PERCENTAGE\", софинансируемая скидка \"COFINANCE\", фиксированная скидка \"FIXED\"","enum":["GIFT","PERCENTAGE","COFINANCE","FIXED"],"example":"GIFT"},"discount":{"type":"number","example":200,"description":"Сумма скидки в валюте, оплачиваемая партнёром"},"partner_discount":{"type":"number","example":100,"description":"Часть суммы скидки в валюте, оплачиваемая партнером"},"yandex_discount":{"type":"number","example":100,"description":"Часть суммы скидки в валюте, оплачиваемая Яндекс.Едой"}},"required":["type","discount"]},"OrdersModificationItem":{"properties":{"id":{"type":"string","description":"ID модификатора в системе партнера","example":"937c57f6-4508-4858-be7f-20691a16fbb0"},"group_id":{"type":"string","description":"ID группы в системе партнера, к которой принадлежит модификатор. Используется для однозначной идентификации модификатора при его дублировании.","example":"937c57f6-4508-4858-be7f-20691a16fbb1"},"name":{"type":"string","description":"Наименование модификатора","example":"Европейские приборы"},"quantity":{"type":"integer","description":"Количество в заказе","example":3},"price":{"type":"number","format":"double","description":"Цена модификатора для пункта меню (например - дополнительный соус)","example":100}},"required":["id","price","quantity"]},"OrderItemComboInfo":{"type":"object","description":"Информация о комбо, к которому относится данная позиция. Заполнено только для позиций, которые были выбраны в составе комбо.","required":["id","componentId"],"properties":{"id":{"type":"string","description":"ID комбо из меню, к которому относится данная позиция.","example":"937c57f6-4508-4858-be7f-20691a16fbb0"},"componentId":{"type":"string","description":"ID компонента комбо, к которому относится данная позиция.","example":"937c57f6-4508-4858-be7f-20691a16fbb0"}}},"MarketplaceOrderV2":{"type":"object","description":"Актуальная версия модели заказа по схеме доставки \"marketplace\"","properties":{"platform":{"type":"string","description":"Идентификатор платформы. YE - Yandex Eda, DC - Delivery club","enum":["YE","DC"]},"discriminator":{"type":"string","description":"Дискриминатор схемы обьекта. Для MarketplaceOrder равен \"marketplace\"","example":"marketplace"},"eatsId":{"type":"string","description":"Сквозной идентификатор заказа на стороне Яндекс.Еды в формате DDDDDD-DDDDDDDD","example":"190330-12345678"},"restaurantId":{"type":"string","description":"Внутренний идентификатор заведения в системе партнера, в которое передаётся заказ. Формат свободный, рекомендуется UUID4","example":"937c57f6-4508-4858-be7f-20691a16fbb0"},"deliveryInfo":{"description":"Информация о доставке","$ref":"#/components/schemas/MarketplaceOrderDeliveryInfo"},"paymentInfo":{"$ref":"#/components/schemas/MarketplaceOrderPaymentInfo"},"items":{"type":"array","items":{"type":"object","$ref":"#/components/schemas/OrdersItem"}},"persons":{"type":"integer","description":"Количество персон, на которых оформлен заказ. Может влиять на количество комплектов приборов","example":2},"comment":{"type":"string","description":"Дополнительная информация о заказе","example":"Дополнительная информация о заказе: ..."},"promos":{"type":"array","description":"Список акций, действующих на весь заказ. Если у заказа объект \"promos\" не пустой, значит на него действует акция в системе партнера. Если пустой – это означает, что на заказ не действуют никакие акции","items":{"$ref":"#/components/schemas/OrdersPromoItem"}}},"required":["discriminator","comment","marketplaceOrderDelivery","eatsId","restaurantId","items","deliveryInfo","paymentInfo","marketplaceOrderPayment","promos"]},"MarketplaceOrderDeliveryInfo":{"properties":{"clientName":{"type":"string","description":"Имя клиента в сервисе Яндекс Еда","example":"Иванов Иван Иванович"},"phoneNumber":{"$ref":"#/components/schemas/PhoneNumber"},"additionalPhoneNumbers":{"description":"Список дополнительных номеров для связи с клиентом.","type":"array","items":{"$ref":"#/components/schemas/PhoneNumber"}},"deliveryDate":{"type":"string","description":"Дата доставки (к которой клиент ожидает доставку заказа), в формате RFC3339 с дробной частью секунд (Y-m-d\\TH:i:s.uP)","format":"date-time","example":"1937-01-01T12:00:27.870000+00:20"},"deliveryAddress":{"description":"Информация об адресе доставки","$ref":"#/components/schemas/DeliveryAddress"}},"required":["clientName","deliveryAddress","deliveryDate","phoneNumber","type"]},"DeliveryAddress":{"properties":{"full":{"type":"string","description":"Полный адрес","example":"Москва, улица Тверская, дом 1 строение 4, подъезд 2. 4-й этаж, код домофона: 123 К 4567"},"latitude":{"type":"string","description":"Широта точки доставки","example":"55.756994"},"longitude":{"type":"string","description":"Долгота точки доставки","example":"37.614006"}},"required":["full","latitude","longitude"]},"MarketplaceOrderPaymentInfo":{"properties":{"paymentType":{"type":"string","description":"Информация о типе оплаты. CARD – уже оплаченный заказа, CASH – неоплаченный заказ.","enum":["CARD","CASH"]},"itemsCost":{"type":"number","format":"double","example":100,"description":"Полная стоимость блюд в заказе, обычна равна сумме стоимости блюд, которые передает партнер в меню. Если в заказе есть скидка на корзину, то она учитывается и вычитается в этом поле."},"deliveryFee":{"type":"number","format":"double","example":100,"description":"Стоимость доставки"},"total":{"type":"number","format":"double","example":200,"description":"Общая стоимость заказа. То есть itemsCost + deliveryFee"},"change":{"type":"number","format":"double","example":500,"description":"Сумма, с которой потребуется сдача."}},"required":["change","deliveryFee","itemsCost","paymentType"]},"PickupOrderV1":{"type":"object","description":"Актуальная версия модели заказа по схеме доставки \"pickup\"","properties":{"platform":{"type":"string","description":"Идентификатор платформы. YE - Yandex Eda, DC - Delivery club","enum":["YE","DC"]},"discriminator":{"type":"string","description":"Дискриминатор схемы обьекта. Для PickupOrder равен \"pickup\"","example":"pickup"},"eatsId":{"type":"string","description":"Сквозной идентификатор заказа на стороне Яндекс Еды в формате DDDDDD-DDDDDD","example":"190330-123456"},"restaurantId":{"type":"string","description":"Внутренний идентификатор заведения в системе партнера, в которое передаётся заказ. Формат свободный, рекомендуется UUID4","example":"937c57f6-4508-4858-be7f-20691a16fbb0"},"deliveryInfo":{"description":"Информация о доставке","$ref":"#/components/schemas/PickupOrderDeliveryInfo"},"paymentInfo":{"$ref":"#/components/schemas/PickupOrderPaymentInfo"},"items":{"type":"array","items":{"type":"object","$ref":"#/components/schemas/OrdersItem"}},"persons":{"type":"integer","description":"Количество персон, на которых оформлен заказ. Может влиять на количество комплектов приборов","example":2},"comment":{"type":"string","description":"Дополнительная информация о заказе","example":"Дополнительная информация о заказе: ..."},"promos":{"type":"array","description":"Список акций, действующих на весь заказ. Если у заказа объект \"promos\" не пустой, значит на него действует акция в системе партнера. Если пустой – это означает, что на заказ не действуют никакие акции","items":{"type":"object","$ref":"#/components/schemas/OrdersPromoItem"}}},"required":["discriminator","comment","deliveryInfo","eatsId","restaurantId","items","paymentInfo","promos"]},"PickupOrderDeliveryInfo":{"properties":{"clientName":{"type":"string","description":"Имя клиента в сервисе Яндекс Еда","example":"Иванов Иван Иванович"},"phoneNumber":{"$ref":"#/components/schemas/PhoneNumber"},"additionalPhoneNumbers":{"description":"Список дополнительных номеров для связи с клиентом.","type":"array","items":{"$ref":"#/components/schemas/PhoneNumber"}},"clientArrivementDate":{"type":"string","description":"Дата, когда придет клиент в ресторан, в формате RFC3339 с дробной частью секунд (Y-m-d\\TH:i:s.uP)","format":"date-time","example":"1937-01-01T12:00:27.870000+00:20"}},"required":["clientName","phoneNumber","clientArrivementDate"]},"PickupOrderPaymentInfo":{"properties":{"paymentType":{"type":"string","description":"Информация о типе оплаты","enum":["CARD","CASH"]},"itemsCost":{"type":"number","format":"double","example":100,"description":"Полная стоимость блюд в заказе, обычна равна сумме стоимости блюд, которые передает партнер в меню. Если в заказе есть скидка на корзину, то она учитывается и вычитается в этом поле."},"total":{"type":"number","format":"double","example":200,"description":"Общая стоимость заказа"},"change":{"type":"number","format":"double","example":500,"description":"Сумма, с которой потребуется сдача."}},"required":["change","itemsCost","paymentType"]},"ErrorItem":{"type":"object","properties":{"code":{"type":"integer","description":"Согласованный с Яндекс.Еда числовой код ошибки","example":100},"description":{"type":"string","description":"Сообщение об ошибке","example":"Description of error"}}},"ErrorList":{"type":"array","items":{"$ref":"#/components/schemas/ErrorItem"}},"OrderStatus":{"type":"object","properties":{"status":{"type":"string","description":"Статус заказа. Должен быть допустимым – например, приготовленный заказ\nнельзя снова сделать новым. Переход по статусам возможен только в\nуказанном направлении: от NEW до DELIVERED. Исключения: в статус\nCANCELLED заказ может перейти на любом этапе.\n\nОписание статусов:\n\n- NEW – новый, только отправлен в ресторан.\n- ACCEPTED_BY_RESTAURANT – заказ подтвержден рестораном.\n- COOKING – началось приготовление заказа.\n- READY – заказ приготовлен.\n- TAKEN_BY_COURIER – курьер забрал заказ из ресторана.\n- DELIVERED – заказ завершен.\n- CANCELLED – заказ отменён.\n\nNEW -> ACCEPTED_BY_RESTAURANT -> COOKING -> READY ->\nTAKEN_BY_COURIER -> DELIVERED. Из любого статуса -> CANCELLED\n","enum":["NEW","ACCEPTED_BY_RESTAURANT","COOKING","READY","TAKEN_BY_COURIER","DELIVERED","CANCELLED"]},"comment":{"maxLength":500,"type":"string","description":"Комментарий к смене статуса","example":"Новый заказ"},"updatedAt":{"type":"string","description":"Дата, когда сменился статус заказа, в формате RFC3339 с дробной частью секунд (Y-m-d\\TH:i:s.uP)","format":"date-time","example":"1937-01-01T12:00:27.870000+00:20"}},"required":["status"]},"OrderStatusPut":{"type":"object","properties":{"status":{"type":"string","description":"Статус заказа.\nОписание статусов: TAKEN_BY_COURIER - курьер забрал заказ из ресторана. DELIVERED - заказ завершен. CANCELLED - заказ отменён.","enum":["CANCELLED","TAKEN_BY_COURIER","DELIVERED"]},"attributes":{"type":"array","description":"Дополнительные аттрибуты при изменении статуса заказа, например признак оплаты при отмене","items":{"type":"string","example":"paid"}},"comment":{"maxLength":500,"type":"string","description":"Комментарий к смене статуса","example":"test"},"reason":{"type":"string","description":"Причина отмены заказа. Передается только со статусом CANCELLED","example":"place.unable_to_call"},"updatedAt":{"type":"string","description":"Дата, когда сменился статус заказа, в формате RFC3339 с дробной частью секунд (Y-m-d\\TH:i:s.uP)","example":"1937-01-01T12:00:27.870000+00:20"}},"required":["status"]},"OrderCancellation":{"type":"object","properties":{"eatsId":{"type":"string","description":"Сквозной идентификатор заказа на стороне Яндекс Еды в формате DDDDDD-DDDDDDDD","example":"190330-12345678"},"comment":{"type":"string","description":"Описание причин отмены (может быть пустым)","example":"Отказ клиента"}},"required":["eatsId"]},"AuthorizationRequiredResponse":{"type":"object","properties":{"reason":{"type":"string","description":"Причина, по которой не прошла авторизация","example":"Access token has been expired. You should request a new one"}},"required":["reason"]},"PushAuthorizationRequiredResponse":{"type":"object","properties":{"code":{"type":"string","description":"Причина, по которой не прошла авторизация","example":"invalid-token"},"message":{"type":"string","description":"Текстовое описании причины, по которой не прошла авторизация","example":"Bad token"}}},"UnavailableGoodsResponse":{"type":"object","additionalProperties":false,"properties":{"type":{"type":"string","example":"unavailable_goods"},"message":{"type":"string","example":"На данный момент товар недоступен для заказа: Омлет с крем-чизом и авокадо"},"goods":{"type":"object","description":"Словарь, где ключи – строковые идентификаторы блюд, значения – имена бюлюд","example":"{\"10000000003998\": \"Омлет с крем-чизом и авокадо\"}"}}},"OrderFeedback":{"type":"object","properties":{"feedback":{"$ref":"#/components/schemas/Feedback"},"orderInfo":{"$ref":"#/components/schemas/OrderInfo"}},"required":["feedback"]},"Feedback":{"type":"object","description":"Информация об отзыве клиента","properties":{"id":{"type":"string","description":"Идентификатор отзыва на стороне Яндекс.Еды"},"createdAt":{"type":"string","description":"Дата создания отзыва в формате RFC3339 с дробной частью секунд (Y-m-d\\TH:i:s.uP)","format":"date-time","example":"1937-01-01T12:00:27.870000+00:20"},"eatsId":{"type":"string","description":"Сквозной идентификатор заказа на стороне Яндекс.Еды в формате DDDDDD-DDDDDDDD","example":"190330-12345678"},"orderId":{"type":"string","description":"Идентификатор заказа в системе партнера"},"predefinedComment":{"type":"string","description":"Предопредленные комметарии на стороне Яндекс.Еды, выбранные клиентом"},"comment":{"type":"string","description":"Текстовый отзыв клиента по заказу"},"restaurantId":{"type":"string","description":"Идентификатор ресторана в системе партнера"},"rating":{"type":"integer","description":"Оценка клиента по заказу от 1 до 5","example":5},"takenAt":{"type":"string","description":"Дата, когда курьер забрал заказ из ресторана, в формате ISO 8601 без дробной части секунд (Y-m-d\\TH:i:s+hh:ss)","format":"date-time","example":"1937-01-01T12:00:27+00:20"},"deliveredAt":{"type":"string","description":"Дата, когда заказ был доставлен в формате ISO 8601 без дробной части секунд (Y-m-d\\TH:i:s+hh:ss)","format":"date-time","example":"1937-01-01T12:00:27+00:20"}},"required":["uuid","createdAt","eatsId","orderId","restaurantId","rating","deliveredAt","orderInfo"]},"OrderInfo":{"type":"object","description":"Информация о заказе","properties":{"createdAt":{"type":"string","description":"Дата создания отзыва в формате RFC3339 с дробной частью секунд (Y-m-d\\TH:i:s.uP)","format":"date-time","example":"1937-01-01T12:00:27.870000+00:20"},"platform":{"type":"string","description":"Идентификатор платформы. YE - Yandex Eda, DC - Delivery club","enum":["YE","DC"]},"discriminator":{"type":"string","description":"Тип доставки заказа:\n\nyandex - доставка курьерами Яндекс Еда\nmarketplace - доставка курьерами ресторана\npickup - самовывоз клиентом из ресторана\n","enum":["marketplace","yandex","pickup"],"example":"marketplace"},"deliveryInfo":{"description":"Информация о доставке","$ref":"#/components/schemas/DeliveryInfo"},"paymentInfo":{"$ref":"#/components/schemas/PaymentInfo"},"items":{"items":{"$ref":"#/components/schemas/OrderInfoItem"},"type":"array"},"comment":{"type":"string","description":"Дополнительная информация о заказе","example":"Дополнительная информация о заказе: ..."}},"required":["createdAt","discriminator","comment","marketplaceOrderDelivery","eatsId","items","deliveryInfo","paymentInfo","marketplaceOrderPayment"]},"DeliveryInfo":{"properties":{"clientName":{"type":"string","description":"Имя клиента в сервисе Яндекс Еда","example":"Иванов Иван Иванович"}},"required":["clientName"]},"PaymentInfo":{"properties":{"total":{"type":"number","format":"double","example":200.99,"description":"Общая стоимость заказа"}},"required":["total"]},"OrderInfoItem":{"properties":{"id":{"type":"string","description":"ID позиции меню в системе партнера","example":"937c57f6-4508-4858-be7f-20691a16fbb0"},"name":{"type":"string","description":"Наименование позиции меню","example":"Пицца Пепперони"},"quantity":{"type":"number","format":"float","description":"Количество позиции в заказе","example":3.5},"price":{"type":"number","format":"double","description":"Стоимость одной позиции вместе со стоимостью модификаций. В следующей версии будет исправлено на чистую цену позиции без модификаций","example":100},"modifications":{"description":"Список выбранных модификаций. Может быть пустым, передаётся\nявно для каждой отдельной позиции в заказе. При заказе двух позиций\nодного и того же блюда с разным набором модификаций передаются разные\nпозиции с разными списками `modifications`.\n","items":{"$ref":"#/components/schemas/ModificationsItem"},"type":"array"}},"required":["id","modifications","price","quantity"]},"ModificationsItem":{"properties":{"id":{"type":"string","description":"ID модификатора в системе партнера","example":"937c57f6-4508-4858-be7f-20691a16fbb0"},"name":{"type":"string","description":"Наименование модификатора","example":"Европейские приборы"},"quantity":{"type":"integer","description":"Количество в заказе","example":3},"price":{"type":"number","format":"double","description":"Цена модификатора для пункта меню (например - дополнительный соус)","example":100}},"required":["id","price","quantity"]},"Zone":{"type":"object","description":"Зона доставки","required":["coordinates","meta","name"],"properties":{"coordinates":{"type":"array","description":"Набор координат полигона, должен содержать упорядоченный набор точек координат","minLength":4,"maxLength":500,"items":{"$ref":"#/components/schemas/Point"}},"meta":{"$ref":"#/components/schemas/ZoneMeta"},"name":{"type":"string","minLength":1,"maxLength":255,"description":"Название зоны доставки"}}},"ZoneMeta":{"type":"object","description":"Дополнительные данные зоны доставки","required":["zoneId","enabled","intervals","averageDeliveryTime","thresholds"],"properties":{"zoneId":{"type":"string","minLength":1,"maxLength":255,"description":"Идентификатор зоны доставки в системе партнера"},"enabled":{"type":"boolean","description":"Флаг активности зоны доставки. При получении в ответе значения false зона станет неактивной."},"intervals":{"$ref":"#/components/schemas/Intervals"},"averageDeliveryTime":{"type":"number","description":"Среднее время ожидания доставки в минутах"},"thresholds":{"description":"Условия доставки","minLength":1,"maxLength":10,"type":"array","items":{"$ref":"#/components/schemas/Threshold"}},"courierType":{"type":"string","description":"Тип курьера","enum":["pedestrian","bicycle","vehicle","motorcycle"]}}},"Intervals":{"type":"object","description":"Расписание работы зоны доставки","required":["mon","tue","wed","thu","fri","sat","sun"],"properties":{"mon":{"type":"array","description":"Часы работы на понедельник, оставьте пустой массив для нерабочих дней","items":{"$ref":"#/components/schemas/Interval"}},"tue":{"type":"array","description":"Часы работы на вторник, оставьте пустой массив для нерабочих дней","items":{"$ref":"#/components/schemas/Interval"}},"wed":{"type":"array","description":"Часы работы на среду, оставьте пустой массив для нерабочих дней","items":{"$ref":"#/components/schemas/Interval"}},"thu":{"type":"array","description":"Часы работы на четверг, оставьте пустой массив для нерабочих дней","items":{"$ref":"#/components/schemas/Interval"}},"fri":{"type":"array","description":"Часы работы на пятницу, оставьте пустой массив для нерабочих дней","items":{"$ref":"#/components/schemas/Interval"}},"sat":{"type":"array","description":"Часы работы на субботу, оставьте пустой массив для нерабочих дней","items":{"$ref":"#/components/schemas/Interval"}},"sun":{"type":"array","description":"Часы работы на воскресенье, оставьте пустой массив для нерабочих дней","items":{"$ref":"#/components/schemas/Interval"}}}},"Interval":{"type":"object","description":"Интервал часов работы. Укажите 00:00-24:00 для круглосуточных зон. Часы работы указываются согласно локальной таймзоне ресторана.","required":["start","end"],"properties":{"start":{"type":"string","minLength":5,"maxLength":5,"description":"Время начала периода в формате HH:MM","example":"00:00"},"end":{"type":"string","minLength":5,"maxLength":5,"description":"Время окончания периода в формате HH:MM","example":"24:00"}}},"Threshold":{"type":"object","description":"Условия доставки","required":["orderCost","deliveryCost"],"properties":{"orderCost":{"type":"object","description":"Минимальная сумма заказа для доставки","allOf":[{"$ref":"#/components/schemas/Money"}]},"deliveryCost":{"type":"object","description":"Стоимость доставки. Укажите 0 для бесплатной доставки","allOf":[{"$ref":"#/components/schemas/Money"}]}}},"Point":{"type":"object","description":"Точка координат зоны","required":["lt","lg"],"properties":{"lt":{"type":"number","example":56.473673},"lg":{"type":"number","example":35.918658}}},"Money":{"type":"object","description":"Представление суммы денег","required":["currency","value"],"properties":{"currency":{"type":"string","description":"Трехбуквенное обозначение валюты ISO 4217","minLength":3,"maxLength":3,"example":"RUB"},"value":{"type":"number","description":"Значение в указанной валюте","minimum":0,"example":0}}},"PlaceSchedule":{"type":"object","description":"Расписание работы торговой точки партнера по дням недели","required":["mon","tue","wed","thu","fri","sat","sun"],"properties":{"mon":{"type":"array","description":"Часы работы на понедельник, оставьте пустой массив для нерабочих дней","minLength":0,"maxLength":10,"items":{"$ref":"#/components/schemas/Interval"}},"tue":{"type":"array","description":"Часы работы на вторник, оставьте пустой массив для нерабочих дней","minLength":0,"maxLength":10,"items":{"$ref":"#/components/schemas/Interval"}},"wed":{"type":"array","description":"Часы работы на среду, оставьте пустой массив для нерабочих дней","minLength":0,"maxLength":10,"items":{"$ref":"#/components/schemas/Interval"}},"thu":{"type":"array","description":"Часы работы на четверг, оставьте пустой массив для нерабочих дней","minLength":0,"maxLength":10,"items":{"$ref":"#/components/schemas/Interval"}},"fri":{"type":"array","description":"Часы работы на пятницу, оставьте пустой массив для нерабочих дней","minLength":0,"maxLength":10,"items":{"$ref":"#/components/schemas/Interval"}},"sat":{"type":"array","description":"Часы работы на субботу, оставьте пустой массив для нерабочих дней","minLength":0,"maxLength":10,"items":{"$ref":"#/components/schemas/Interval"}},"sun":{"type":"array","description":"Часы работы на воскресенье, оставьте пустой массив для нерабочих дней","minLength":0,"maxLength":10,"items":{"$ref":"#/components/schemas/Interval"}}}},"CourierInfo":{"type":"object","required":["courier","order","location"],"properties":{"courier":{"$ref":"#/components/schemas/CourierInfoCourier"},"order":{"$ref":"#/components/schemas/CourierInfoOrder"},"location":{"$ref":"#/components/schemas/CourierInfoLocation"},"maxPlaceArrivalTime":{"type":"string","format":"date-time","example":"1937-01-01T12:00:27.870000+00:20","description":"Рассчетное время прибытия курьера в ресторан\n в формате RFC3339 с дробной частью секунд (Y-m-d\\TH:i:s.uP)"}}},"CourierInfoLocation":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"string","example":"55.68195863024231"},"longitude":{"type":"string","example":"37.58948777728022"}}},"CourierInfoOrder":{"required":["orderNr"],"properties":{"orderNr":{"type":"string","description":"Сквозной идентификатор заказа на стороне Яндекс.Еды в формате DDDDDD-DDDDDDDD","example":"190330-12345678"},"batches":{"type":"array","description":"Список идентификаторов заказов в системе Яндекс.Еды, входящих в один батч вместе с текущим заказом. Если заказ не входит в батч — передаётся пустой массив. Если информация о батчах пока недоступна — поле отсутствует.","example":["240425-1548210","240425-1548211"],"items":{"type":"string"}}}},"CourierInfoCourier":{"required":["name","type"],"properties":{"name":{"type":"string","description":"Имя курьера","example":"Василий"},"type":{"description":"Тип курьера:\n* pedestrian - пешеход.\n* bicycle - велосипед.\n* vehicle - транспортное средство.\n* motorcycle - мотоцикл.\n* electric_bicycle - электрический велосипед.\n* rover - ровер (робот-доставщик).","enum":["pedestrian","bicycle","vehicle","motorcycle","electric_bicycle","rover"],"type":"string","default":"pedestrian"},"phone":{"$ref":"#/components/schemas/PhoneNumber"},"status":{"description":"Статус курьера\n* accepted - принял заказ.\n* arrived_to_source - прибыл на место.","enum":["accepted","arrived_to_source"],"type":"string","default":"accepted"}}},"PartnerFeedbackRequest":{"type":"object","required":["feedback_id","text"],"properties":{"feedback_id":{"type":"string","description":"id отзыва, на который надо ответить","example":1234567},"text":{"type":"string","description":"Текст ответа партнёра на отзыв"},"order_nr":{"type":"string","description":"Номер заказа на стороне Яндекс.Еды в формате DDDDDD-DDDDDDDD"},"promo":{"type":"integer","enum":[10,15,20,30,40],"description":"Промокод со скидкой в процентах"}}},"AuthBody":{"description":"Описания параметров авторизации","type":"object","additionalProperties":false,"required":["client_id","client_secret"],"properties":{"client_id":{"description":"Идентификатор клиента","type":"string"},"client_secret":{"description":"Секретный ключ","type":"string"}}},"AuthResponse":{"description":"Ответ при авторизации","type":"object","additionalProperties":false,"required":["access_token","expires_in"],"properties":{"access_token":{"description":"Токен","type":"string","example":"bqehYcfk7Tb2zKRkxQ-IaK9nHyntdYnlpJ7kwTNX3B6mIKPws"},"expires_in":{"description":"Время токена","type":"integer","example":120},"scope":{"type":"string","example":"vendor_management"},"token_type":{"description":"Тип токена","type":"string","example":"bearer"}}},"Blocks":{"type":"object","properties":{"vendorInfo":{"$ref":"#/components/schemas/VendorInfo"},"from":{"type":"string","description":"Дата и время начала блокировки","example":"2016-05-12T23:54:32+0100"},"to":{"type":"string","description":"Дата и время окончания блокировки (если не указано, то блокируется навсегда)","example":"2016-05-12T23:54:32+0100","nullable":true},"message":{"type":"string","description":"Причина блокировки","maxLength":4096,"nullable":true},"tag":{"type":"string","description":"Тег блокировки","enum":["technical_problem","too_busy"]}},"required":["vendorInfo","from","tag"]},"Unblocks":{"type":"object","properties":{"vendorInfo":{"$ref":"#/components/schemas/VendorInfo"},"blockIds":{"type":"array","description":"Список id блокировок","items":{"type":"string"}}},"required":["vendorInfo","blockIds"]},"BlockStatus":{"type":"object","properties":{"vendorInfo":{"$ref":"#/components/schemas/VendorInfo"},"statuses":{"$ref":"#/components/schemas/EffectStatuses"},"limit":{"type":"integer","description":"Лимит выдачи","default":100,"example":100},"offset":{"type":"integer","description":"Смещение выдачи","example":0,"default":0}},"required":["vendorInfo"]},"EffectStatuses":{"type":"array","items":{"type":"string","enum":["enabled"]}},"V2BlockStatusResponse":{"type":"object","additionalProperties":false,"required":["items"],"properties":{"items":{"type":"array","description":"Массив вендоров","items":{"$ref":"#/components/schemas/VendorObject"}}}},"VendorObject":{"type":"object","additionalProperties":false,"description":"Объект вендора","required":["vendorId","blockId","deliveryType","from"],"properties":{"vendorId":{"type":"string","description":"Идентификатор вендора","example":"17205"},"blockId":{"type":"string","description":"Идентификатор блокировки в сервисе"},"externalBlockId":{"type":"string","description":"Идентификатор блокировки у партнера"},"deliveryType":{"type":"string","enum":["ddc","marketplace"],"description":"Идентификатор блокировки"},"availableToCancel":{"type":"boolean","description":"Возможность разблокировки"},"status":{"type":"string","enum":["enabled","disabled"],"description":"Статус блокировки"},"from":{"type":"string","description":"Дата и время начала блокировки","example":"2016-05-12T23:54:32+0100"},"to":{"type":"string","description":"Дата и время окончания блокировки","example":"2016-05-12T23:54:32+0100"},"source":{"type":"string","description":"Источник блокировки (имя партнера или delivery club)","example":"delivery club"},"message":{"type":"string","description":"Комментарий к блокировке (полученный от партнера) или описание блокировки от сервиса"}}},"VendorInfo":{"type":"array","items":{"$ref":"#/components/schemas/Vendor"}},"Vendor":{"type":"object","properties":{"vendorId":{"type":"string","description":"Id ресторана в системе партнера","example":"819711"},"deliveryType":{"type":"string","description":"Тип доставки","enum":["ddc","marketplace"],"example":"ddc"}}},"MenuImportInitiation":{"type":"object","additionalProperties":false,"properties":{"restaurantId":{"type":"string","maxLength":512,"description":"Идентификатор ресторана в системе партнера"},"operationType":{"$ref":"#/components/schemas/OperationType"}},"required":["restaurantId"]},"OperationType":{"type":"string","enum":["menu","menu_stop_list"],"default":"menu","description":"menu - парсинг меню, menu_stop_list - парсинг стоп-листа\n"},"ValidateCodeRequest":{"type":"object","additionalProperties":false,"required":["code"],"properties":{"code":{"type":"string","description":"Код, который необходимо провалидировать"}}},"ValidateCodeResponse":{"type":"object","additionalProperties":false,"required":["is_valid"],"properties":{"is_valid":{"type":"boolean","description":"Результат валидации."},"validation_attempts_left":{"type":"integer","description":"Количество оставшихся попыток для валидации."}}},"Error":{"description":"Описание ошибки","type":"object","required":["message","code"],"properties":{"message":{"description":"Сообщение об ошибке","type":"string"},"code":{"description":"Код ошибки","type":"integer"}}},"V1GetOrdersDetailsRequest":{"type":"object","additionalProperties":false,"required":["eats_ids"],"properties":{"eats_ids":{"type":"array","description":"Список номеров заказов для поиска","minItems":1,"maxItems":100,"items":{"$ref":"#/components/schemas/EatsId"}}}},"V1GetOrdersDetailsResponse":{"type":"object","additionalProperties":false,"required":["orders","not_found_eats_ids"],"properties":{"orders":{"type":"array","description":"Список заказов с детальной информацией","items":{"$ref":"#/components/schemas/OrderDetails"}},"not_found_eats_ids":{"type":"array","description":"Список номеров заказов, по которым информация не найдена или недоступна","items":{"$ref":"#/components/schemas/EatsId"}}}},"OrderDetails":{"type":"object","description":"Заказ с детальной информацией","additionalProperties":false,"required":["eats_id","order_id","status","items"],"properties":{"eats_id":{"$ref":"#/components/schemas/EatsId"},"order_id":{"type":"string","nullable":true,"description":"Идентификатор заказа в системе партнера"},"status":{"$ref":"#/components/schemas/OrderHistoryStatus"},"items":{"description":"Состав заказа","type":"array","items":{"$ref":"#/components/schemas/OrderItem"}},"items_cost":{"description":"Стоимость заказа для партнера за вычетом стоимости доставки (с учетом партнерских скидок)","type":"number"},"cancel_reason":{"$ref":"#/components/schemas/CancelReason"}}},"OrderItem":{"description":"Товар с опциями","type":"object","properties":{"id":{"description":"Идентификатор товара на стороне ресторана/магазина","type":"string"},"name":{"description":"Название товара, например «Картошка»","type":"string"},"quantity":{"description":"Количество товаров в рамках этой позиции","type":"number","example":3.5},"price":{"description":"Стоимость одной данной позиции вместе со стоимостью опций","type":"number","example":123.78},"original_price":{"description":"Стоимость одной данной позиции без учета стоимости опций","type":"number","example":100.23},"weight":{"description":"Конечный вес товара","type":"number"},"measure_unit":{"description":"Единицы измерения веса, например GRM","type":"string"},"modifications":{"description":"Опции товара","type":"array","items":{"$ref":"#/components/schemas/OrderItemOption"}}}},"OrderItemOption":{"description":"Опция товара","type":"object","properties":{"id":{"description":"Идентификатор опции на стороне ресторана/магазина","type":"string"},"group_id":{"description":"ID группы в системе партнера, к которой принадлежит опция","type":"string","example":"937c57f6-4508-4858-be7f-20691a16fbb1"},"name":{"description":"Название опции","type":"string"},"quantity":{"description":"Количество опций в рамках этой позиции","type":"integer"},"price":{"description":"Цена опции товара","type":"number","example":10.5}},"required":["id","price","quantity"]},"EatsId":{"type":"string","minLength":13,"description":"Номер заказа в системе Яндекс.Еда","example":"230328-354380"},"OrderHistoryStatus":{"type":"string","description":"Статус заказа в системе Яндекс.Еды","nullable":true,"enum":["NEW","CANCELLED","DELIVERED"]},"OrdersHistoryRequestBody":{"type":"object","additionalProperties":false,"required":["origin_ids","from","to","pagination"],"properties":{"origin_ids":{"type":"array","description":"Список объектов. Объект состоит из идентификатора ресторана на стороне партнера и типа доставки в этом ресторане.","items":{"$ref":"#/components/schemas/OriginIds"}},"service":{"type":"array","description":"Список сервисов, для которых нужно вернуть заказы","items":{"$ref":"#/components/schemas/Service"}},"from":{"type":"string","format":"date-time","description":"Дата, с которой нужно отдать заказы. В формате RFC3339 с дробной частью секунд (Y-m-d\\TH:i:s.uP)","example":"2024-01-01T12:00:05.125+03:00"},"to":{"type":"string","format":"date-time","description":"Дата, до которой нужно отдать заказы. В формате RFC3339 с дробной частью секунд (Y-m-d\\TH:i:s.uP)","example":"2024-01-01T12:00:05.125+03:00"},"status":{"type":"array","items":{"$ref":"#/components/schemas/OrderHistoryStatus"},"description":"Возвращать заказы, соответствующие переданному списку статусов"},"pagination":{"$ref":"#/components/schemas/Pagination"}}},"OrdersHistoryResponse":{"type":"object","additionalProperties":false,"required":["orders"],"properties":{"orders":{"type":"array","items":{"$ref":"#/components/schemas/Order"},"description":"Список заказов"}}},"Order":{"type":"object","additionalProperties":false,"properties":{"eats_id":{"$ref":"#/components/schemas/EatsId","description":"Номер заказа в системе Яндекс.Еда"},"order_id":{"type":"string","description":"Номер заказа на стороне партнера"},"created_at":{"type":"string","description":"Дата создания заказа","format":"date-time"},"status":{"$ref":"#/components/schemas/OrderHistoryStatus","description":"Статус заказа"},"service":{"$ref":"#/components/schemas/Service","description":"Сервис, через который был сделан заказ"},"delivery_type":{"$ref":"#/components/schemas/DeliveryType","description":"Тип доставки"},"origin_id":{"$ref":"#/components/schemas/OriginId","description":"Идентификатор ресторана в системе партнера, из которого был сделан заказ"},"items_cost":{"type":"number","description":"Стоимость заказа для партнера за вычетом стоимости доставки (с учетом партнерских скидок)"},"cancel_reason":{"$ref":"#/components/schemas/CancelReason"}}},"Pagination":{"type":"object","additionalProperties":false,"required":["offset"],"properties":{"limit":{"type":"integer","minimum":0,"maximum":1000,"description":"Максимальное число заказов"},"offset":{"type":"integer","minimum":0,"description":"Смещение/пагинация. Подробней про пагинациюю можно почитать на https://slack.engineering/evolving-api-pagination-at-slack/"}}},"Service":{"type":"string","enum":["YE","MD"]},"ErrorV2":{"description":"Описание ошибки","type":"object","required":["message","code"],"properties":{"message":{"description":"Сообщение об ошибке","type":"string"},"code":{"description":"Код ошибки","type":"string"}}},"BusyModePagination":{"type":"object","additionalProperties":false,"description":"Пагинация для получения статуса высокого спроса в ресторанах. Подробнее про пагинацию и курсоры можно почитать на https://slack.engineering/evolving-api-pagination-at-slack/","properties":{"cursor":{"$ref":"#/components/schemas/Cursor"},"limit":{"$ref":"#/components/schemas/Limit"}}},"Cursor":{"type":"string","description":"Курсор для получения ресторанов с активным статусом высокого спроса"},"Limit":{"type":"integer","description":"Лимит количества возвращаемых ресторанов","minimum":1,"maximum":500,"default":500},"BusyModeStatusResponse":{"description":"Успешный ответ на запрос получения статуса высокой нагрузки ресторанов","type":"object","additionalProperties":false,"required":["busy_places"],"properties":{"busy_places":{"type":"array","description":"Список ресторанов с информацией о высоком спросе","items":{"$ref":"#/components/schemas/BusyPlace"}},"cursor":{"$ref":"#/components/schemas/Cursor"}}},"BusyPlace":{"type":"object","additionalProperties":false,"required":["origin_id","delivery_type","services","extra_minutes","valid_till"],"properties":{"origin_id":{"$ref":"#/components/schemas/OriginId"},"delivery_type":{"$ref":"#/components/schemas/DeliveryType"},"services":{"type":"array","description":"Список сервисов, в которых представлен ресторан","items":{"$ref":"#/components/schemas/Service"}},"extra_minutes":{"type":"integer","description":"Добавочное время к готовке в минутах"},"valid_till":{"type":"string","format":"date-time","description":"Дата и время в формате RFC3339 с указанием часового пояса, до которого действует надбавка к готовке","example":"2024-01-01T12:00:05.125+03:00"}}},"DeliveryType":{"type":"string","enum":["native","marketplace"],"description":"Тип доставки","example":"marketplace"},"BusyModeStatusRequest":{"type":"object","additionalProperties":false,"properties":{"filters":{"$ref":"#/components/schemas/BusyModeStatusFilters"},"pagination":{"$ref":"#/components/schemas/BusyModePagination"}}},"BusyModeStatusFilters":{"type":"object","additionalProperties":false,"description":"Фильтры запроса на поиск ресторанов","properties":{"origin_ids":{"type":"array","description":"Список идентификаторов ресторанов в системе партнера","items":{"$ref":"#/components/schemas/OriginId"},"minItems":1,"maxItems":100},"delivery_type":{"$ref":"#/components/schemas/DeliveryType"},"service":{"$ref":"#/components/schemas/Service"}}},"OriginId":{"type":"string","example":"restaurant1"},"OriginIds":{"type":"object","additionalProperties":false,"required":["origin_id"],"properties":{"origin_id":{"type":"string","description":"Идентификатор ресторана на стороне партнера"},"delivery_type":{"type":"string","enum":["native","marketplace"],"description":"Тип доставки"}}},"PhoneNumber":{"type":"string","description":"Номер телефона для связи с клиентом в международном формате. Состоит из частей \"+<код страны><номер>\". Может содержать добавочный номер: \"+<код страны><номер> доб. <добавочный номер>\".","example":"+79031111111 доб. 4432"},"CancelReason":{"type":"object","additionalProperties":false,"required":["code"],"properties":{"code":{"description":"Код причины отмены заказа в Яндекс Еда","type":"string","example":"place.missing_dish"},"message":{"description":"Текст причины отмены заказа","type":"string","example":"Заказ был отменён на стороне пользователя"}}}}}}