Skip to main content

Resonate Server errors

This document lists all error codes that can be returned by our API.

Troubleshooting​

When encountering an error, follow these general steps:

  1. Identify the Error Code

    • Check the error code in the response or logs to understand the nature of the issue.
  2. Refer to Documentation

    • Check this document to find the description and recommended actions for the specific error code.
  3. Troubleshoot

    • Follow the provided recommendations to troubleshoot and resolve the issue.
  4. Contact Support:

    • If the problem persists, open a GitHub issue with details, including the error code and steps to reproduce.

Error Schema​

When an error occurs, the response body will contain the following information.

{
"error": {
"code": 5002,
"message": "failed to update promise",
"details": [
{
"@type": "ServerError",
"message": "attempt to write a readonly database",
"domain": "server",
"metadata": {
"url": "https://docs.resonatehq.io/reference/error-codes#5002"
}
}
]
}
}

The code field can be used to programmatically identify the error. The message and details provide a human readable description of what went wrong.

The details provide structured diagnostic data such as the originating subsystem and links to documentation which can assist in debugging and troubleshooting.

Request Errors (4000-4999)​

Request errors signify problems with the request. Generally, retrying the request will not resolve the issue.

Error CodeDescription
4000There was a validation error affecting one or more fields.
4030The promise has already been resolved. Once a promise is resolved it can no longer be modified.
4031The promise has already been rejected. Once a promise is rejected it can no longer be modified.
4032The promise has already been canceled. Once a promise is canceled it can no longer be modified.
4033The promise has already timed out. Once a promise is timed out it can no longer be modified.
4034The lock has already been acquire. Once a lock is acquired it can no longer be acquired.
4035The Task has already timed out. Once a task is timed out it can no longer be worked on.
4036The Task has already been acquire. Once a task is acquired it can no longer be acquired.
4037A task was attempted to be claimed with the wrong counter.
4040A promise with the provided identifier could not be found.
4041A subscription with the provided identifier could not be found.
4042A Schedule with the provided identifier could not be found.
4043A lock with the provided identifier could not be found.
4043A Task with the provided identifier could not be found.
4090A promise with the provided identifier already exists.
4091A Schedule with the provided identifier already exists.

Server Errors (5000-5999)​

Server errors represent transient or systemic problems that prevent the request from being processed. Retrying the request may resolve the issue.

Error CodeDescription
5000An unknown internal server error occurred. Please open a GitHub issue with corresponding details.
5001There was a failure related the network subsystem.
5002There was a failure related the store subsystem.
5003There was a failure serializing or deserializing data from the store.
5030The system is currently shutting down.
5031The API submission queue is full. Please try again later.
5032The AIO submission queue is full. Please try again later.