Skip to main content

Resonate errors

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

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. Or reach out via Discord for community support.

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.

40000

There was a validation error affecting one or more fields.

40300

The promise has already been resolved. Once a promise is resolved it can no longer be modified.

40301

The promise has already been rejected. Once a promise is rejected it can no longer be modified.

40302

The promise has already been canceled. Once a promise is canceled it can no longer be modified.

40303

The promise has already timed out. Once a promise is timed out it can no longer be modified.

40304

The lock has already been acquired. Once a lock is acquired it can no longer be acquired.

40305

The task has already been claimed. Once a task has been claimed it can no longer be claimed.

40306

The task has already been completed. Once a task has been completed it can no longer be claimed.

40307

A task was attempted to be claimed with the wrong counter.

40308

A task was attempted to be claimed or completed, but the task is in an invalid state.

40400

A promise with the provided id could not be found.

40401

A schedule with the provided id could not be found.

40402

A lock with the provided id could not be found.

40403

A task with the provided id could not be found.

40404

A promise with the provided id does not specify a required recv.

40900

A promise with the provided id already exists.

40901

A schedule with the provided id 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.

50000

An unknown internal server error occurred. Please open an issue.

50001

There was a failure related to the echo subsystem.

50002

There was a failure related to the match subsystem.

50003

There was a failure related to the queue subsystem.

50004

There was a failure related to the store subsystem.

50300

The system is shutting down.

50301

The API submission queue is full. Please try again later.

50302

The AIO submission queue is full. Please try again later.

50303

The scheduler queue is full. Please try again later.