Tag Info

Hot answers tagged

12

Just wanted to let everybody know that I just made a new release of the library here. This release includes tons of bug fixes as well as some breaking changes which shouldn't be a problem if you have been running off the trunk. Also, by popular demand, I added a .Net 3.5 version of the library to this release. The hope here is to eventually have a mono ...


12

Addons Stackprinter allows you to print directly from Stack Exchange sites using Greasemonkey script or an handy bookmarklet. Greasemonkey script adds a Printer-Friendly button to the question you are browsing (Firefox and Chrome both supported). Bookmarklet is useful if Greasemonkey is not an option and has the same effect of Printer-Friendly button, ...


11

I updated several aspects of the app in response to user feedback: Error handling is somewhat better (it will now tell you if your token is invalid, instead of a generic "error" alert) Queued API calls are aborted now, which should speed up site changing, among other things. There's now an option to deauthorize the app, should you decide to revoke its ...


10

EDIT: Implemented using Web Sockets (because the caching characteristics of the API does not allow real-time notifications). I created a Chrome extension and Firefox add-on, and created a Stack Apps listing at Real-time desktop notifications for Stack Exchange inbox. In Google Chrome, the popup is closed when performing an action outside it (clicking, ...


10

Move the id value into the query string In that the id is vectorized, it is designed to represent multiple values. Currently the id field is a component of the url. This severely constrains the number of records that can be retrieved far below the stated maximum of the max pagesize which is 100. Another, more serious, implication of this limitation is ...


9

Some comments on the new features: Authentication I really dislike an authentication flow which mandates a call out to a browser. It makes command line applications basically impossible. It makes consistent UIs for specific platforms very hard (e.g. iPhone), as you basically have to dump the user into a web browser with an entirely different UI. It also ...


9

User Authentication This is an obvious one (and a stated goal for V2, I think). The basics would be for some way to authenticate a user against his StackOverflow/etc user. Also, a way to access the "linked accounts" information would be great (so authenticating a StackOverflow user will automatically give the application knowledge of his other accounts ...


9

Users's Favorite Tags Having access to a given user's favorite tags would make it much easier to provide a customized user experience where tailoring to the user's preferences could be automatic.


8

I would like to see fixed paging. And yes, that means I think the current system is broken. What do I mean by broken? When you want to get 500 newest questions and the page size is 100, it's impossible to do so without the possibility of duplicates (which are easy to ignore) or (much worse) missing questions. This happens because you can access page 1, ...


8

The ability to post questions/answers. This is important for the question-answering robot I'll be making.


7

Yes, you can change very nearly everything (and actually everything that's user entered) about an application after it's been registered. You should use the domain you intend to host the client-side app under as your OAuth Domain. While not strictly necessary, it's the sanest option.


7

Bug: When the error popup is displayed, no error is displayed (only a .), and clicking the Ok button does not dismiss the popup box.


7

I would be interested in seeing a /me/votes route to get a list of all my upvotes and downvotes. Note that this would only apply to my voting history and not anyone else's.


6

For /sites (and only it) I have removed the pagesize constraint. I believe in this case it makes sense, since applications are expected to query all of that data and cache it for long periods of time. The constraint remains elsewhere, as it's very important for performance reasons.


6

Whelp, that was an oversight. accept_rate should now be returned on both user and shallow_user. Note that when insufficient data is available to calculate an accept rate, we don't return anything at all. The exact rules for calculating accept rate are subject to change, but currently documented here. The API returned accept rate should always match the ...


6

I don't see any particular reason not to add it, but there are some workarounds you can use in the meantime: Build a cache of all site information with the site URL as the key, and then look up the api_site_parameter value (and associated information) that way. or Use the fact that the domain name can be passed in as the value for site, and clean up ...


6

Most routes that take an ID, including the /users route, will accept multiple values separated by semicolons. For example, a query like /users/1%3B22656?site=stackoverflow will give you results for both user 1 and user 22656. You can combine up to 100 ids in this fashion.


6

This is what custom filters are for. For example, if you append &filter=!BGRhem4Z)WIti9lP55R*tgr(Jq_fHC to your query, above, you will get results without upvote_count, downvote_count, or owner information. (The first two aren't included by default anyway.) An easy way to create a filter is to use the filter-edit tool, on the appropriate doc page for ...


6

You need to pass in a sufficiently large pagesize value, per the documentation: The pagesize parameter for this method is unbounded, in acknowledgement that for many applications repeatedly fetching from /sites would complicate start-up tasks needlessly. Otherwise you'll only get 30 results, the default value for pagesize. Alternatively, you can page ...


5

I'll slot this in for v2.1, not super useful in general but definitely interesting information that we should make available.


5

See the "Safety" heading in the "Custom Filters" doc. The difference between a "safe" (default) filter and an "unsafe" filter, is that the unsafe data might return data that could result in a script injection if the data was directly inserted in an HTML document. (EG: '<script src="PwnYaSucka.com">...') Some fields are apparently inherently devoid ...


5

link is the best way to distinguish between items. No two items should have the same link, and inbox items aren't updated after they are created; they're snapshots of activity more than references to it.


5

"Agile" API releases are a really bad idea, frankly. The StackOverflow code base undergoes rapid iteration already, just watch the build numbers. On average we deploy at least once a day. Oftentimes these are just bug fixes, but a non-trivial amount of the time we're introducing new features or revising existing ones. To take one feature for example: ...


5

I think Py-StackExchange is your best bet; there's an API V2.0 branch that seems to be active.


5

No. Currently the users type does not return any private_info and neither does the user_timeline type return any voting information. No other API method allows for detecting a user's vote history except one question at a time. You would have to fetch every single question and test the downvoted and the upvoted properties. If you limited your search ...


5

By "bio" you mean the about me field, right? ... Any path that returns a user object will return the about_me property, but this is not returned by default. You have to use a filter that has about_me enabled. For example, here is a query to get your "About me" on stackapps: users-by-ids#ids=8109&filter=!.2mo6GlnpFPFeBKnaz&site=stackapps An ...


5

This is currently not possible via the API. The best you could do is have the user logged into a browser and then screen-scrape the stackoverflow.com/users/{user_id}/?tab=votes pages... Hardly an acceptable workaround. The Authentication doc, Scope section, does say: private_info - access full history of a user's private actions on the site. ...


4

To find user_id(s) for a username, use the inname parameter of the /users query. You will have to repeat this query call for every Stack Exchange site that you are interested in. For example: /users?inname=Zagorulkin&site=stackoverflow&filter=!6Xcz2tYayQsZ1 /users?inname=Zagorulkin&site=programmers.stackexchange&filter=!6Xcz2tYayQsZ1 If ...


4

These typos were fixed in the latest build.


4

Mkay, I've only used the part of the code that relates to StackAuth: You forgot to update the version number for SitesMethod and UsersByIdAssociatedMethod SitesMethod and UsersByIdAssociatedMethod both take $key as a parameter, but seeing as we've already inited the stackPHP object with the key, seems a bit redundant. I changed my SitesMethod function to ...



Only top voted, non community-wiki answers of a minimum length are eligible