Discussion: Feature Request Thread Staff Topic

We're super excited to see so many feature requests!
Help us keep track of your awesome ideas by posting new feature requests here.
To start this topic off right, I scoured our forums and compiled a list of existing requests: 

Outstanding requests
  • Number of visits and last visited, through identity scope added to locations.streetinfo
  • Sold, unsold, canceled, or still running auctions represented in auction.status
  • Uses for powder added to auction.list
  • Wears and uses added to players.inventory
  • Ability to purchase auctions with auction.purchase
  • Activity Feed reading & writing
  • Ability to sort/ move inventory items
  • List of online players
  • Item lookup by classid
  • Images last updated timestamp in player.GetAnimations
  • players.inventory extended to house cupboards and garden
  • Ability to search auctions by class_tsid
  • Given item tsid, list of recipes that can be made
  • Given recipe, list required skill, ingredients, energy, mood, time & output
  • Add mailboxes & mail dispatch to locations.streetinfo
  • Joining of location.getHub, location.getStreet, and location.streetInfo calls
  • Ability to query street resources
  • Ability to access stream of "public" game activity
  • API access beyond web app
  • Add date a player joined Glitch for a "Glitch Birthday" 
  • Add an auctions.priceCheck method which return price bounds/averages for items.
  • Methods for upgrades - get list of purchased upgrades, info about all upgrades

Implemented requests
  • Favor points by giant added to players.stats - this is returned by giants.getFavor
  • Player's friends added to players.fullInfo or a separate method call for a player's friends with avatar details - returned by friends.list
  • Ability to buy and sell housing - obsolete
  • players.achievements endpoint to view player earned achievements - state information is returned to the achievements.* methods when authenticated

Thank you for working with us to expand and improve the Glitch API. 
a timestamp images were last updated at in player.GetAnimations (so we can cache them)
Extend players.inventory to see what people have stored in their cupboards at home
Search auctions by class_tsid
Fix auctions/inventory to use same categories as each other
Extend players.inventory to read inventory items in a player's house. Ideally include cupboard, floor, yard, and crops.
Sorry if I have missed this being mentioned elsewhere, but I'm new to the developer area... since I don't see it listed here, can I request we get an items.getList that we could use? Categorical filter could/would be helpful similar to the auctions. It's not something that would need to be hit repeatably by most systems, I don't think, but simply having access to the info at all would be helpful - most people I've seen are using screen-scraping methods to try and pull info from the website's encyclopedia, which seems less than ideal :) cheers!
+1s to auction.status, powder uses, auction.purchase, inventory management
+1s to fixing auction categories: category=powder powders element_powder element_compound NONE select Powders - either 0 records or all.  Item/Auction normalization would be good, too.
New endpoint: recipes - given an item TSID, list the recipes that can be made.  Given a recipe, list it's requirements: skill, ingredients, energy, mood, time, and it's outputs: result, XP, mood and limits.
locations.streetinfo: add mailboxes, mail dispatch.  Maybe crab location?
The OAuth authorization endpoint simply redirecting with valid credentials if the application has already been previously authorized (as opposed to displaying the permission dialog every time) would be quite nice.

Other than that, I think the major points have been covered in this thread. :)

Actually, scratch that; realty-related endpoints would be quite nice as well: currently for sale and already sold, perhaps filtered by area and possibly block number, and/or price. The ability to buy and sell realty through the API would be nice as well.

Also, something which seems to have a good amount of support as well is a players.achievements endpoint to view the achievements a player has gathered (since this is publicly accessible information anyway)
Can we get access to what items someone has in their house or in cabinets?
What I would really like is a location.getWorld call that would basically do a join of all the location.getHub, location.getStreet, and location.streetInfo calls at once. There are plenty of times where a developer would want this global information, and right now, we need to iterate through them all. It is slow since we are rate-limited, and adds overhead. Since this is a common task for resource-finding and route-planning, it makes sense to include all of this info in one call. I would also rate-limit this call to once every 10 seconds or so or more. It really is the type of thing that most developers should cache and run off of their cache.

Also, to reduce calls to the location.streetInfo calls, give us a way to do queries on street resources. For instance a locations.findResource that would take a resource_tsid (this would be new) for each of the resources (like cherry trees, piggys, chickens, patches, etc.), and return a list of the streets that they appear on.

I would also suggest a Jabber bridge for the in-game chat. It would be nice to be able to chat with Glitch friends from our favorite Jabber-ready chat client.
Request: A way to access the API from a desktop app instead of a web app.  Currently, there is no way to authenticate to your oauth2 system without having a web page to redirect to.  Having a way to tell the oauth2 system that you don't *have* a web page to redirect to, and the oauth2 system just presenting the authorization code to the user directly (for copy/paste into the application), would allow a wider programming audience to access this API.
A huge +1 for looking up an item by its class_tsid.

The hack I'm using to get around this right now isn't ideal. I have to scrape an item's page in the Encyclopedia. 

That wouldn't be a big deal if the class_tsid for an item was identical to its URL in the Encyclopedia. 

Let's look at a Musicblock. The class_tsid is "musicblock_d_green_03" but its URL ends in "musicblock-dg-3". Not the worst problem since there's a distinct pattern. I can easily determine the URL based on the class_tsid. 

Now let's look at a Showy Sapphire. Its class_tsid is "gem_sapphire". Its URL  ends in "showy-sapphire". In this case, I need to know that a "gem_sapphire" is "Showy" - I can't simply deduce what its URL would be on its class_tsid alone.

Without the ability to look up an item through the API I'll have to build a translation table. Given that I can't simply programmatically guess every URL to scrape, building this is going to be tedious.

So there you go. Big fat +1 to item lookup.
@Darque How other OAuth services that need to be accessed from desktop applications -- like Twitter -- handle this is to present the user with an "authorization code" (usually a number) which they then enter into the application. The application then requests the token as normal; basically, the authorization code is equivalent to the "redirect_url".

+1 to desktop app OAuth support!
Maybe I don't fully understand it, but you have the ability to set "Auth Mode" right?  Where you can have Code (server-side) or Token (client-side).. the latter gives your user a code that they need to insert.
ok, this isn't really an API request, but is there a search feature for the forums? maybe I'm just blind - it's late - if I'm just missing it please splank me and point me in the right direction.

I tried starting a new topic, but kept getting a 404 when I submitted the form :(
Any chance of getting player.achievements anytime soon?(!). I'm planning to add a categorised view of achievements to dopiaza's startling fecundity site and it would be soooooo great to be able to highlight the achievements of the authenticated glitch.... I know there is a grease-monkey script for this but it doesn't categorise achievements and it doesn't work for everyone (e.g. me, since I use Chrome!)
Adding API ability for information regarding player written notes would be wonderful.
Having access to the title, text, author, date, and current location of a note would be a great place to start.
Regarding notes: writing notes automatically would be nice as well, although that reaches pretty far into the game interface.
I'd like to have more access into the game's static tables.  Recipes are a good start, but I'd also like to know things like: how much XP is it to a given level?  What items are available at what vendors?  

Stuff like this I could make my own table of, and then hard-code into my app, but it's better overall if I can (at least periodically) query the glitch servers and get the very latest.
+1 to item recipes!
We have the ability to look up achievements. I suggest a way to see progress towards new achievements. For example, there is an achievement for jumping 11,111 times. Isn't there somewhere where you can see how many times you have jumped, and your progress towards the next achievement? It would be cool to see all such stats.
This is really niche, but would it be at all possible to either vend or allow crafting of a loaded 12-sided dice? Maybe with limited uses per day...
I would like to see a way to upload a list of streets to populate the guided route in-game ("GPS").  This would allow external sites to design "tours" or plot paths that maximized some feature or other.
It would also be useful to be able to find out the last time a player has been on a particular street (and if they've been there at all).
I'd love a search users by email feature (preferably one that could handle multiple emails at once).  It would be great for finding Glitch Friends!

Foursquare has a simliar feature which has been useful for building apps.
This was kindof mentioned, but:
Wears and uses added to auction.list
Add under each skill in the skill.listall a list of skills that have the listed skill as a requirement (needed for).

I've found a way of building off the API in the .net framework... not very good code, but It might be useful.  I've posted it on the forum.
I would love to see something like auction.priceCheck by tsid or class_tsid that comes back with some vital stats about that specific type of item.  I've coded this myself using auction.list but it seriously hurts my feelings to have to wait 5 to 10 seconds for a full auction list so I can figure out the info for myself.  (Just as a defense, the 5-10 seconds was before I added category to my query.)

Stats I calculate for matching auctions:  Total number of matching auctions, Total number of actual matching items those auctions represent, Total item cost of those matching items, Average cost per item, Lowest cost per item, Highest cost per item.

If that's not reasonable then a mode of auction.list that lets you query just a single specific item (instead of category) would be perfect so I don't have to ask for everything to do it.
Would be great to be able to donate items to giants along with checking favor points (which I see that the latter is already in the list) :)
Due to recent changes to the auction system involving actually mailing your expired auction items back to you (which is really very painful) I would love to see:

mail.inbox (list mail records [mail tsid, sender, subject, message], defs=1 to get stats about the attachments [full item record, including automatically item_defs], requires read scope.)
mail.takeAttachment (for taking an attached item off of a message and putting it into your inventory based on mail tsid, requires write scope. possible errors: inventory_full, no_attachment)
mail.delete (for deleting an item that has no attachments anymore by mail tsid, requires write scope.)

For obvious security and spam related issues I also simultaneously request that mail.send or similar NEVER be opened to the API.
Could we have an API method which allowed new phrases to be uploaded to our garden gnomes?  That would allow us to do an automated "quote of the day" thing from an external DB of quotes.
Show all locations visited/unvisited? This would be nice but looks more like a gm script, right?
Mr Eh, you could accomplish that with "Number of visits and last visited, through identity scope added to locations.streetinfo" which is already on the list above (once it's implemented, obviously) :) And yes, there's already a few gm scripts that will activate on the /locations page and via ajax can come back and highlight which streets you have/havent already been to. 
It'd be very handy if item defs (in auctions, say) reported the fact that certain items weren't vendorable.
An extension/app that tells you what you need to do in order to get an achievement (ie; if it was the "Able Chopper" achievement and you had already made 9 of the recipes, it would say "2 more recipes needed"). I'm not sure how difficult it would be, but it would be a really useful addition. Thank you!
An extension/app that tells you what you need to do in order to get an achievement (ie; if it was the "Able Chopper" achievement and you had already made 9 of the recipes, it would say "2 more recipes needed"). I'm not sure how difficult it would be, but it would be a really useful addition. Thank you!
global coordinates for locations.streetInfo so a map can be built, and math can be done for pathfinding and nearest-to-thing queries. Just a simple lat/long of intersections or shape coordinates of streets. I tried adding it to my own data-copy, by sort of reverse-engineering intersections, but it would be cool if it was included in the API.
we need a feature that lets us gather an authenticated players specific achievement information, like how many X they have done out of the required XX for a specific achievement. 
I was just wondering if there were expected dates for any of these features yet. I Can't wait to play with some of them!
Add the Photos to the API. This would be nice :D
would really like to have access to neighbors on home streets!
Could we please have player streets added to the streets API? That would be really useful.
I would love to be able to re-arrange and add/delete street signs for one's street via an api call. This would make it possible to do advanced re-routing for resource routes based on resource availability or glitch-load.
friends.list is a new method that returns a list of your friends. friends.add and friends.remove do what you would expect, too.
@Bees!: Is it too much to ask if friends.list can take a parameter like location = 1, and when the parameter is specified, to return the is_online and location property (like in players.fullInfo)?

It will save a real big bunch of api calls when checking which of your friends are online...

pretty=1 please?
I'm looking for a simple and fast way to get details about an achievement.
With achievements.listAll, it seems to take a bunch of extra loading time and object processing for the whole.
We have skills.getInfo for skills, so how about an achievements.getinfo equivalent?
New methods:
* achievements.listAllCategories
* achievements.listAllInCategory
* achievements.getInfo

All 3 methods return state information when the caller is authed. We don't yet have a way to return progress towards an achievement, but will be able to add that some time in the future.
nifty :]

that listAllCategories with auth sounds pretty effective for player profiling
good idea to add the series as well!
just one thing, achievements.getInfo seems to return only false "got" states for me
Oops! Fixed now :)
In the original post, it mentions players.achievements as one of the implemented methods but I do not see it listed here: http://developer.glitch.com/api/

Also this doesn't work: http://api.glitch.com/simple/players.achievements

It would be very helpful if this method was available to list all achievements a player has earned by looking up the player TSID. Thanks for your time!
Huh, you're right. Not sure how I overlooked that. Consider it on my todo-list

In the meantime, you can use achievements.listAllInCategory to get the achievements earned within a single category.
Previous 1 2