Errors
Every error response is an RFC 9457 problem details object with a status, a title, and a detail message.
When a request fails, the API returns a 4xx or 5xx status with a body of type application/problem+json. The body follows RFC 9457, so the same fields are present on every endpoint.
{
"$schema": "https://api.steamsets.com/schemas/ErrorModel.json",
"title": "Unprocessable Entity",
"status": 422,
"detail": "validation failed",
"errors": [
{
"location": "body.id.steamId64",
"message": "expected length >= 17",
"value": "7656119"
}
]
}
| Field | Description |
|---|---|
status |
The HTTP status code, repeated in the body. |
title |
A short summary of the problem type. |
detail |
A human-readable explanation of this problem. |
errors |
For validation errors, one entry for each invalid field, with its location in the request. |
Status codes
| Status | Meaning | What to do |
|---|---|---|
400 |
The request body is not valid JSON, or a value has the wrong type. | Fix the request. |
401 |
The API key is missing or not valid. | Send a valid key. See Authentication. |
403 |
The key is valid, but it cannot use this endpoint. | Use a different endpoint, or ask for access. |
404 |
The account, badge, or app does not exist on SteamSets. | Check the identifier. |
422 |
One or more fields failed validation. | Read errors to find the fields. |
429 |
You sent too many requests. | Wait, then send the request again. See Rate limits. |
500 |
The API had an internal problem. | Send the request again later. |
Request IDs
Each response has a request-id header. Include it when you report a problem, so that we can find the request in our logs.