Infinite Flight API Roadmap

Updated 01032023-125209


Infinite Flight API Wishlist Trello Board

commands/reversethrust

Last Updated 12292022-210153

this command doesn't appear to work (tested with no argument Int32, boolean, json structured identical to APIv1)

A bug!

Last Updated 04022020-151838

commands/reversethrust

Last Updated 04022020-152543

Get Flight Plan - Sending 0.0 lat/lng instead of null (see description)

Last Updated 07232022-184220

0 is something. Null is nothing.

A null coordinate should be the proper way to tell if the API server had found nothing. A zero coordinate can be interpreted as valid (such as latitudes along the equator).

Live API Docs doesn't appropriately mention ALL nullable values (see description)

Last Updated 07152022-191541

It would also be better to mention if they can be null in the "Type" column and in the "Description" if there's any additional info.

This makes the API somewhat unpredictable. For example in the v2/sessions/{sessionId}/flights endpoint the username can be null (not empty string) if the user is anonymous. Then it is reasonable to assume that v2/sessions/{sessionId}/atc will also send back a null for the username (if needs be). But that is not the case. The API can send a non-empty string with a "fake" username for presentation ("Controller").

Complete list of what I could get :

v2/users : UserStats - discourseUsername UserStats - virtualOrganization

v2/sessions/{sessionId}/atc : ActiveATCFacility - username ActiveATCFacility - virtualOrganization ActiveATCFacility - airportName

v2/users/{userId}/atc/{atcSessionId} : ATCFacility - airportIcao

v2/sessions/{sessionId}/flights : FlightEntry - virtualOrganization FlightEntry - username

v2/sessions/{sessionId}/flights/{flightId}/flightplan : FlightPlanItem - name FlightPlanItem - children FlightPlanItem - identifier

v2/tracks : OceanicTrack - eastLevels OceanicTrack - westLevels

v2/users/{userId}/flights & v2/users/{userId}/atc : PaginatedList - data

v2/users/{userId}/flights & v2/users/{userId}/flights/{flightId} : UserFlight - liveryId (mentioned in another issue) UserFlight - callsign

v2/sessions/{sessionId}/notams : NotamResult - sessionId

simulator/throttle set and get are negative if each other

Last Updated 09062022-235051

If you set simulator/throttle to a value x, then request the value and get a value y, y = -x.

Set value of simulator/throttle: 100 Get value of simulator/throttle: -100

Features Endpoint

Last Updated 12162022-223920

TlL;DR: An aircraft/0/features/* endpoint would allow apps to see what capabilities an aircraft has. E.g.: aircraft/0/features/retractable_gear : True and aircraft/0/features/spoilers : False for the TBM.

This is a little more abstract. It’s impossible to tell what capabilities an aircraft has right now. The C172 doesn’t have an endpoint for the Boeing MFD, but it does have endpoints for things like spoilers, auto brakes, and even carrier ops.

I’d like to be able to implement some conditional logic, e.g. only show options for carrier ops if the current aircraft has a tail hook. Obviously this can be worked around by hardcoding a tail hook option to be available for the F-18… but it becomes frustrating to hardcode whether every aircraft in the fleet has spoilers, auto brakes, reverse thrust, retractable gear, etc. This option is also not future-proof, as any future aircraft would need a configuration defined in the third-party app.

I suggest the creation of aircraft/0/features/* endpoints for all these features that vary by aircraft.

An alternative option would be to remove all these endpoints for aircraft they don’t apply to. No need for the C172 to have a carrier ops endpoint exposed to me.

Get User Flights - add violations received during flight

Last Updated 11082022-115759

Kafka Topic or any producer for IF events

Last Updated 01032023-111114

https://community.infiniteflight.com/t/request-suggestion-a-kafka-topic-or-a-subscribable-stream-for-if-events/675603

Add a command to Connect v2 API comparable to "NetworkJoystick.SetNetworkJoystickAxes" in the v1 API

Last Updated 04192022-120856

provide a better error response

Last Updated 10022020-233716

Currently the api returns OK (Result = 0) with a TextRespones indicating error. Would be nice to either have it return erorr, or return an error type, so it is easier to understand when invalid data has been sent

simulator/throttle/reverse

Last Updated 04022020-154731

a get and set boolean state, in order to set reverse thrust on and off, e.g. setState(ID: "sim/throttle/reverse", value: true) to activate reverse thrust

generic ATC command

Last Updated 04022020-162119

Right now there's 10 separate ATC commands, no more, this makes it impossible to send higher values through the api. Something like RunCommand(ID: "atcCommand", value: 12) which would send the ID of the ATC command, would help

add infiniteflight/commands when on the menu (infiniteflight/appstate and others are available in the sim, but not from the menu)

Last Updated 06052020-230003

commands/togglemap

Last Updated 08212020-205123

No way to show the map atm. Would be nice to have this, as well as zoom/motion and a state like mapIsShowing or something

AirportDetails Endpoint for Live API

Last Updated 10032020-013723

Requested by Chris_S via IFC. See https://community.infiniteflight.com/t/new-api-airportdetails-aspx-request/417143.

Select Aircraft as Controller in Connect API

Last Updated 08282020-213045

As an ATC, you can currently send certain commands based on their number. However, you cannot select an aircraft to send them to. See https://community.infiniteflight.com/t/select-aircraft-in-atc-interface/417256/2.

No way to tell if an aircraft has beacon (or other) lights.

Last Updated 12162022-050111

Not all aircraft have beacon lights (TBM, A-10). There’s no difference in the api in this case — there are still all the same endpoints. This is expandable in case an aircraft with less lights (e.g. a J-3 Cub) is added. Endpoints such as aircraft/0/has_beacon lights for all the different lights would be helpful.

Way to return current camera from ConnectAPI

Last Updated 08092022-125203

The api gives info on different cameras by number (I can look up the name of camera 4, for example) but there’s no way to find out the number of the current camera.

Ability to set time and date

Last Updated 01222021-060642

UDP connections for flight control axes

Last Updated 03092022-184242

UDP connection would allow for better latency of flight control commands. Sending camera commands via the UDP SmoothTrack API is faster than sending them over TCP. I’d like to be able to continuously send flight control commands the same way.

aircraft/0/weight

Last Updated 03312022-142754

aircraft/0/mlw

Last Updated 03312022-142757

aircraft/0/mtow

Last Updated 03312022-142800

Opening up the Connect API for ATC

Last Updated 04112022-063130

Get Airport Status & Get World Status - Proper airportName field (completely distinct from airportIcao) with the full name in Infinite Flight of the airport (e.g EGLL / London Heathrow)

Last Updated 04142022-060922

Include a user's roles in the flights endpoint

Last Updated 04232022-054817

The API responses being compatible in multiple languages.

Last Updated 06042022-231022

Some people in our development may not understand english well. For example, the json responses will appear in another language like french. As apart of this, add endpoints which allows users to change the language of their data. for example: /v2/sessions?apikey={apikey}&lang=cn (for chinese) or /v2/sessions?apikey={apikey}&lang=de (for german)

I accidentally created a new card, please delete this one.

Last Updated 06042022-231040

Search userIds with username regex expression

Last Updated 07152022-161043

Infinite Flight OAuth system (@see description)

Last Updated 07162022-062209

Similar to Sign in with Google. Users can sign in using their Infinite Flight account. The API would expose their discourse username, email and profile picture.

It would be especially useful when syncing up their IF account to a third party app (in the easiest way possible).

Get a list of userIds by role

Last Updated 07162022-062343

Get a list of userIds of specific groups such as IFATCs / mods / staff / other....

Get Flights - Active / Away status

Last Updated 07162022-113751

Get User Stats (HTTP POST) - Number of online ATC sessions (we have onlineFlights for flights)

Last Updated 07172022-110411

Get User ATC Session(s) - Number of violations issued

Last Updated 07192022-065147

Get User ATC Session(s) - Server name

Last Updated 07192022-065243

Get Flights - Time last updated & possibly refresh delay in sec/min between updates. Helps to perfectly sync with IF (example useful case: stops the flights from getting thrown backwards when animating them)

Last Updated 07212022-124031

Ability to access functions of the editor

Last Updated 07282022-135054

It would be cool to have access to different scenery editor functions via the connect API. Such as placing, modifying, deleting, etc.

The only one that I currently know of is the delete command. Even that still prompts the user to confirm though.

Get Session Detail - Fetch grade/other requirements (Get Sessions returns only if restricted or not)

Last Updated 08182022-075138

Get information about surrounding traffic in Connect V2

Last Updated 08202022-211418

Get User Detail / Post User Stats - Number of online ATC sessions

Last Updated 08262022-162945

Get User Detail / Post User Stats - Total time ATC Sessions

Last Updated 08262022-162950

Get ATC Schedule

Last Updated 09062022-105631

aircraft/0/systems/nav_lights_switch endpoint is missing

Last Updated 12292022-212806

This endpoint exists for the other three types of lights. It’s nice because it takes a boolean rather than a 1 or 0 int.

A workaround is to use aircraft/0/systems/electrical_switch/nav_lights_switch/state.

aircraft/0/systems/autopilot/on

Last Updated 09112020-085058

This does not have setState functionality. Tested with Bools

Set State - Boolean - Instantaneous gear descend/retract : aircraft/0/systems/landing_gear/lever_state

Last Updated 12292022-210801

commands/Engine.Start and commands/Engine.Stop

Last Updated 12292022-210208

These do not function. Tested with engine numbers as an argument

Endpoint GET - v2/users/{userId}/flights returning systematically null values for the liveryId [FIX IN PROGRESS]

Last Updated 12162022-045130

It seems that the liveryId returns a correct value for some people such as KaiM & Laura but for most people it seems that it doesn't.

aircraft/0/systems/autopilot/spd/target

Last Updated 01032023-110950

setState does not change the value of the autopilot spd target. Tested with float value.

ATC Actions for non-IFATC and Time Periods

Last Updated 10022020-140829

In Live API UserDetails endpoint. Request by Chris_S via IFC. See https://community.infiniteflight.com/t/userdetails-aspx-request/416101.

commands/resetcamera

Last Updated 05212021-213339

A command like this to recenter the camera (like on double tap) would be useful

Missing proper documentation

Last Updated 10042020-234941

https://github.com/flyingdevelopmentstudio/infiniteflight-api Made by @philippe and @Nicholas. Great starting point and very helpful but outdated (? perhaps) and uncomplete.

GetUserStats - Level 2/3 Count

Last Updated 01062021-130336

Add Level 2/3 count for 24 hours to the GetUserStats endpoint similar to the old api with the 24 hour ghosting. This will save going to the grade endpoint.

Atlantic / pacific tracks

Last Updated 02022021-152546

It would be great to be able to fetch the current tracks from infinite flight. This could also include the new tracks that Misha has been testing.

Historical Data for Live API

Last Updated 02032022-035219

See https://community.infiniteflight.com/t/historical-flights-in-userdetails-aspx/417261/2

NOTAMS / TFR(s)

Last Updated 02122022-172702

Be able to receive the current TFRs through the API.

Get ATC operations gained from a particular controlling session

Last Updated 02122022-172704

Live API Airport Details Endpoint

Last Updated 03282022-035349

See https://community.infiniteflight.com/t/new-api-airportdetails-aspx-request/417143.

Add a state in the Connect v2 API to interrogate (and set) the rudder brakes.

Last Updated 12032022-232115

aircraft/0/systems/brakes/left/percentage

axis for dynamic braking

Last Updated 12032022-232134

this has been added! aircraft/0/systems/brakes/left/percentage, and the right side too

Elevator trim direct setting state

Last Updated 12032022-232226

available as: aircraft/0/systems/axes/elevator_trim

Flight time and range for current flight

Last Updated 01062021-130332

commands/Pushback only attaches/detaches tug but doesn’t push back

Last Updated 12292022-212702

provide V1 api Command.SetGearState

Last Updated 05212021-213343

I know it is old API, but would be a huge improvement Currently you can only toggle gear, so setting the gear to a specific state requires another query to the aircraft state

Request multiple flight plans through single request

Last Updated 02032022-044221

A system for getting multiple flight plans all at once, similar to the current system for getting user information.

Ability to Generate API Keys

Last Updated 02032022-044251

Possibly through a developer center, anyone could be able to get their own API Key. Could be done through a review and approve workflow.

Get User Stats - Add a serverId query parameter which will fetch the stats of all pilots & ATC in the server in addition with the userIds provided in the body of the POST request

Last Updated 05252022-192208

Webhooks/Event Subscriptions

Last Updated 02032022-044253

Implement a "don't call us, we'll call you" system for some events in the Live API. Possible events:

Multiple flight ids for flight plan endpoint.

Last Updated 04082022-204752

Example: https://api.infiniteflight.com/public/v2/flight//flightplan?id=12312541&id=9877835&id=219873

Should be able to fetch an array of flight plans for multiple users

Original Request in IFC: https://community.infiniteflight.com/t/feature-request-accept-multiple-flight-ids-for-get-flight-plan-endpoint/653702

Request Multiple FPLs (Link to IFC)

Last Updated 04082022-204754

This would be useful for getting ETAs for a list of flights, for example: flights inbound to an airport.

More info below: https://community.infiniteflight.com/t/feature-request-accept-multiple-flight-ids-for-get-flight-plan-endpoint/653702/20

Get flight plan by IFC Name

Last Updated 04082022-204812

Get All Liveries - Include aircraft registration

Last Updated 09282022-060832

We don't record this data and won't be adding this at this time. Sorry!