Error handling

If your API request cannot be completed successfully, you will receive an error message.

Error format

Errors returned by the API have the following characteristics:

  • HTTP status: Response will be 200 – OK for application-level errors. Other statuses will be returned for transport-layer errors, such as 500 - Internal server error, 429 - Too many requests or 400 - Bad request
  • JSON response: Body will contain an errors array with further details about each error
  • Partial data: Requests will return partial data, so the data object may also contain some information. For example, if you query three fields, you may receive two fields and one error.
  • Retry-Afterheader: Errors will include the Retry-After header to indicate how long you need to wait before making another request
  • Each API response includes a request_id in the extensions object that can be used for troubleshooting.

Sample format

Here's an example of an application-level error:

{
  "data" : [],
  "errors": [
    {
      "message": "User unauthorized to perform action",
      "locations": [
        {
          "line": 2,
          "column": 3
        }
      ],
      "path": [
        "me"
      ],
      "extensions": {
        "code": "UserUnauthorizedException",
        "error_data": {},
        "status_code": 403
      }
    }
  ],
  "account_id": 123456
}
{
  "data": {
    "me": {
      "id": "4012689",
      "photo_thumb": null
    },
    "complexity": {
      "query": 12
    }
  },
  "errors": [
    {
      "message": "Photo unavailable.",
      "locations": [
        {
          "line": 4,
          "column": 5
        }
      ],
      "path": [
        "me",
        "photo_thumb"
       ],
      "extensions": {
        "code": "ASSET_UNAVAILABLE"
      }
    }
  ],
  "account_id": 18888528
}

Errors by status code

2xx errors

Errors with a 2xx status code indicate that monday.com is not accepting the requested action due to a platform restriction, limitation, or rule. These errors occur for various reasons, including passing invalid values, missing permissions, or reaching character limits.

Here are some of the most common errors:

Error code

HTTP status code

Description

Resolution

API_TEMPORARILY_BLOCKED

200

There is an issue with the API and usage has temporarily been blocked

Check the status page for updates and retry your call once the issue has been resolved.

ColumnValueException

200

Incorrect column value formatting

  • Ensure the column is supported by our API and not calculated in the client.
  • Verify that the column value conforms with each column's data structure.
  • Check that the connect boards column you're referencing is connected to a board via the monday.com UI.

CorrectedValueException

200

The query is of the wrong type

If you try to update a column with simple values (String values), ensure the column supports this type of value format.

CreateBoardException

200

Error in your create board mutation

  • If you’re creating a board from a template, ensure the template ID is a valid monday template or a board that has template status. To learn more about making a board a template, check out our resource on board templates here.
  • If you’re duplicating a board, ensure the board ID exists.

InvalidArgumentException

200

The argument being passed in the query is invalid, you've hit a pagination limit, you're querying a subitem board ID, or a board ID is not found

  • Check your argument for typos.
  • Verify that the argument exists for the object you are querying.
  • Make your result window smaller.

InvalidBoardIdException

200

The board ID being passed in the query is invalid

Verify that the board ID exists and that you have access to it.

InvalidColumnIdException

200

The column ID being passed in the query is invalid

Verify that the column ID exists and that you have access to it.

InvalidUserIdException

200

The user ID being passed in the query is invalid

Verify that the user ID exists and that the user is assigned to your board.

InvalidVersionException

200

The requested API version is invalid

Ensure that your request follows the proper format.

ItemNameTooLongException

200

The item name has exceeded the allotted number of characters

Ensure the item name is 1-255 characters in length.

ItemsLimitationException

200

You have exceeded the limit of 10,000 items per board

Reduce the number of items on the board.

missingRequiredPermissions

200

The operation has exceeded the OAuth permission scopes granted for the app

Review your app's permission scopes to ensure the correct ones are requested.

Parse error on...

200

Incorrect query string formatting

  • Verify that all strings are valid in your query.
  • Close all parentheses, brackets, and curly brackets.

ResourceNotFoundException

200

The ID being passed in your query is invalid

Verify that the ID of the item, group, or board you’re querying exists.

4xx client errors

Errors with a 4xx status code indicate that something went wrong on the client's (your) side. These errors occur for various reasons, including a lack of access to the requested information, excessive use of the API, or providing incorrect input.

Here are some of the most common errors:

Error

HTTP status code

Description

Resolution

Bad request

400

The structure of your query string was passed incorrectly

  • Pass your query string with the query key.
  • Send your request as a POST request with a JSON body.
  • Avoid unterminated strings in your query.

JsonParseException

400

Issues interpreting the provided JSON

Verify all JSON is valid using a JSON validator (e.g., JSON lint )

Unauthorized

401

You don't have permission to access the data

  • Input a valid API key.
  • Pass the key in the Authorization header.

Your ip is restricted

401

An account admin has restricted access to the system from specific IP addresses

Confirm that your IP address is not restricted by your account admin.

UserUnauthorizedException

403

The user doesn't have the required permission to perform the action in question

Verify that the user has permission to access or edit the given resource.

USER_ACCESS_DENIED

403

The user is unauthorized to use the API

Verify that the user is active, not view-only, and has a confirmed email address.

ResourceNotFoundException

404

The ID being passed in the query is invalid

Verify that the ID of the user you are querying exists and is assigned to your board.

DeleteLastGroupException

409

The last group on a board is being deleted or archived

Verify that you have at least one group on the board.

RecordInvalidException

422

Indicates one of the following:

  • A board has exceeded 400 individual subscribers or 100 team subscribers
  • A user or team has subscribed to more than 10,000 boards

Resource is currently locked, please try again later

423

The board is temporarily locked because another process is performing a concurrent update (e.g., column update, automation). During this time, write operations are blocked to ensure data consistency.

  • Retry the request after a short delay.
  • Avoid concurrent updates to the same board from multiple sources.

maxConcurrencyExceeded

429

You exceeded the maximum number of queries allowed at once

  • Reduce the number of queries sent at once.
  • Use a retry mechanism in your code.

Rate Limit Exceeded

429

You made more than 5,000 requests in one minute

Reduce the number of requests sent in one minute.

COMPLEXITY_BUDGET_EXHAUSTED

429

You have reached the complexity limit

  • Utilize the limits and page arguments.
  • Only request the information you need.
  • Read more about rate limits.

IP_RATE_LIMIT_EXCEEDED

429

You have reached the IP limit

5xx server errors

Errors with a 5xx status code indicate that something went wrong on the server's (monday's) side.

Here are some of the most common errors:

Error

HTTP status code

Description

Resolution

Internal Server Error

500

Indicates that something went wrong. Common causes are:

  • Invalid arguments, such as board or item IDs that don't exist
  • Malformatted JSON column values
  • Retry your request after a short period.
  • Double-check your request's format.
  • Ensure your API token has the right permissions.
📘

Join our developer community!

We've created a community specifically for our devs where you can search through previous topics to find solutions, ask new questions, hear about new features and updates, and learn tips and tricks from other devs. Come join in on the fun! 😎