We've added four new fields to the workspaces object:

  • settings returns the workspaces settings
  • owners_subscribers returns the workspaces owner's
  • team_subscribers returns the teams subscribed to the workspace
  • users_subscribers returns the users subscribed to the workspace

Check out our workspaces doc to find out more!

We recently added the workspace_ids argument to the boards object that filters boards within the specified workspace(s). Read more about the workspace_ids argument in our boards doc!

Last week, we started validating inputs on the phone column. Many of our devs faced issues, so we have temporarily shut off the phone column validation to give extra time to adjust to the change.

We will turn the validation back on beginning December 1st, 2022. The API will then validate whether or not the phone number is valid, includes a 2-letter country code, and matches the specified country code's number criteria.

You can refer to our phone column doc to see up-to-date examples! Please follow this structure to avoid losing data and errors starting December 1st.

We've recently made bug fixes that strictly validate column values in the API. Sending unexpected or invalid values will return an error.

The bug fixes will impact the following columns:

  • Country column: The API will now strictly validate the country name.
  • Dependency column: The API will now only accept valid item IDs.
  • Dropdown column: The API value will now be case-sensitive.
  • Long text column: The API will have a hard limit of 2,000 characters.
  • Number column: The API will accept negative numbers.
  • People column: The API will now validate whether or not the input ID is a valid person or team.

To avoid errors, ensure you don't have any typos and follow these new validation fixes!

We've made three changes to add more actions to the workspaces object, including a new field and mutation!

  1. You can now query the workspaces object, rather than nesting it within a boards query.
  2. You can also use the new created_at field to return the creation date of a workspace.
  3. Lastly, we've added a new mutation that allows you to delete a workspace.

You can find all of the details about these updates and functionality updates in our workspaces doc!

Hello everyone!

Starting April 27th 2023, the users query will work with a page argument when a limit is provided. If the page argument is not provided, it will default to page: 1. This will work in the same way as it does today with the boards or items queries.

Hello everyone!

There has been a change in the complexity points usage for the teams object.

In the past, the complexity usage for teams was working as if each query was retrieving information from only one team.

The complexity is now based on the amount of teams that are queried. If IDs are not provided, the query will assume that there are 1000 teams, each with 1000 users being retrieved.

We suggest using the IDs of the different teams in your queries if you are running into complexity points usage issues. You can use one query to get your teams’ IDs and a second one to query for data from those teams, using the IDs as a parameter.

This is a reminder that starting October 18th, 2022, we'll be adding new limits to the root Items query:

  • The ids argument is now required
  • You cannot return more than 100 items per query

This change will go into effect on Tuesday, October 18th, so please review your applications' API usage to prevent any loss of functionality.

We recently added a rate limit to this use case, so you may have already adjusted your code to account for this!

We will remove references to this feature in our docs, but if you spot a mention that we missed shoot us a message at [email protected].

Examples of unsupported queries

Queries without the ids argument:

query {
  items (limit:1000) {
    id
    name
  }
}

Queries with more than 100 IDs:

query {
  items (ids:[1, 2, 3, 4, 5...99, 100, 101, 102]) {
    id
    name
  }
}

How should I respond to this change?

You can adjust your queries in these main ways:

  • Return items on a specific board only
  • Nesting the items query inside Boards
  • Looping through the boards on your account
  • Query less than 100 items at a time

Return items on a specific board

You can return items only on a specific board, by ID. Here's an example:

query {
  boards (ids:12345) {
    id
    name
    items (limit:100) {
      id
      name
    }
  }
}

Nesting the items query inside Boards

Queries without Items in the root will still work, so you can nest the items query within a boards query. Here's an example:

query { 
  boards (limit:10) { 
    items (limit:1000) { 
      id 
      name 
    } 
  } 
}

Looping through the boards on your account

If you are looking to return all items across your account, it is best practice to first query for the IDs of all the boards, and then get items a few boards at a time. For example:

First, query for the IDs of all the boards.

query { 
  boards (limit:50) { 
    id
  } 
}

Second, query and loop through each board in the first query.

query { 
   boards (ids: 1234567890) { 
     items (limit:50) { 
       name 
       id 
     } 
   } 
 }

Return less than 100 items at a time

Finally, you can continue to use the same query but restrict the query to a list of item IDs. Here's an example:

query {
  items (ids: [1, 2, 3, 4, 5... 99]) {
    name
		column_values {
			id
			value
		}
	}
}

This is a reminder that starting October 18th, 2022, we'll be validating the JSON you send to update column values. Sending unexpected values will return an error. For example:

To update an hour column, you must send the hour and minute in 24-hour format.

"{\"hour\":16,\"minute\":42}"

If you send an unexpected value, for example:

"{\"hour\":false}"

You will see an error saying that "hour" should be a number and that the "minute" key is missing.

Validation will not only check for expected keys, but for types as well. Sending a string when an integer is expected will result in an error, for example.

How should I respond to this change?

If you are updating column values, you should confirm you are sending expected values by comparing them to our Column Types Reference

We have some exciting documentation news 🚀

We have moved our documentation to be hosted on developer.monday.com. This change will provide you with a more unified experience when navigating and searching through our API and App Framework documentation.

The old URLs (api.developer.monday.com and apps.developer.monday.com) will no longer work.

Be sure to update your bookmarks accordingly.

If you see any broken links, please let us know at [email protected]!

Happy building ⚒️