Here's my 2p's worth. Note: I deliberately have not read the rest of this thread as I do not want to have my thoughts altered by others ideas, as the same time, I simply want to throw my ideas into the melting pot so that the FD can review and take in account as much as they wish.
So, here's my thought, there are several aspects of the game that I'm immediately interested in - Exploration, Mining and trading. An API will be extremely helpful as I can build tools/a multi tool to help me.
Let me deal with each in turn. Exploration - currently, I'm using the galaxy map and the system view to work out if I that system is completely explored. I think the game has this fairly well covered.
Mining. - finding the places to mine can be a problem, basically it means heading to each system and trying it out - great, but I'd like to accumulate data to help me build up maps of places where I can mine, and what I will get.
Trading - I want to be able to find trade routes. This is something that is currently completely lacking in Elite. it's 1000 years in the future, Stations are not currently advertising their prices lists - really? You tap a ship with a lazer and you get set to wanted, but a station cannot send it's price list out for 100 light years? - This is what I'm looking at.
So, to solve these problems, I'd love to get API access to be able to get the following information.
Commander information
1. Current ship - by Type "Sidewinder", "Type 7", "Hauler" etc. Also, full details of the loadout of the ship, basically a list of the hardpoints, internals, paint job and decals.
2. Current SystemName
3. Current Station (if docked)
4. Funds available (my current credits)
5. My cargo hold contents
Information that I'd like to be able to query
1. Get information about Systems - System Name, Co-Ordinates (they're in the log file already)
2. List of objects in the system - same as the system view, this will allow me to list the systems with asteroid belts and ringed systems for mining. A breakdown of each object would be great so that I know where to try for mining - I'd try a metal asteroid belt, even if it turns out to be a dud, it's a starting point.
3. List of stations in the system - Station Name, distance from jumping in point (how far so you have to fly when you enter the system), information on what the station offers - black market, commodity list, shipyard, outfitting services each detail here will allow people to easily answer questions like "where I can purchase an Orca?", or, "I need to find an A class power plant for my Anaconda, does Cleve Hub in Eravate sell them?"
The commodities data would be a representation of the data that you see on the commodities screen, with a datetime (utc) of when the pricelist was set, the same should be for each piece data that could change.
It would also be useful to have a breakdown of the pads that station offers. This allows an answer to the question "Is my Type-9 going to be able to dock?"
All of this could be made available as XML/json representations, using IP requests from the servers. Whilst I don't recommend having people type in their usernames and passwords into third part apps, there could be a token system where once you've logged with the official launcher a session key is made available that third part applications can use to authenticate (this way FD can retain control of the logging in ability) this key can then be used to allow access to commander data. As it will change with every log in, it should be secure enough.
I would love to be able to take lots of the in game things out of the game.
for example, take the whole comms panel from the top right out into my own program for text, voice calls still come into the game, but the content of the text could be routed to an application that I put on a second screen/tablet. This would allow that part of the screen to become a notification area and actually completely disappear when I've got the chat program running externally. Same can be said for all the comms and systems panels too. Just imagine a cockpit builder with far too much money putting building a full cockpit and using a couple of high end tablets - on their left to act as the comms panel, and one of the right for the systems panel. They'd be able to do things like request docking using a touch screen interface rather than through the games UI.
For the combat fighters, the systems panel could be tapped so they can quickly choose their fire groups, no cycling through them, just look over and tap their choice.
I'd suggest that rather than rush on the API front, take the time to deliver the things that people are crying out for first. From my perspective and looking at the tools that are already being written, that pretty much means the information that I started out with. System info, station info, commodity lists. Then building things up from there. Take the time to get the API right, even if that means limiting it initially.