3.8 KiB
3.8 KiB
Flight Service
HTTP API
Регистрация нового пользователя
PUT /api/users HTTP/1.1
Accept: application/json
{
"first_name": "Ivan",
"last_name": "Ivanov",
"age": 25
}
{
"id": 1,
"first_name": "Ivan",
"last_name": "Ivanov",
"age": 25
}
Получение пользователя
GET /api/users/{id} HTTP/1.1
Accept: application/json
{
"id": 1,
"first_name": "Ivan",
"last_name": "Ivanov",
"age": 25
}
Получение информации о самолете
POST /api/airplane/{id} HTTP/1.1
Accept: application/json
{
"id": 1,
"name": "Airplane #1",
"max_passengers": 115,
"max_cargo_weight": 7350
}
Список всех самолетов
GET /api/airplane HTTP/1.1
Accept: application/json
Query Parameters
| Name | Default value | Description |
|---|---|---|
| page | 0 | Страница |
[
{
"id": 1,
"name": "Airplane #1",
"max_passengers": 115,
"max_cargo_weight": 7350
},
...
]
Получение информации об аэропорте
GET /api/airport/{id} HTTP/1.1
Accept: application/json
{
"id": 32,
"Name": "Airport #32",
"longitude": 47.488425,
"latitude": 39.929261
}
Список всех аэропортов
GET /api/airport HTTP/1.1
Accept: application/json
Query Parameters
| Name | Default value | Description |
|---|---|---|
| page | 0 | Страница |
[
{
"id": 32,
"Name": "Airport #32",
"longitude": 47.488425,
"latitude": 39.929261
},
...
]
Создание нового рейса
POST /api/flight HTTP/1.1
Accept: application/json
{
"departure_airport": 12,
"arrival_airport": 15,
"airplane": 3,
"departure_timestamp": 1771834281934
}
{
"id": 1,
"departure_airport": {
"id": 12,
"Name": "Airport #12",
"longitude": 47.488425,
"latitude": 39.929261
},
"arrival_airport": {
"id": 15,
"Name": "Airport #15",
"longitude": 47.488425,
"latitude": 39.929261
},
"airplane": {
"id": 3,
"name": "Airplane #3",
"max_passengers": 115,
"max_cargo_weight": 7350
},
"departure_timestamp": 1771834281934,
"passengers": []
}
Получение информации о рейсе
GET /api/flight/{id} HTTP/1.1
Accept: application/json
{
"id": 1,
"departure_airport": {
"id": 12,
"Name": "Airport #12",
"longitude": 47.488425,
"latitude": 39.929261
},
"arrival_airport": {
"id": 15,
"Name": "Airport #15",
"longitude": 47.488425,
"latitude": 39.929261
},
"airplane": {
"id": 3,
"name": "Airplane #3",
"max_passengers": 115,
"max_cargo_weight": 7350
},
"departure_timestamp": 1771834281934,
"passengers": [
{
"id": 1,
"first_name": "Ivan",
"last_name": "Ivanov",
"age": 25
},
...
]
}
Регистрация пассажира на рейс
POST /api/flight/register HTTP/1.1
{
"flight_id": 1,
"user_id": 3
}