This API allows an external system to load flight plan information into Flight Plan Website.
API URL | https://fpl.ivao.aero/flight-plans/create |
---|---|
Method | GET |
The data for the Flight Plan must me provided through the query string parameter flightPlan.
These are the parameters that you can use to load the data for the API. They're all optional in order to allow partial FPL filling.
Parameter Name | Description | Remarks |
---|---|---|
callsign | Aircraft Callsign | - |
flightRules | Flight Plan Rules |
|
flightType |
Type of Flight |
|
aircraftNumber |
Number of Aircraft |
- |
aircraftId |
Aircraft Type |
E.G: A320, B738 |
aircraftWakeTurbulence |
Wake Turbulence Category |
|
aircraftEquipments | An array of Radio & Navigation Equipment onboard | e.g. [S, D, E2, E3, F, G, I, R, W, Y] |
aircraftTransponderTypes | An array of Transponder Types | e.g. [S, B1, B2] |
departureId | ICAO code for departure Airport | - |
departureTime | Departure Time UTC | Format as in seconds after 0000UTC |
cruisingSpeedType | Speed Type |
|
cruisingSpeed | Speed value | - |
altitudeType | Level type |
|
altitude | Altitude value | Leave empty for LELVELTYPE = VFR |
route | Route | - |
arrivalId | Destination Airport | - |
eet | Estimated Enroute Time | Format as seconds. |
alternativeId | Alternate Airport 1 | - |
alternative2Id | Alternate Airport 2 | - |
remarks | Flight plan remarks | - |
endurance | Endurance | Format as seconds. |
pob | Number of Person on Board | - |
Let's use the FPL API to file the following Flight Plan:
(FPL-AFR2063-IS
-1/A321/M-SDE2E3FGIRWY/H
-ESSA1325
-N0447F340 DCT DKR N872 SVD/N0446F360 N872 DEMIR UN872 EEL UP174 WOODY UN872 NIK UY131 MOPIL DCT
-LFPG0225 LFPO
-PBN/A1B1C1D1S2 DOF/121115 REG/FGTAD EET/EKDK0047 EDWW0104 EHAA0124 EBUR0145 LFFF0155 OPR/AFR)
-E/0500 P/150
First, let's build the Flight Plan object that matches our expected DTO:
{
"callsign": "AFR2063",
"flightRules": "I",
"flightType": "S",
"aircraftNumber": 1,
"aircraftId": "A321",
"aircraftWakeTurbulence": "M",
"aircraftEquipments": [ "S"
, "D", "E2", "E3", "F", "G", "I", "R", "W", "Y" ],
"aircraftTransponderTypes": [ "H" ],
"departureId": "ESSA",
"departureTime": 48300 // (13 * 3600) + (25 * 60),
"cruisingSpeedType": "N",
"cruisingSpeed": 447,
"altitudeType": "F",
"altitude": 340,
"route": "DCT DKR N872 SVD/N0446F360 N872 DEMIR UN872 EEL UP174 WOODY UN872 NIK UY131 MOPIL DCT",
"arrivalId": "LFPG",
"eet": 8700 // (02 * 3600) + (25 * 60),
"alternativeId": "LFPO",
"alternative2Id": null,
"remarks": "PBN/A1B1C1D1S2 DOF/121115 REG/FGTAD EET/EKDK0047 EDWW0104 EHAA0124 EBUR0145 LFFF0155 OPR/AFR)",
"endurance": 18000 // 5 * 3600 + 0 * 60,
"pob": 150
}
After we've created this DTO, we need to encode it into base64, so we can build the redirect URI. This will give us the following string:
ewogICJjYWxsc2lnbiI6ICJBRlIyMDYzIiwKICAiZmxpZ2h0UnVsZXMiOiAiSSIsCiAgImZsaWdodFR5cGUiOiAiUyIsCiAgImFpcmNyYWZ0TnVtYmVyIjogMSwKICAiYWlyY3JhZnRJZCI6ICJBMzIxIiwKICAiYWlyY3JhZnRXYWtlVHVyYnVsZW5jZSI6ICJNIiwKICAiYWlyY3JhZnRFcXVpcG1lbnRzIjogWyAiUyIsICJEIiwgIkUyIiwgIkUzIiwgIkYiLCAiRyIsICJJIiwgIlIiLCAiVyIsICJZIiBdLAogICJhaXJjcmFmdFRyYW5zcG9uZGVyVHlwZXMiOiBbICJIIiBdLAogICJkZXBhcnR1cmVJZCI6ICJFU1NBIiwKICAiZGVwYXJ0dXJlVGltZSI6IDQ4MzAwLAogICJjcnVpc2luZ1NwZWVkVHlwZSI6ICJOIiwKICAiY3J1aXNpbmdTcGVlZCI6IDQ0NywKICAiYWx0aXR1ZGVUeXBlIjogIkYiLAogICJhbHRpdHVkZSI6IDM0MCwKICAicm91dGUiOiAiRENUIERLUiBOODcyIFNWRC9OMDQ0NkYzNjAgTjg3MiBERU1JUiBVTjg3MiBFRUwgVVAxNzQgV09PRFkgVU44NzIgTklLIFVZMTMxIE1PUElMIERDVCIsCiAgImFycml2YWxJZCI6ICJMRlBHIiwKICAiZWV0IjogODcwMCwKICAiYWx0ZXJuYXRpdmVJZCI6ICJMRlBPIiwKICAiYWx0ZXJuYXRpdmUySWQiOiBudWxsLAogICJyZW1hcmtzIjogIlBCTi9BMUIxQzFEMVMyIERPRi8xMjExMTUgUkVHL0ZHVEFEIEVFVC9FS0RLMDA0NyBFRFdXMDEwNCBFSEFBMDEyNCBFQlVSMDE0NSBMRkZGMDE1NSBPUFIvQUZSKSIsCiAgImVuZHVyYW5jZSI6IDE4MDAwLAogICJwb2IiOiAxNTAKfQ==
You can them redirect the user into the FPL System passing this in the query parameter flightPlan:
https://fpl.ivao.aero/flight-plans/create?flightPlan=ewogICJjYWxsc2lnbiI6ICJBRlIyMDYzIiwKICAiZmxpZ2h0UnVsZXMiOiAiSSIsCiAgImZsaWdodFR5cGUiOiAiUyIsCiAgImFpcmNyYWZ0TnVtYmVyIjogMSwKICAiYWlyY3JhZnRJZCI6ICJBMzIxIiwKICAiYWlyY3JhZnRXYWtlVHVyYnVsZW5jZSI6ICJNIiwKICAiYWlyY3JhZnRFcXVpcG1lbnRzIjogWyAiUyIsICJEIiwgIkUyIiwgIkUzIiwgIkYiLCAiRyIsICJJIiwgIlIiLCAiVyIsICJZIiBdLAogICJhaXJjcmFmdFRyYW5zcG9uZGVyVHlwZXMiOiBbICJIIiBdLAogICJkZXBhcnR1cmVJZCI6ICJFU1NBIiwKICAiZGVwYXJ0dXJlVGltZSI6IDQ4MzAwLAogICJjcnVpc2luZ1NwZWVkVHlwZSI6ICJOIiwKICAiY3J1aXNpbmdTcGVlZCI6IDQ0NywKICAiYWx0aXR1ZGVUeXBlIjogIkYiLAogICJhbHRpdHVkZSI6IDM0MCwKICAicm91dGUiOiAiRENUIERLUiBOODcyIFNWRC9OMDQ0NkYzNjAgTjg3MiBERU1JUiBVTjg3MiBFRUwgVVAxNzQgV09PRFkgVU44NzIgTklLIFVZMTMxIE1PUElMIERDVCIsCiAgImFycml2YWxJZCI6ICJMRlBHIiwKICAiZWV0IjogODcwMCwKICAiYWx0ZXJuYXRpdmVJZCI6ICJMRlBPIiwKICAiYWx0ZXJuYXRpdmUySWQiOiBudWxsLAogICJyZW1hcmtzIjogIlBCTi9BMUIxQzFEMVMyIERPRi8xMjExMTUgUkVHL0ZHVEFEIEVFVC9FS0RLMDA0NyBFRFdXMDEwNCBFSEFBMDEyNCBFQlVSMDE0NSBMRkZGMDE1NSBPUFIvQUZSKSIsCiAgImVuZHVyYW5jZSI6IDE4MDAwLAogICJwb2IiOiAxNTAKfQ==