Error codes
Our monday.com GraphQL API returns the set of predefined errors listed below. If an exception is handled by the GraphQL application later, it will return a 200 status code and further information in the three following structures:
{
"errors": [
{
"message": "Field 'xxx' doesn't exist on type 'User'",
"locations": [
{
"line": 322,
"column": 5
}
],
"fields": [
"query",
"me",
"xxx"
]
}
],
"account_id": 123456789
}
{
"error_code": "SomeKindOfException",
"status_code": 200,
"error_message": "Some error happened",
"error_data": {...}
}
{
"error_message": "Internal server error",
"status_code": 500
}
Check out this code sample below to see how to catch the different error structures!
function handleError(error) {
if (error.hasOwnProperty('error_message') || error.hasOwnProperty('error_code') || error.hasOwnProperty('errors')) {
throw 'error!';
}
}
try {
handleError(error);
} catch (e) {
console.error(e);
}
Internal Server Error
HTTP status code: 500
A 500 (internal server error) error is a general error that indicates something went wrong.
Common causes of this error are:
- Invalid arguments, such as board or item IDs that don't exist
- Malformatted JSON column values when using the
create_item
orchange_multiple_column_values
mutations
If these don't fix the issue, reach out to our team!
Rate Limit Exceeded
HTTP status code: 429
A 429 (Rate Limit Exceeded) error indicates that you made more than 5,000 requests in one minute.
Ensure that you do not send more than 5,000 requests in one minute.
{
"error_message": "Rate Limit Exceeded.",
"status_code": 429
}
Your IP Is Restricted
HTTP status code: 401
A 401 (Your ip is restricted) error indicates that 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.
{
"error_message": "Your ip is restricted.",
"status_code": 401
}
Unauthorized
HTTP status code: 401
A 401 (Not authenticated) error indicates that you don't have permission to access the data you're attempting to access.
Ensure your API key is valid and passed in the “Authorization” header.
Bad Request
HTTP status code: 400
A 400 (No query string was present) error indicates that the structure of your query string was passed incorrectly.
Ensure your query string is passed with the “query” key, your request is sent as a POST request with a JSON body, and that your query does not contain unterminated strings.
Parse error on...
HTTP status code: 200
A Parse error on...
error indicates that some formatting in your query string is incorrect.
Ensure your query is a valid string, and all parenthesis, brackets, and curly brackets are closed.
ComplexityException
HTTP status code: 200
A 200 ComplexityException
error indicates that you have reached the complexity limit.
You can avoid hitting the limit by using nested queries and adding limits to your queries.
Check out our rate limit documentation to learn more about complexity limits.
UserUnauthorizedException
HTTP status code: 403
A 403 UserUnauthorizedException
error indicates that the user in question does not have the permission to perform the action in question.
Check if the user has permission to access or edit the given resource.
InvalidUserIdException
HTTP status code: 200
A 200 InvalidUserIdException
error indicates that the user ID being passed in the query is not a valid user ID.
Ensure the user ID exists and this user is assigned to your board.
InvalidVersionException
HTTP status code: 200
A 200 InvalidVersionException
error indicates that the requested API version is invalid.
Ensure that your request follows the proper format.
InvalidColumnIdException
HTTP status code: 200
A 200 InvalidColumnIdException
error indicates that the column ID being passed in the query is not a valid column ID.
Ensure the column ID exists and you have access to the column.
InvalidBoardIdException
HTTP status code: 200
A 200 InvalidBoardIdException
error indicates that the board ID being passed in the query is not a valid board ID.
Ensure the board ID exists and you have access to the board.
InvalidArgumentException
HTTP status code: 200
A 200 InvalidArgumentException
error indicates that the argument being passed in the query is not a valid argument or that you've hit a pagination limit.
Ensure you do not have a typo, that the argument exists for the object you are querying, or make your result window smaller.
CreateBoardException
HTTP status code: 200
A 200 CreateBoardException
error indicates that there was an error in your query to create a board.
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.
ResourceNotFoundException
HTTP status code: 200
A 200 ResourceNotFoundException
error indicates that the ID you are attempting to pass in your query is invalid.
Ensure the ID of the item, group, or board you’re querying exists.
HTTP status code: 404
A 404 ResourceNotFoundException
error indicates that the ID you are attempting to pass in your query is invalid.
Ensure the ID of the user you are querying exists and is assigned to your board.
ItemsLimitationException
HTTP status code: 200
A 200 ItemsLimitationException
error indicates that you have exceeded the limit of items allowed for a board.
To prevent abuse, each board has a limit of 10,000 items created via the API. This error is thrown when you have reached the limit.
ItemNameTooLongException
HTTP status code: 200
A 200 ItemNameTooLongException
error indicates that the item name you have chosen has exceeded the amount of characters allowed.
Ensure your item name is between 1 and 255 characters long.
ColumnValueException
HTTP status code: 200
A 200 ColumnValueException
error indicates that the column value you are attempting to send in your query is of the incorrect formatting.
If you are updating a column value, ensure the value conforms with each column’s data structure. To learn more about columns that support JSON values, check out the change_column_values()
method here.
If you’re retrieving a column value, ensure the column is supported by our API and not calculated in the client (eg, formula column).
If you get the error "The column has no connected boards," ensure the Connect column you're referencing is connected to a board via the monday.com UI.
CorrectedValueException
HTTP status code: 200
A 200 CorrectedValueException
error indicates that the value you are attempting to send in your 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.
To learn more about columns that support simple values, check out the change_simple_column_values()
method here.
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! 😎
Updated about 1 month ago