Develop
svc-cargo (0.8.1-develop.0)
Download OpenAPI specification:Download
Cargo Service GRPC and REST servers
Telemetry Service GRPC and REST servers
Assets Service REST server
Get Available Flights
Get Available Flights
Search for available trips and return a list of [Itinerary
].
Request Body schema: application/json
cargo_weight_kg required | number <float> The estimated weight of cargo |
object or null Time window (min and max) | |
object or null Time window (min and max) | |
vertiport_arrive_id required | string The String ID of the destination vertiport |
vertiport_depart_id required | string The String ID of the vertiport to leave from |
Responses
Request samples
- Payload
{- "cargo_weight_kg": 0,
- "time_arrive_window": {
- "timestamp_max": "2019-08-24T14:15:22Z",
- "timestamp_min": "2019-08-24T14:15:22Z"
}, - "time_depart_window": {
- "timestamp_max": "2019-08-24T14:15:22Z",
- "timestamp_min": "2019-08-24T14:15:22Z"
}, - "vertiport_arrive_id": "string",
- "vertiport_depart_id": "string"
}
Response samples
- 200
[- {
- "base_pricing": 0,
- "currency_type": "string",
- "id": "string",
- "legs": [
- {
- "base_pricing": 0,
- "currency_type": "string",
- "distance_m": 0,
- "flight_plan_id": "string",
- "timestamp_arrive": "2019-08-24T14:15:22Z",
- "timestamp_depart": "2019-08-24T14:15:22Z",
- "vertiport_arrive_id": "string",
- "vertiport_depart_id": "string"
}
]
}
]
Get Regional Vertiports
Get Regional Vertiports
Request Body schema: application/json
latitude required | number <float> Latitude of Client |
longitude required | number <float> Longitude of Client |
Responses
Request samples
- Payload
{- "latitude": 0,
- "longitude": 0
}
Response samples
- 200
[- {
- "id": "string",
- "label": "Mercy Hospital (Public)",
- "latitude": 0,
- "longitude": 0
}
]
Register an [`Aircraft`] in the database.
Register an [Aircraft
] in the database.
Request Body schema: application/json
description | string |
group_id | string The UUID of an [ |
last_maintenance | string |
last_vertiport_id | string |
manufacturer required | string The aircraft's manufacturer. TODO: For now we can just say "Boeing", "Airbus", etc. Later, we can a struct for this and store the manufacturer's name, logo, etc. |
max_payload_kg required | number <float> |
max_range_km required | number <float> |
model required | string |
name | string |
next_maintenance | string |
owner required | string |
registration_number required | string The aircraft's registration number. In the US, this is the N number. This is a unique identifier for the aircraft that can be used to look up information about the aircraft from national aviation authorities like the FAA. |
serial_number required | string |
status required | string (AssetStatus) Enum: "Available" "Unavailable" "Emergency" Status of an asset. |
whitelist required | Array of strings |
Responses
Request samples
- Payload
{- "description": "string",
- "group_id": "string",
- "last_maintenance": "string",
- "last_vertiport_id": "string",
- "manufacturer": "string",
- "max_payload_kg": 0,
- "max_range_km": 0,
- "model": "string",
- "name": "string",
- "next_maintenance": "string",
- "owner": "string",
- "registration_number": "string",
- "serial_number": "string",
- "status": "Available",
- "whitelist": [
- "string"
]
}
Update/modify an [`Aircraft`] in the database.
Update/modify an [Aircraft
] in the database.
This will update the aircraft's information.
Request Body schema: application/json
asset_group_id | string |
description | string |
id required | string |
last_maintenance | string |
last_vertiport_id | string |
mask required | Array of strings |
next_maintenance | string |
registration_number | string |
schedule | string |
serial_number | string |
vehicle_model_id | string The UUID of the model. |
Responses
Request samples
- Payload
{- "asset_group_id": "string",
- "description": "string",
- "id": "string",
- "last_maintenance": "string",
- "last_vertiport_id": "string",
- "mask": [
- "string"
], - "next_maintenance": "string",
- "registration_number": "string",
- "schedule": "string",
- "serial_number": "string",
- "vehicle_model_id": "string"
}
Get an [`Aircraft`] by its id.
Get an [Aircraft
] by its id.
path Parameters
id required | string Aircraft id |
Responses
Response samples
- 200
{- "basics": {
- "created_at": "2019-08-24T14:15:22Z",
- "group_id": "string",
- "id": "string",
- "name": "string",
- "owner": "string",
- "status": "Available",
- "updated_at": "2019-08-24T14:15:22Z",
- "whitelist": [
- "string"
]
}, - "description": "string",
- "last_maintenance": "2019-08-24T14:15:22Z",
- "last_vertiport_id": "string",
- "manufacturer": "string",
- "max_payload_kg": {
- "value": 0
}, - "max_range_km": {
- "value": 0
}, - "model": "string",
- "next_maintenance": "2019-08-24T14:15:22Z",
- "registration_number": "string",
- "serial_number": "string"
}
Response samples
- 200
[- {
- "basics": {
- "created_at": "2019-08-24T14:15:22Z",
- "group_id": "string",
- "id": "string",
- "name": "string",
- "owner": "string",
- "status": "Available",
- "updated_at": "2019-08-24T14:15:22Z",
- "whitelist": [
- "string"
]
}, - "description": "string",
- "last_maintenance": "2019-08-24T14:15:22Z",
- "last_vertiport_id": "string",
- "manufacturer": "string",
- "max_payload_kg": {
- "value": 0
}, - "max_range_km": {
- "value": 0
}, - "model": "string",
- "next_maintenance": "2019-08-24T14:15:22Z",
- "registration_number": "string",
- "serial_number": "string"
}
]
Response samples
- 200
[- {
- "basics": {
- "created_at": "2019-08-24T14:15:22Z",
- "group_id": "string",
- "id": "string",
- "name": "string",
- "owner": "string",
- "status": "Available",
- "updated_at": "2019-08-24T14:15:22Z",
- "whitelist": [
- "string"
]
}, - "description": "string",
- "location": {
- "latitude": {
- "value": 0
}, - "longitude": {
- "value": 0
}
}
}
]
Register an [`crate::structs::AssetGroup`] in the database.
Register an [crate::structs::AssetGroup
] in the database.
Request Body schema: application/json
assets required | Array of strings |
name | string |
owner required | string The UUID of an [ |
Responses
Request samples
- Payload
{- "assets": [
- "string"
], - "name": "string",
- "owner": "string"
}
Get an [`crate::structs::AssetGroup`] by its id.
Get an [crate::structs::AssetGroup
] by its id.
path Parameters
id required | string Asset group id |
Responses
Response samples
- 200
{- "assets": [
- "string"
], - "created_at": "2019-08-24T14:15:22Z",
- "delegatee": "string",
- "id": "string",
- "name": "string",
- "owner": "string",
- "updated_at": "2019-08-24T14:15:22Z"
}
Update/modify an [`crate::structs::AssetGroup`] in the database.
Update/modify an [crate::structs::AssetGroup
] in the database.
path Parameters
id required | string AssetGroup id |
Request Body schema: application/json
assets required | Array of strings |
created_at required | string <date-time> |
delegatee | string The UUID of an [ |
id required | string UUID of the asset group. |
name | string |
owner required | string The UUID of an [ |
updated_at | string <date-time> |
Responses
Request samples
- Payload
{- "assets": [
- "string"
], - "created_at": "2019-08-24T14:15:22Z",
- "delegatee": "string",
- "id": "string",
- "name": "string",
- "owner": "string",
- "updated_at": "2019-08-24T14:15:22Z"
}
Get info about an operator by id.
Get info about an operator by id.
path Parameters
id required | string Operator id |
Responses
Response samples
- 200
{- "address": "string",
- "city": "string",
- "country": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "description": "string",
- "email": "string",
- "id": "string",
- "logo": "string",
- "name": "string",
- "phone": "string",
- "postal_code": "string",
- "updated_at": "2019-08-24T14:15:22Z",
- "website": "string"
}
Register an [`Vertipad`] in the database.
Register an [Vertipad
] in the database.
Also inserts the vertipad into the vertiport's vertipad list.
Request Body schema: application/json
enabled required | boolean |
required | object (Location) A struct representing a location. |
name | string |
occupied required | boolean |
status required | string (AssetStatus) Enum: "Available" "Unavailable" "Emergency" Status of an asset. |
vertiport_id required | string |
Responses
Request samples
- Payload
{- "enabled": true,
- "location": {
- "latitude": {
- "value": 0
}, - "longitude": {
- "value": 0
}
}, - "name": "string",
- "occupied": true,
- "status": "Available",
- "vertiport_id": "string"
}
Update/modify a [`Vertipad`] in the database.
Update/modify a [Vertipad
] in the database.
Request Body schema: application/json
enabled | boolean |
id required | string |
latitude | number <float> |
longitude | number <float> |
mask required | Array of strings |
name | string |
occupied | boolean |
schedule | string |
vertiport_id | string |
Responses
Request samples
- Payload
{- "enabled": true,
- "id": "string",
- "latitude": 0,
- "longitude": 0,
- "mask": [
- "string"
], - "name": "string",
- "occupied": true,
- "schedule": "string",
- "vertiport_id": "string"
}
Get an [`Vertipad`] by its id.
Get an [Vertipad
] by its id.
path Parameters
id required | string Vertipad id |
Responses
Response samples
- 200
{- "enabled": true,
- "id": "string",
- "location": {
- "latitude": {
- "value": 0
}, - "longitude": {
- "value": 0
}
}, - "occupied": true,
- "vertiport_id": "string"
}
Register an [`Vertiport`] in the database.
Register an [Vertiport
] in the database.
Request Body schema: application/json
description | string |
group_id | string The UUID of an [ |
required | object (Location) A struct representing a location. |
name | string |
owner required | string |
status required | string (AssetStatus) Enum: "Available" "Unavailable" "Emergency" Status of an asset. |
whitelist required | Array of strings |
Responses
Request samples
- Payload
{- "description": "string",
- "group_id": "string",
- "location": {
- "latitude": {
- "value": 0
}, - "longitude": {
- "value": 0
}
}, - "name": "string",
- "owner": "string",
- "status": "Available",
- "whitelist": [
- "string"
]
}
Update/modify a [`Vertiport`] in the database.
Update/modify a [Vertiport
] in the database.
This will update the vertiport's information. It can also be used to perform batch add/remove of vertipads.
Request Body schema: application/json
description | string |
id required | string |
latitude | number <float> |
longitude | number <float> |
mask required | Array of strings |
name | string |
schedule | string |
Responses
Request samples
- Payload
{- "description": "string",
- "id": "string",
- "latitude": 0,
- "longitude": 0,
- "mask": [
- "string"
], - "name": "string",
- "schedule": "string"
}
Get an [`Vertiport`] by its id.
Get an [Vertiport
] by its id.
path Parameters
id required | string Vertiport id |
Responses
Response samples
- 200
{- "basics": {
- "created_at": "2019-08-24T14:15:22Z",
- "group_id": "string",
- "id": "string",
- "name": "string",
- "owner": "string",
- "status": "Available",
- "updated_at": "2019-08-24T14:15:22Z",
- "whitelist": [
- "string"
]
}, - "description": "string",
- "location": {
- "latitude": {
- "value": 0
}, - "longitude": {
- "value": 0
}
}
}