Preferably Via rest protocol.
Give programmers access to things like current auction information (auctions up), account and character information (auctions you have up), Crowns, energy, armor, item levels, Mail (just read, or even just a notification that you have new mail, without having to go in game)
Require an api key to access an account's information (like eve for example), similar to a passcode, but generated on yourside (rather than via player/user).
Strictly readonly, just make information viewable. So you have no worries of spam or hacking and cracking. Very worst case senario, some malicious user who somehow managed to compromise an account api-key could see the accounts character's crowns/energy/auctions. Since its read only they cannot effect the account.
If you want to be defensive, limit visibility similar to stats available via player->inspect (full inspect disabled).
Maybe a way to log material/crown/vial drops (and what enemy dropped it) to a log file outside of game's (for those of us that love statistics)?
Loads of potential uses, checkout Eve-online's third party apps for examples. You've got everything from new player helping applications (provides players with information, and adviced based on their current level and stats), to market tracking information, to drop/damage statistic tracking for killboards (would be kind of cool if a guild could say "haha we took down vanad 10 times this week, beat that", especially when pvp comes out), etc, etc...
5am here, ill expand upon this tomorrow.