Development — entry 088 of 100

StackExchange

Verified Jul 2026

StackExchange's read API serves structured JSON — questions, answers, tags, and user activity — from the entire Stack Exchange network (Stack Overflow, Server Fault, and 100+ other Q&A sites) through one versioned endpoint that works fully anonymously for read access, just at a lower daily quota. A free registered application key raises that quota to 10,000 requests a day, and only write actions or private user-scoped data need the full OAuth flow. Both app registration and the API itself are completely free.

qnacommunitysearchcontent-api
AuthenticationNone requiredCall it straight away — no key, no signup.
HTTPSSupportedTraffic is encrypted in transit.
CORSEnabledCallable directly from browser JavaScript.
PricingFreeNo paid tier — free for the documented use case.
FormatsJSONResponses can be requested as JSON.

GreatAPIs Score

Score94out of 100
Authentication25/25No authentication required
Pricing20/20Free to use
Docs20/20Machine-readable spec file bundled
Formats9/15Single response format
Freshness20/20Verified within 6 months

Embed this badge

Scored 94 on greatapis.com
<a href="https://greatapis.com/api/stackexchange/"><img src="https://greatapis.com/badge/stackexchange.svg" alt="Scored 94 on greatapis.com"></a>

Auth quickstart

  1. No key needed — call it now.
Stored keyNo key stored

Your key is stored only in this browser (localStorage) and sent directly to the API — never to greatapis.

Endpoints

Servers
https://api.stackexchange.com/2.0
answers2
GET/answers
Parameters
NameInRequiredType
orderquerynostring
maxquerynostring
minquerynostring
sortquerynostring
fromdatequerynointeger
todatequerynointeger
pagesizequerynointeger
pagequerynointeger
filterquerynostring
callbackquerynostring
sitequeryyesstring
Responses
StatusDescriptionSchema
200OKanswers
400bad_parameter – 400 An invalid parameter was passed, this includes even "high level" parameters like key or site.
401access_token_required – 401 A method that requires an access token (obtained via authentication) was called without one.
402invalid_access_token – 402 An invalid access token was passed to a method.
403access_denied – 403 A method which requires certain permissions was called with an access token that lacks those permissions.
404no_method – 404 An attempt was made to call a method that does not exist. Note, calling methods that expect numeric ids (like /users/{ids}) with non-numeric ids can also result in this error.
405key_required – 405 A method was called in a manner that requires an application key (generally, with an access token), but no key was passed.
406access_token_compromised – 406 An access token is no longer believed to be secure, normally because it was used on a non-HTTPS call. The access token will be invalidated if this error is returned.
500internal_error – 500 An unexpected error occurred in the API. It has been logged, and Stack Exchange developers have been notified. You should report these errors on Stack Apps if you want to be notified when they're fixed.
502throttle_violation – 502 An application has violated part of the rate limiting contract, so the request was terminated.
503temporarily_unavailable – 503 Some or all of the API is unavailable. Applications should backoff on requests to the method invoked.
GET/answers/{ids}
Parameters
NameInRequiredType
idspathyesstring
orderquerynostring
maxquerynostring
minquerynostring
sortquerynostring
fromdatequerynointeger
todatequerynointeger
pagesizequerynointeger
pagequerynointeger
filterquerynostring
callbackquerynostring
sitequeryyesstring
Responses
StatusDescriptionSchema
200OKanswers
400bad_parameter – 400 An invalid parameter was passed, this includes even "high level" parameters like key or site.
401access_token_required – 401 A method that requires an access token (obtained via authentication) was called without one.
402invalid_access_token – 402 An invalid access token was passed to a method.
403access_denied – 403 A method which requires certain permissions was called with an access token that lacks those permissions.
404no_method – 404 An attempt was made to call a method that does not exist. Note, calling methods that expect numeric ids (like /users/{ids}) with non-numeric ids can also result in this error.
405key_required – 405 A method was called in a manner that requires an application key (generally, with an access token), but no key was passed.
406access_token_compromised – 406 An access token is no longer believed to be secure, normally because it was used on a non-HTTPS call. The access token will be invalidated if this error is returned.
500internal_error – 500 An unexpected error occurred in the API. It has been logged, and Stack Exchange developers have been notified. You should report these errors on Stack Apps if you want to be notified when they're fixed.
502throttle_violation – 502 An application has violated part of the rate limiting contract, so the request was terminated.
503temporarily_unavailable – 503 Some or all of the API is unavailable. Applications should backoff on requests to the method invoked.
questions3
GET/questions
Parameters
NameInRequiredType
taggedquerynostring
orderquerynostring
maxquerynostring
minquerynostring
sortquerynostring
fromdatequerynointeger
todatequerynointeger
pagesizequerynointeger
pagequerynointeger
filterquerynostring
callbackquerynostring
sitequeryyesstring
Responses
StatusDescriptionSchema
200OKquestions
400bad_parameter – 400 An invalid parameter was passed, this includes even "high level" parameters like key or site.
401access_token_required – 401 A method that requires an access token (obtained via authentication) was called without one.
402invalid_access_token – 402 An invalid access token was passed to a method.
403access_denied – 403 A method which requires certain permissions was called with an access token that lacks those permissions.
404no_method – 404 An attempt was made to call a method that does not exist. Note, calling methods that expect numeric ids (like /users/{ids}) with non-numeric ids can also result in this error.
405key_required – 405 A method was called in a manner that requires an application key (generally, with an access token), but no key was passed.
406access_token_compromised – 406 An access token is no longer believed to be secure, normally because it was used on a non-HTTPS call. The access token will be invalidated if this error is returned.
500internal_error – 500 An unexpected error occurred in the API. It has been logged, and Stack Exchange developers have been notified. You should report these errors on Stack Apps if you want to be notified when they're fixed.
502throttle_violation – 502 An application has violated part of the rate limiting contract, so the request was terminated.
503temporarily_unavailable – 503 Some or all of the API is unavailable. Applications should backoff on requests to the method invoked.
GET/questions/{ids}
Parameters
NameInRequiredType
idspathyesstring
orderquerynostring
maxquerynostring
minquerynostring
sortquerynostring
fromdatequerynointeger
todatequerynointeger
pagesizequerynointeger
pagequerynointeger
filterquerynostring
callbackquerynostring
sitequeryyesstring
Responses
StatusDescriptionSchema
200OKquestions
400bad_parameter – 400 An invalid parameter was passed, this includes even "high level" parameters like key or site.
401access_token_required – 401 A method that requires an access token (obtained via authentication) was called without one.
402invalid_access_token – 402 An invalid access token was passed to a method.
403access_denied – 403 A method which requires certain permissions was called with an access token that lacks those permissions.
404no_method – 404 An attempt was made to call a method that does not exist. Note, calling methods that expect numeric ids (like /users/{ids}) with non-numeric ids can also result in this error.
405key_required – 405 A method was called in a manner that requires an application key (generally, with an access token), but no key was passed.
406access_token_compromised – 406 An access token is no longer believed to be secure, normally because it was used on a non-HTTPS call. The access token will be invalidated if this error is returned.
500internal_error – 500 An unexpected error occurred in the API. It has been logged, and Stack Exchange developers have been notified. You should report these errors on Stack Apps if you want to be notified when they're fixed.
502throttle_violation – 502 An application has violated part of the rate limiting contract, so the request was terminated.
503temporarily_unavailable – 503 Some or all of the API is unavailable. Applications should backoff on requests to the method invoked.
GET/questions/{ids}/answers
Parameters
NameInRequiredType
idspathyesstring
orderquerynostring
maxquerynostring
minquerynostring
sortquerynostring
fromdatequerynointeger
todatequerynointeger
pagesizequerynointeger
pagequerynointeger
filterquerynostring
callbackquerynostring
sitequeryyesstring
Responses
StatusDescriptionSchema
200OKanswers
400bad_parameter – 400 An invalid parameter was passed, this includes even "high level" parameters like key or site.
401access_token_required – 401 A method that requires an access token (obtained via authentication) was called without one.
402invalid_access_token – 402 An invalid access token was passed to a method.
403access_denied – 403 A method which requires certain permissions was called with an access token that lacks those permissions.
404no_method – 404 An attempt was made to call a method that does not exist. Note, calling methods that expect numeric ids (like /users/{ids}) with non-numeric ids can also result in this error.
405key_required – 405 A method was called in a manner that requires an application key (generally, with an access token), but no key was passed.
406access_token_compromised – 406 An access token is no longer believed to be secure, normally because it was used on a non-HTTPS call. The access token will be invalidated if this error is returned.
500internal_error – 500 An unexpected error occurred in the API. It has been logged, and Stack Exchange developers have been notified. You should report these errors on Stack Apps if you want to be notified when they're fixed.
502throttle_violation – 502 An application has violated part of the rate limiting contract, so the request was terminated.
503temporarily_unavailable – 503 Some or all of the API is unavailable. Applications should backoff on requests to the method invoked.
search2
GET/search
Parameters
NameInRequiredType
taggedquerynostring
orderquerynostring
maxquerynostring
minquerynostring
sortquerynostring
fromdatequerynointeger
todatequerynointeger
pagesizequerynointeger
pagequerynointeger
filterquerynostring
callbackquerynostring
sitequeryyesstring
intitlequerynostring
nottaggedquerynostring
Responses
StatusDescriptionSchema
200OKquestions
400bad_parameter – 400 An invalid parameter was passed, this includes even "high level" parameters like key or site.
401access_token_required – 401 A method that requires an access token (obtained via authentication) was called without one.
402invalid_access_token – 402 An invalid access token was passed to a method.
403access_denied – 403 A method which requires certain permissions was called with an access token that lacks those permissions.
404no_method – 404 An attempt was made to call a method that does not exist. Note, calling methods that expect numeric ids (like /users/{ids}) with non-numeric ids can also result in this error.
405key_required – 405 A method was called in a manner that requires an application key (generally, with an access token), but no key was passed.
406access_token_compromised – 406 An access token is no longer believed to be secure, normally because it was used on a non-HTTPS call. The access token will be invalidated if this error is returned.
500internal_error – 500 An unexpected error occurred in the API. It has been logged, and Stack Exchange developers have been notified. You should report these errors on Stack Apps if you want to be notified when they're fixed.
502throttle_violation – 502 An application has violated part of the rate limiting contract, so the request was terminated.
503temporarily_unavailable – 503 Some or all of the API is unavailable. Applications should backoff on requests to the method invoked.
GET/search/advanced
Parameters
NameInRequiredType
taggedquerynostring
orderquerynostring
maxquerynostring
minquerynostring
sortquerynostring
fromdatequerynointeger
todatequerynointeger
pagesizequerynointeger
pagequerynointeger
filterquerynostring
callbackquerynostring
sitequeryyesstring
acceptedquerynostring
answersquerynointeger
bodyquerynostring
closedquerynostring
migratedquerynostring
noticequerynostring
nottaggedquerynostring
qquerynostring
titlequerynostring
urlquerynostring
userquerynointeger
viewsquerynointeger
wikiquerynostring
Responses
StatusDescriptionSchema
200OKquestions
400bad_parameter – 400 An invalid parameter was passed, this includes even "high level" parameters like key or site.
401access_token_required – 401 A method that requires an access token (obtained via authentication) was called without one.
402invalid_access_token – 402 An invalid access token was passed to a method.
403access_denied – 403 A method which requires certain permissions was called with an access token that lacks those permissions.
404no_method – 404 An attempt was made to call a method that does not exist. Note, calling methods that expect numeric ids (like /users/{ids}) with non-numeric ids can also result in this error.
405key_required – 405 A method was called in a manner that requires an application key (generally, with an access token), but no key was passed.
406access_token_compromised – 406 An access token is no longer believed to be secure, normally because it was used on a non-HTTPS call. The access token will be invalidated if this error is returned.
500internal_error – 500 An unexpected error occurred in the API. It has been logged, and Stack Exchange developers have been notified. You should report these errors on Stack Apps if you want to be notified when they're fixed.
502throttle_violation – 502 An application has violated part of the rate limiting contract, so the request was terminated.
503temporarily_unavailable – 503 Some or all of the API is unavailable. Applications should backoff on requests to the method invoked.
sites1
GET/sites
Parameters
NameInRequiredType
pagesizequerynointeger
pagequerynointeger
filterquerynostring
callbackquerynostring
Responses
StatusDescriptionSchema
200OKsites
400bad_parameter – 400 An invalid parameter was passed, this includes even "high level" parameters like key or site.
401access_token_required – 401 A method that requires an access token (obtained via authentication) was called without one.
402invalid_access_token – 402 An invalid access token was passed to a method.
403access_denied – 403 A method which requires certain permissions was called with an access token that lacks those permissions.
404no_method – 404 An attempt was made to call a method that does not exist. Note, calling methods that expect numeric ids (like /users/{ids}) with non-numeric ids can also result in this error.
405key_required – 405 A method was called in a manner that requires an application key (generally, with an access token), but no key was passed.
406access_token_compromised – 406 An access token is no longer believed to be secure, normally because it was used on a non-HTTPS call. The access token will be invalidated if this error is returned.
500internal_error – 500 An unexpected error occurred in the API. It has been logged, and Stack Exchange developers have been notified. You should report these errors on Stack Apps if you want to be notified when they're fixed.
502throttle_violation – 502 An application has violated part of the rate limiting contract, so the request was terminated.
503temporarily_unavailable – 503 Some or all of the API is unavailable. Applications should backoff on requests to the method invoked.
tags1
GET/tags
Parameters
NameInRequiredType
innamequerynostring
orderquerynostring
maxquerynostring
minquerynostring
sortquerynostring
fromdatequerynointeger
todatequerynointeger
pagesizequerynointeger
pagequerynointeger
filterquerynostring
callbackquerynostring
sitequeryyesstring
Responses
StatusDescriptionSchema
200OKtags
400bad_parameter – 400 An invalid parameter was passed, this includes even "high level" parameters like key or site.
401access_token_required – 401 A method that requires an access token (obtained via authentication) was called without one.
402invalid_access_token – 402 An invalid access token was passed to a method.
403access_denied – 403 A method which requires certain permissions was called with an access token that lacks those permissions.
404no_method – 404 An attempt was made to call a method that does not exist. Note, calling methods that expect numeric ids (like /users/{ids}) with non-numeric ids can also result in this error.
405key_required – 405 A method was called in a manner that requires an application key (generally, with an access token), but no key was passed.
406access_token_compromised – 406 An access token is no longer believed to be secure, normally because it was used on a non-HTTPS call. The access token will be invalidated if this error is returned.
500internal_error – 500 An unexpected error occurred in the API. It has been logged, and Stack Exchange developers have been notified. You should report these errors on Stack Apps if you want to be notified when they're fixed.
502throttle_violation – 502 An application has violated part of the rate limiting contract, so the request was terminated.
503temporarily_unavailable – 503 Some or all of the API is unavailable. Applications should backoff on requests to the method invoked.
users2
GET/users
Parameters
NameInRequiredType
innamequerynostring
orderquerynostring
maxquerynostring
minquerynostring
sortquerynostring
fromdatequerynointeger
todatequerynointeger
pagesizequerynointeger
pagequerynointeger
filterquerynostring
callbackquerynostring
sitequeryyesstring
Responses
StatusDescriptionSchema
200OKusers
400bad_parameter – 400 An invalid parameter was passed, this includes even "high level" parameters like key or site.
401access_token_required – 401 A method that requires an access token (obtained via authentication) was called without one.
402invalid_access_token – 402 An invalid access token was passed to a method.
403access_denied – 403 A method which requires certain permissions was called with an access token that lacks those permissions.
404no_method – 404 An attempt was made to call a method that does not exist. Note, calling methods that expect numeric ids (like /users/{ids}) with non-numeric ids can also result in this error.
405key_required – 405 A method was called in a manner that requires an application key (generally, with an access token), but no key was passed.
406access_token_compromised – 406 An access token is no longer believed to be secure, normally because it was used on a non-HTTPS call. The access token will be invalidated if this error is returned.
500internal_error – 500 An unexpected error occurred in the API. It has been logged, and Stack Exchange developers have been notified. You should report these errors on Stack Apps if you want to be notified when they're fixed.
502throttle_violation – 502 An application has violated part of the rate limiting contract, so the request was terminated.
503temporarily_unavailable – 503 Some or all of the API is unavailable. Applications should backoff on requests to the method invoked.
GET/users/{ids}
Parameters
NameInRequiredType
idspathyesstring
orderquerynostring
maxquerynostring
minquerynostring
sortquerynostring
fromdatequerynointeger
todatequerynointeger
pagesizequerynointeger
pagequerynointeger
filterquerynostring
callbackquerynostring
sitequeryyesstring
Responses
StatusDescriptionSchema
200OKusers
400bad_parameter – 400 An invalid parameter was passed, this includes even "high level" parameters like key or site.
401access_token_required – 401 A method that requires an access token (obtained via authentication) was called without one.
402invalid_access_token – 402 An invalid access token was passed to a method.
403access_denied – 403 A method which requires certain permissions was called with an access token that lacks those permissions.
404no_method – 404 An attempt was made to call a method that does not exist. Note, calling methods that expect numeric ids (like /users/{ids}) with non-numeric ids can also result in this error.
405key_required – 405 A method was called in a manner that requires an application key (generally, with an access token), but no key was passed.
406access_token_compromised – 406 An access token is no longer believed to be secure, normally because it was used on a non-HTTPS call. The access token will be invalidated if this error is returned.
500internal_error – 500 An unexpected error occurred in the API. It has been logged, and Stack Exchange developers have been notified. You should report these errors on Stack Apps if you want to be notified when they're fixed.
502throttle_violation – 502 An application has violated part of the rate limiting contract, so the request was terminated.
503temporarily_unavailable – 503 Some or all of the API is unavailable. Applications should backoff on requests to the method invoked.

Try it

Developer reference

Base URLhttps://api.stackexchange.com/2.0
Rate limit

300 requests/day per IP without an app key; 10,000 requests/day with a free registered app key

Key endpoints
  • GET/questions
  • GET/search/advanced
  • GET/users/{ids}
  • GET/answers