aeroPS Prices API
The aeroPS prices API enables you to access the products and services of an airport (landing prices, fuel prices,...) and to interact with PPR forms.
Endpoints:
-
GET prices for selected airport and aircraft:https://avdb.aerops.com/public/prices
Authentication:
All requests use Basic Authentication over HTTPS. Please send an email to support@aerops.com to request an API key for the prices API.
Airports
{
"name":"EBFS",
"latitude":"50.2433013916",
"longitude":"4.64583015442",
"paymentEnabled":true,
"pprEnabled":false,
"fuelProvider":null,
"newAirport":false,
"fuelAvailable":false,
"currency":"EUR",
"feesLastChanged":"2018-12-18"
}
Prices
Queries:
Add those queries to the base url to get the desired information.
To get a reply from the API, you need to send at minimum airportName and aircarftName queries. If the queried aircraft exists in our database it will automatically provide the necessary data for price calculations. If the aircraft is not available in our database you can additionally send aircraftMtow and aircraftClass data in the query.
-
aircraftName:(type: String, required: true)Description: Name of the aircraftex:D-KSTD
-
airportName:(type: String, required: true)ex:EDAY
-
pax:(type: Int, required: false)ex:20landings:(type: Int, required: false)ex:3
-
landingType:(type: String, required: false)ex:school_landing
-
approachType:(type: String, required: false)ex:ifr_approach
-
eta:(type: Date, required: false)ex:2021-11-26 T11:00:00
-
etd:(type: Date, required: false)ex:2021-11-30 T11:00:00
Example of an url with all possible queries:
https://avdb.aerops.com/public/prices?aircraftName=D-KSTD&airportName=EDAY&pax=20&landings=3&landingType=school_landing&approachType=ifr_approach&eta=2021-11-26%20T11%3A00%3A00&etd=2021-11-30%20T11%3A00%3A00
Expected Results:
If you give a value to the given queries, you will get the following result:
-
landingProducts:(result type: Array of landingProduct)Example Result:
[{ "articleId": "EDAY10155", "price": 4.1, "netprice": 3.45, "title": "Landing fee , Increased soundproofing - MTOW up to 1000kg", "quantity": 1, "tax": "19.00" }]
-
approachProducts:(result type: Array of approachProduct)Example Result:
[{ "articleId": "EDAY10212", "price": 10, "netprice": 8.4, "title": "Anflugentgelt , Normal bis 1500kg", "quantity": 1, "tax": "19.00" }]
-
additionalLandingProducts:(result type: Array of additionalLandingProducts)Example Result:
[{ "articleId": "EDAY10122", "price": 11.15, "netprice": 9.61, "title": "RAMP-KAT-1", "quantity": 1, "tax": "16.00" }]
-
packageProducts:(result type: Array of packageProduct)Example Result:
[{ "articleId": "EDAY10299", "price": 12, "netprice": 10.08, "title": "package 10 landungen", "tax": "19.00" }]
-
fuellingProducts:(result type: Array of fuellingProduct)Example Result:
[{ "articleId": "EDAY_myArticle_1234", "price": 2.23, "netprice": 2.0899999999999999, "optionalTaxAmount": "1.2312312", "behgTaxAmount": null, "title": "Refueling", "tax": "7.00" },
-
aircraft:(result type: Object)Example Result:
{ "name": "DKSTD", "aircraftMtow": 770, "aircraftChapter": 10, "aircraftClass": 5, "noiseLevel": "60.00", "noiseClass": 3, "availableInAerops": true }
-
forms:(result type: Object)Example Result:
{ "id": 3, "name": "PPR", "description": "außerhalb regulärer Öffnungszeiten", "schema": "{\"schema\":{\"name\":{\"title\":\"Name \\/ Firma\",\"placeholder\":\"Full Name\",\"required\":true,\"type\":\"string\"},\"street\":{\"title\":\"Stra\\u00dfe \\/ Nr.\",\"placeholder\":\"Street Number\",\"required\":true,\"type\":\"string\"},\"city\":{\"title\":\"PLZ und Stadt\",\"placeholder\":\"City and Zip\",\"required\":true,\"type\":\"string\"},\"email\":{\"title\":\"E-Mail\",\"required\":true,\"type\":\"email\"},\"phone\":{\"title\":\"Telefon\",\"required\":true,\"type\":\"tel\"},\"arrivalDateTime\":{\"title\":\"Ankunftszeit (UTC)\",\"type\":\"text\"},\"departureDateTime\":{\"title\":\"Abflugzeit (UTC)\",\"type\":\"text\"},\"arrivingFrom\":{\"title\":\"Flug von \",\"required\":true,\"type\":\"string\"},\"departingTo\":{\"title\":\"Flug nach\",\"required\":true,\"type\":\"string\"},\"paxIn\":{\"title\":\"Number of Passengers in\",\"required\":true,\"type\":\"integer\",\"min\":0,\"max\":0,\"minimum\":0,\"maximum\":99999},\"paxOut\":{\"title\":\"Number of Passengers out\",\"required\":true,\"type\":\"integer\",\"min\":0,\"max\":0,\"minimum\":0,\"maximum\":99999},\"aircraftType\":{\"title\":\"Aircraft Type\",\"required\":true,\"type\":\"string\"},\"licenceNumber\":{\"title\":\"LFZ-Kennzeichen\",\"required\":true,\"type\":\"string\"},\"flightType\":{\"title\":\"Flugtyp\",\"required\":true,\"type\":\"string\",\"enum\":[\"Streckenflug\",\"Platzrundenfl\\u00fcge\",\"Erweiterte Platzrundenfl\\u00fcge\"]},\"mtow\":{\"title\":\"MTOW\",\"required\":true,\"type\":\"integer\",\"min\":0,\"max\":0,\"minimum\":0,\"maximum\":99999},\"remarks\":{\"title\":\"Sonstiges\",\"required\":false,\"type\":\"textarea\"},\"schengen\":{\"title\":\"Arrival\\/Departure in Schengen\",\"default\":true,\"type\":\"checkbox\"},\"avgas\":{\"title\":\"AvGas\",\"default\":false,\"type\":\"boolean\"},\"mogas\":{\"title\":\"MoGas\",\"default\":false,\"type\":\"boolean\"},\"diesel\":{\"title\":\"Diesel\",\"default\":false,\"type\":\"checkbox\"},\"jetA1\":{\"title\":\"Jet A1\",\"default\":false,\"type\":\"checkbox\"},\"etaOrEtdRequired\":{}},\"form\":[{\"key\":\"name\",\"prepend\":\"Name\",\"notitle\":true,\"fieldHtmlClass\":\"input-sm\"},{\"key\":\"street\",\"prepend\":\"Stra\\u00dfe\",\"notitle\":true,\"fieldHtmlClass\":\"input-sm\"},{\"key\":\"city\",\"prepend\":\"PLZ und Stadt\",\"notitle\":true,\"fieldHtmlClass\":\"input-sm\"},{\"key\":\"email\",\"prepend\":\"E-Mail\",\"notitle\":true,\"fieldHtmlClass\":\"input-sm\"},{\"key\":\"phone\",\"prepend\":\"Telefon\",\"notitle\":true,\"fieldHtmlClass\":\"input-sm\"},\"departureDateTime\",\"arrivalDateTime\",{\"key\":\"arrivingFrom\",\"prepend\":\"Flug von\",\"notitle\":true,\"fieldHtmlClass\":\"input-sm\",\"placeholder\":\"ICAO code\"},{\"key\":\"departingTo\",\"prepend\":\"Flug nach\",\"notitle\":true,\"fieldHtmlClass\":\"input-sm\",\"placeholder\":\"ICAO code\"},{\"key\":\"licenceNumber\",\"prepend\":\"LFZ-Kennzeichen\",\"notitle\":true,\"fieldHtmlClass\":\"input-sm\",\"placeholder\":\"D-\"},{\"key\":\"flightType\",\"prepend\":\"Flugtyp\",\"notitle\":true,\"fieldHtmlClass\":\"input-sm-disabled\",\"placeholder\":\"D-\"},{\"key\":\"remarks\",\"fieldHtmlClass\":\"input-sm\",\"placeholder\":\"\"}]}", "embedLink": "https://gat.aerops.com/form-data/EDAY/3", "link": "https://gat.aerops.com/form/EDAY/3" }
-
airport:(result type: Object)Example Result:
{ "name": "EDAY", "paymentEnabled": true, "fuelProvider": "", "newAirport": false, "fuelAvailable": true, "currency": "€", "availableInAerops": true }
AircraftClass values:
id | description |
---|---|
1 | Aircraft |
2 | Rotorcraft |
3 | Airship |
4 | Sailplane |
4 | Glider |
5 | Motorglider |
6 | Balloon |
7 | Ultralight |
PPR
Our PPR services provide functions to handle Prior Permission Requests exchanged between pilots and aiports. Normally this is done via embedded web forms generated by our system. You can use the API to post PPR request data directly to an airport. This enables you to build forms or inputs using your own services.
Getting PPR form fields
If an airport has activated a service form or a PPR form, these can be called up using the following URL scheme https://avdb.aerops.com/public/prices?airportName=EDAY
Expected Result:
{
"forms": [
{
"id": 2,
"name": "Simple PPR test",
"description": "This is a ppr template for testing",
"schema": "{\"schema\":{\"name\":{\"title\":\"Contact Name\",\"placeholder\":\"Full Name\",\"required\":true,\"type\":\"string\"},\"email\":{\"title\":\"Email Address\",\"required\":true,\"type\":\"email\"},\"phone\":{\"title\":\"Phone\",\"required\":true,\"type\":\"tel\"},\"arrivalDateTime\":{\"title\":\"Arrival time (UTC)\",\"type\":\"text\"},\"departureDateTime\":{\"title\":\"Departing time (UTC)\",\"type\":\"text\"},\"arrivingFrom\":{\"title\":\"Arriving from\",\"required\":true,\"type\":\"string\"},\"departingTo\":{\"title\":\"Departing to\",\"required\":true,\"type\":\"string\"},\"paxIn\":{\"title\":\"Number of Passengers in\",\"required\":true,\"type\":\"integer\",\"min\":0,\"max\":0,\"minimum\":0,\"maximum\":99999},\"paxOut\":{\"title\":\"Number of Passengers out\",\"required\":true,\"type\":\"integer\",\"min\":0,\"max\":0,\"minimum\":0,\"maximum\":99999},\"aircraftType\":{\"title\":\"Aircraft Type\",\"required\":true,\"type\":\"string\"},\"licenceNumber\":{\"title\":\"Aircraft Registration\",\"required\":true,\"type\":\"string\"},\"flightType\":{\"title\":\"Flight Type\",\"required\":true,\"type\":\"string\",\"enum\":[\"Private\",\"Commercial\",\"Air Taxi\"]},\"mtow\":{\"title\":\"MTOW\",\"required\":true,\"type\":\"integer\",\"min\":0,\"max\":0,\"minimum\":0,\"maximum\":99999},\"remarks\":{\"title\":\"Remarks\",\"required\":false,\"type\":\"textarea\"}},\"form\":[\"email\",\"arrivalDateTime\",\"licenceNumber\",{\"key\":\"remarks\",\"placeholder\":\"Remarks\"}]}",
"embedLink": "https://gat.aerops.com/form-data/EDAY/2",
"link": "https://gat.aerops.com/form/EDAY/2"
}
],
"airport": {
"name": "EDAY",
"paymentEnabled": true,
"availableInAerops": true,
"currency": "€"
}
}
Posting PPR Form Data
Utilizing the schema from the response you can POST data in the jsonformData key to a selected PPR form using the following endpoint, replacing {{id}} with the targeted form id:
https://avdb.aerops.com/public/ppr-data/{{id}}
Example POST:
{
"userEmail":"test@test.de",
"licenseNumber": "LICENCENUMBER_EXAMPLE",
"jsonformSchema": "{\"schema\":{\"name\":{\"title\":\"Contact Name\",\"type\":\"string\"},\"email\":{\"title\":\"Email Address\",\"type\":\"email\"},\"phone\":{\"title\":\"Phone\",\"type\":\"tel\"},\"arrivalDateTime\":{\"title\":\"Arrival time (UTC)\",\"type\":\"text\"},\"departureDateTime\":{\"title\":\"Departing time (UTC)\",\"type\":\"text\"},\"arrivingFrom\":{\"title\":\"Arriving from\",\"type\":\"string\"},\"departingTo\":{\"title\":\"Departing to\",\"type\":\"string\"},\"paxIn\":{\"title\":\"Number of Passengers in\",\"type\":\"integer\"},\"paxOut\":{\"title\":\"Number of Passengers out\",\"type\":\"integer\"},\"aircraftType\":{\"title\":\"Aircraft Type\",\"type\":\"string\"},\"licenceNumber\":{\"title\":\"Aircraft Registration\",\"type\":\"string\"},\"mtow\":{\"title\":\"MTOW\",\"type\":\"integer\"},\"remarks\":{\"title\":\"Remarks\",\"type\":\"textarea\"}},\"form\":[\"name\",\"email\",\"phone\",\"arrivalDateTime\",\"departureDateTime\",\"arrivingFrom\",\"departingTo\",\"paxIn\",\"paxOut\",\"aircraftType\",\"licenceNumber\",\"mtow\",\"remarks\"]}",
"jsonformData": "{\"name\":\"NAME_EXAMPLE\",\"email\":\"example@example.de\",\"phone\":\"+4911111111111\",\"arrivalDateTime\":\"Sat Jan 01 2022 15:15:00 GMT+0000\",\"departureDateTime\":\"Sun Jan 02 2022 15:15:00 GMT+0000\",\"arrivingFrom\":\"ICAO\",\"departingTo\":\"ICAO\",\"paxIn\":\"3\",\"paxOut\":\"3\",\"aircraftType\":\"TYPE_EXAMPLE\",\"licenceNumber\":\"LICENCENUMBER_EXAMPLE\",\"mtow\":\"2000\",\"remarks\":\"Hi \"}"
}