API docs navigation
Status
get
/api/v1/statusGet API status and active limits
Confirms that the API key is valid and entitled, and returns the currently enforced request ceilings for the authenticated context.
Behavior Notes
- Use this endpoint as the supported startup probe for auth and Business entitlement.
- `limits.perDay` resets on the UTC calendar day.
- Authenticated requests that proceed beyond auth can still consume rate or quota budget even when the downstream endpoint later fails.
Responses
200Status responseapplication/json
application/json
{
"status": "ok",
"version": "v1",
"timestamp": "2026-03-06T12:00:00.000Z",
"owner": {
"userId": "user_2abc123"
},
"limits": {
"perMinute": 60,
"perDay": 10000
}
}401Unauthorizedapplication/json
application/json
{
"error": "Unauthorized"
}403Workspace not entitled for API accessapplication/json
application/json
{
"error": "Forbidden",
"message": "Business plan required for API access."
}429Rate limit or daily quota exceededapplication/json
Per-minute throttle
{
"error": "Too Many Requests",
"limit": 60
}Daily quota exhausted
{
"error": "Quota Exceeded",
"limit": 10000
}503Service unavailableapplication/json
application/json
{
"error": "Service Unavailable",
"message": "Authentication dependencies are unavailable."
}Request examples
cURL
bashcurl --request GET \
--url 'https://questionstock.com/api/v1/status' \
--header 'Authorization: Bearer qsk_v1_your_api_key'JavaScript fetch
javascriptconst response = await fetch("https://questionstock.com/api/v1/status", {
method: "GET",
headers: {
Authorization: "Bearer qsk_v1_your_api_key",
},
});
if (!response.ok) {
throw new Error("API error: " + response.status);
}
const data = await response.json();