Заказы / Создание заказа

Создание заказа

CarSharing создаёт заказ на выездную заправку конкретного автомобиля.

POST /v1/providers/orders Authorization: Bearer <ваш-токен>

Тело запроса

ПолеТипОбяз.Описание
external_idstringдаИдентификатор заказа в вашей системе. Используется для идемпотентности — повторный запрос с тем же external_id не создаст дубль, а вернёт уже созданный заказ.
car_numberstringдаГосномер автомобиля.
car_idstringнетВаш внутренний идентификатор машины (для сверки на вашей стороне).
latitudenumberдаШирота местоположения автомобиля.
longitudenumberдаДолгота местоположения автомобиля.
fuel_type_codestringдаКод типа топлива — см. справочник кодов.
urgentbooleanнетСрочная заправка. По умолчанию false.
antifreezebooleanнетТребуется долив незамерзающей жидкости. По умолчанию false.
small_tankbooleanнетАвтомобиль с маленьким баком (напр. Smart). По умолчанию false.
fuel_amount_litersstring (число)нетЦелевой объём заправки в литрах. Если не указан — заправщик заливает по потребности автомобиля, фактический объём фиксируется по факту.

Пример запроса

{
  "external_id": "cs-order-58213",
  "car_number": "O518XP199",
  "car_id": "smart-4471",
  "latitude": 55.740151,
  "longitude": 37.419008,
  "fuel_type_code": "AI_92",
  "urgent": true,
  "antifreeze": false,
  "small_tank": false
}

Ответы

201 CreatedЗаказ создан — тело: OrderResponse.
200 OKПовторный запрос с тем же external_id — идемпотентный повтор, дубль не создаётся. Тело: OrderResponse уже существующего заказа.
400 Bad RequestНевалидные координаты / неизвестный fuel_type_code / некорректный fuel_amount_liters.
401 UnauthorizedТокен отсутствует или недействителен.
409 ConflictМашина с этим car_number снята вами с учёта через DELETE /v1/providers/cars/{car_number}. Код ошибки: car_removed_from_fleet.
Важно Сам факт создания заказа не накладывает никаких ограничений на автомобиль. Бронирование (тех. резерв) происходит отдельно, когда заправщик берёт заказ в работу — см. book. Если машину нужно арендовать раньше, чем заправщик успел её забронировать — отмените заказ.