TheFaxman's forum posts

#1 Posted by TheFaxman (50 posts) -

@edgework: It's mostly about minimizing end user impact when API changes occur. There's two real categories here:

1.) A bug in the app itself often due to assumptions. In this case by testing against a beta endpoint the app author can fix the bug before their users are impacted by it. This is more impactful when the upcoming changes are fairly big.

2.) A regression in the API. In this case it gives the opportunity to provide feedback to you guys earlier and reduce impact.

During the seaserpent beta I found a bunch of bugs in my app that fell into #1 and quite a few that fell into #2. Both ended up getting fixed before the rollout because of the beta endpoint and my end users saw no real impact. If the changes had just been deployed I probably would have had at least a week's worth of disruptions while I worked through issues. Like I said before I don't suspect what you asked about is really impactful this is more of a general suggestion. I know that having a beta endpoint to test against is more work for the engineering teams so I can appreciate that it may or may not be the right thing here.

#2 Posted by TheFaxman (50 posts) -

@edgework: One thing that I think really helped when the site & API redesign hit was the beta endpoint we could test our apps against (I found a number of bugs and regressions this way). While I don't suspect adding fields is a big deal for most apps it would be great if you could stand up a beta endpoint so people can test and give you feedback before launch.

#3 Posted by TheFaxman (50 posts) -

@gamingmichael: I have a "2.0" update that I've been working on - but it's mostly updates to switch to the Windows 8.1 / Universal SDK so that when the Xbox SDK drops I'll be ready to get things working.

If you have a specific feature request let me know - I'm not 100% sure what you mean by bookmarking and since I'm actively working on things it's a good time to get feature requests in.

#4 Posted by TheFaxman (50 posts) -

@jslack: The hard coded API key usage was the only guidance I've seen for client apps. I have no problems switching off of this but I'd like some guidance as to what I should be moving to? Should I ask for API keys from users directly? Use the /boxee/ code method? Something else?

I need to try to get a fix out as soon as possible since my users are blocked so I need to figure out a method fairly quickly.

#5 Posted by TheFaxman (50 posts) -

@jslack: I think this is affecting my app's users - I've had multiple reports of failures due to rate limit errors. My app makes requests for about 5-6 resources at start up to populate its UI and it seems to hit the limit very frequently even though the usage patterns is not what I would call abusive (a dozen requests in the span of 10-15 seconds then nothing for a few minutes or longer). This can turn to 100s of requests per hour if people are really browsing around the app.

My app is a client application so there are potentially many hundreds of clients making requests at any given point in time. This seems to equate to the app being hit by rate limit failures most of the time and I'm not sure how to address it. Help is appreciated here - I have some upset users that need their Giant Bomb fix.

#6 Posted by TheFaxman (50 posts) -

I'm getting a 500 error trying to request the promos resources in the API:

http://www.giantbomb.com/api/promos/?api_key=<key>

No error message comes back from the server - just a blank 500 response. Other requests using the same API key work fine.

#7 Posted by TheFaxman (50 posts) -

I've noticed this via errors reports from my app - it appears that some recent videos have image URLs that when I try to access produce 404 errors. For example - the images for Super Professional Fridays: 04/04/2014 returns the following data (all URLs are invalid):

<icon_url><![CDATA[http://static.giantbomb.com/uploads/square_avatar/9/93998/2616660-untitled.png]]></icon_url><medium_url><![CDATA[http://static.giantbomb.com/uploads/scale_medium/9/93998/2616660-untitled.png]]></medium_url><screen_url><![CDATA[http://static.giantbomb.com/uploads/screen_medium/9/93998/2616660-untitled.png]]></screen_url><small_url><![CDATA[http://static.giantbomb.com/uploads/scale_small/9/93998/2616660-untitled.png]]></small_url><super_url><![CDATA[http://static.giantbomb.com/uploads/scale_large/9/93998/2616660-untitled.png]]></super_url><thumb_url><![CDATA[http://static.giantbomb.com/uploads/scale_avatar/9/93998/2616660-untitled.png]]></thumb_url><tiny_url><![CDATA[http://static.giantbomb.com/uploads/square_mini/9/93998/2616660-untitled.png]]></tiny_url>

I did a quick scan and found similar errors on "Worth Playing: 04/04/2014" and "Worth Playing: 03/28/2014". Not sure what the common pattern is but these seem to be the only ones missing valid image URLs.

#8 Posted by TheFaxman (50 posts) -

This seems to be a recent regression (people started reporting it in my app today). Previously when requesting JSON data number_of_total_results was returned as a number. Now I'm seeing it returned as a string:

{"error":"OK","limit":2,"offset":0,"number_of_page_results":2,"number_of_total_results":"590",...

I'll put a fix in my layer for this - but if it can be reverted that should help reduce impact to apps that are assuming certain datatypes on results.

#9 Posted by TheFaxman (50 posts) -

I've had a few error reports on my app - by debugging things it seems that even if asked for related_concepts is no longer being returned on a concept request. I've spot checked this on 3-4 items and they're all missing the field.

For example - here's a request my app is making that's hitting this problem (api key removed)

http://www.giantbomb.com/api/concept/3015-130/?format=json&field_list=aliases,api_detail_url,deck,description,first_appeared_in_game,id,image,name,related_concepts,site_detail_url

#10 Posted by TheFaxman (50 posts) -

@frobie: I've noticed some requests to load specific entities fail even though I can see them on the site. For example - http://www.giantbomb.com/scott-k-tsumura/3040-5449/. When I try to request person 3040-5449 via the API I get an object not found error.