Hot answers tagged

32

There is no tutorial for the API, nor is there likely to be one -- at least officially. There is a "Hello World" introduction. To use the current API (version 2.2), you really only need to know/do: How to make an HTTP GET request, in the language of your choice. There are also various user-supplied libraries in .net, PHP, Python, etc. to help with this. ...


17

It's a bit of a Catch-22. Work around it by: Make a app (or script) post for your app (or script). Also tag it with placeholder. And put "PLACEHOLDER -" at the beginning of the title. Also, indicate in the post text that the app is not yet ready for prime time. This has already been done a few times, for example: "Chatdump - a site monitor (placeholder)"...


12

It's pretty simple, you just append your key to the URL as a parameter. For example, looking for users 1 and 5: http://api.stackexchange.com/2.2/users/1;5?site=stackoverflow&key=YOUR_KEY_HERE So, it looks like your HTTP.call would become: HTTP.call ( "GET", urlString, {params:{site:"stackoverflow", key:"YOUR_KEY_HERE"}}, function (...


11

Refer to the Stack Exchange API, Authentication docs. It looks like you are trying to authenticate using either a server you do not control, or a local server that is not on the public internet. Crucial Points: Do not specify a redirect_uri to any server that you do not control. When you use something like redirect_uri=https://www.yahoo.com/, then a third ...


10

While this is not available I don't think SE can do much to prevent it. I don't have any easily readable code to give you code example, but the theory is following: The upload request: To upload images to Stack Exchange, you must send following POST request to https://__HOST__/upload/image: fkey: we'll talk about this token later source: web/computer ...


10

You cannot do this. A delete feature has been requested and requested again (with status-planned given about 3.5 years ago). Register your desire for this by immediately upvoting these posts: Deleting an application key? How to delete an OAuth (2.0) API key? (Theoretically, if those feature requests get enough upvotes, they might get some developer love.)...


10

After re-investigating my code, I realized what was going on here. For this particular project I wasn't using the API key and access token of my own application; I'm using the ones I sniffed from the communication between the Stack Exchange mobile app and the API. The Stack Exchange mobile app has an unlimited quota, it seems.


9

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 ...


9

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 ...


9

template.user.js // ==UserScript== // @name Stack Exchange Userscript (Template) // @grant none // @match *://*.stackexchange.com/* // @match *://*.stackoverflow.com/* // @match *://*.superuser.com/* // @match *://*.serverfault.com/* // @match *://*.askubuntu.com/* // @match *://*.stackapps.com/* // @match *://*.mathoverflow.net/* // ==/UserScript== var ...


9

You can see your apps, that you registered with the registration page, by going to: stackapps.com/apps/oauth This page is different for every user and you will be forced to log-in to see it. The only place I have ever found this link is in a sidebar on Stack App's home page:


8

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 the ...


8

The unofficial Winterbash inbox API If you have any user's account_id then the hats information is just one call away. And the call is http://winterbash2014.stackexchange.com/api/inbox?accountId=<account_id> For example, hats information about me can be retrieved via http://winterbash2014.stackexchange.com/api/inbox?accountId=4996787 But here are the ...


8

Okay, the following Stylish style should be a good start. You can also see / install it at userstyles.org. @namespace url(http://www.w3.org/1999/xhtml); @-moz-document domain("askubuntu.com"), domain("mathoverflow.net"), domain("serverfault.com"), domain("stackapps.com"), domain("stackexchange.com"), domain("stackoverflow.com"), domain("...


8

Just use the plain /users/{ids} route. (For network-wide score, see the bottom section, below.) if you run it on your userid, it currently returns: { "items": [ { ... "reputation": 354, ... Which is what you expected. The route you used, /users/{ids}/reputation, has a different purpose. Refer to its doc page: Gets a subset of the ...


8

The OAuth Domain is either: A valid domain that you own and control, and that is hosted somewhere the client can reach. Say, for example that you owned unicorns.mil. See this answer and this answer for more information on how to configure the app registration settings. (This is "Explicit" or server-side OAuth) OR: Use stackexchange.com. This is a ...


7

Python: Below is python code to get minimal info results. See bottom on how to run. import requests BASEURL = "https://api.stackexchange.com/2.2/info" params = { "site" : "stackoverflow" } r = requests.get(BASEURL, params=params) print(r.json()) Expected output is like: {u'has_more': False, u'items': [{u'...


7

The fix for me was unchecking "Enable Client Side OAuth Flow"


7

Your value for channelUrl is nominally correct. If I set up my XAMPP server, via httpd.conf to use port 8000, then this HTML page works perfectly fine for me: <!DOCTYPE html> <html><head> <title>StackApps SDK auth test</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> </head><...


7

You can create and edit filters from the documentation page of the API endpoint. So you start at the Index of all endpoints. There you'll find /users/{id}/answers. On the right at the top of the parameter block you'll find the filter dialog: When you click the [edit] link the filter dialog opens: Where you can expand any the [types] provided by this ...


7

It's allowed with the caveat there's no guarantee it won't be merged, provided that you abide by the good faith criteria. If you attempt to actually run something like the script in your previous post, for example, both accounts will likely be suspended without second thought. Having a separate account for testing doesn't shield you from the consequences of ...


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

Markdown. While you could use HTML (just like you can in posts), each time you use HTML instead of Markdown to format a post, Evan Carroll rapes a little kitten and sticks another needle in his Jeff Atwood voodoo doll.


6

You got that error because you set the OAuth Domain like example.com:8080, not the redirect_uri. That's not how you configure non-standard ports; see below. The redirect uri, with port, feature now works (it didn't once upon a time). To use, adjust your app settings: Go to https://stackapps.com/apps/oauth and click on your desired app. Click the "Edit ...


6

For analyzing large chunks of data, don't use the API. Use the Stack Exchange Data Explorer (SEDE), that's what it's there for. SEDE data lags real-time by 1 to 5 weeks, but that's no big problem for most statistical purposes. For intense "Big data" analysis beyond even SEDE's capabilities, use the quarterly data dumps. (Thanks, Tim Stone, for the reminder....


6

You don't explicitly need permission, but you must follow certain rules and legal requirements. Refer to Jeff Atwood ♦'s answer to "Etiquette of Screen-scraping Stack Overflow?": We regularly block (IP range ban) unknown scrapers that do not identify themselves and/or have poor behavior patterns. These bans are permanent until someone emails us to make a ...


6

Okay, went ahead and banged out a script for this; Happy Christmas! To install, click here (SE Edit Reasoner install at Github). To preview the source, click here (SE Edit Reasoner preview at Github). This userscript requires an engine that supports both @require and the various @granted APIs. It was tested on Firefox + Greasemonkey and Chrome + ...


6

It's pretty easy to get the bibtex, just send a GET request formatted like so: https://mathoverflow.net/posts/{POST NUMBER}/citation For example, for this Math Overflow question, you can get the bibtex for the question and top 2 answers with: mathoverflow.net/posts/105922/citation (Question) mathoverflow.net/posts/105930/citation (Answer 1) mathoverflow....


6

See How API Keys Work. It's six years old, but a leading API developer said: ... If you can demonstrate a need for a higher request quota, contact us. However, the Key limit should be sufficient for development, so please only request an increased quota when your application is live and has a non-trivial number of users. (Emphasis and contact link ...


6

You cannot get the days visited, nor consecutive, information for a user because that is private information(Poster is SE representative). Stack Exchange is supposed to be about the content, not the people. And knowing people's (more detailed) visit history is a social metric, not an on-topic bit of information. In a similar question, one power-user put it ...


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