Skip to navigation

Errors

The tRPC error envelope and the status codes you'll see
View as Markdown

Errors follow the standard tRPC envelope. Over HTTPS, the response carries an error object and an appropriate HTTP status code derived from the tRPC error code:

{
"error": {
"json": {
"message": "Release not found",
"code": -32004,
"data": {
"code": "NOT_FOUND",
"httpStatus": 404
}
}
}
}

Check error.json.data.code (or the HTTP status) to branch on the error; code is the tRPC numeric code and isn’t meant for application logic.

Status codes

HTTPCodeMeaning
400BAD_REQUESTInput failed validation: wrong type, or a missing required field.
401UNAUTHORIZEDNo valid API key. Send one as Authorization: Bearer ak_….
403FORBIDDENAuthenticated, but not allowed, e.g. editing someone else’s review, or a staff-only procedure.
404NOT_FOUNDThe requested resource does not exist.
409CONFLICTThe action clashes with current state, e.g. a second review of the same release.
429TOO_MANY_REQUESTSRate-limited. Back off and slow down.
500INTERNAL_SERVER_ERRORSomething went wrong on our side.

Each procedure in the API reference lists the specific errors it can return.