The people column represents a person(s) who is assigned items. Our API fully supports the people column, so you can filter, read, update, and clear it via the API.

Filtering the people column

Using the items_page object, you can easily filter a board's items by specific columns or column values. The table below contains the people column's supported operators and compare values.

OperatorsCompare values
any_of
  • The user IDs to filter by ("person-123456")
  • "assigned_to_me" (items assigned to the logged-in user)
  • "person-0" (blank values)
  • not_any_of
  • The user IDs to filter by ("person-123456")
  • "assigned_to_me" (items assigned to the logged-in user)
  • "person-0" (blank values)
  • is_emptynull
    is_not_emptynull
    not_contains_textThe partial or whole text value to filter by
    contains_textThe partial or whole text value to filter by
    starts_withThe value the item starts with
    ends_withThe value the item ends with

    👍

    Pro tip

    items_page is only available in API version 2023-10 for now.

    The following example returns all items on the specified board assigned to anyone except the logged-in user.

    query {
      boards (ids: 1234567890) {
        items_page (query_params: {rules: [{column_id: "people", compare_value: ["assigned_to_me"], operator:not_any_of}]}) {
          items {
            id
            name
          }
        }
      }
    }
    

    Reading the people column

    You can query the people column using the column_values object. The object has different fields based on which API version you are using. Column values v2 fields will be available in API versions 2023-10 and later, while column values v1 fields are only supported in versions 2023-07 and 2023-04.

    Column values v2

    The column_values object enables you to return column-specific subfields by sending a fragment in your query. Values for the people column are of the PeopleValue type.

    👍

    Pro tip

    column_values v2 fields are only available in API version 2023-10.

    query {
      items (ids:[1234567890, 9876543210]) {
        column_values {
          ... on PeopleValue {
            persons_and_teams
          }
        }
      }
    }
    

    Fields

    FieldDescription
    column Column!The column the value belongs to.
    id ID!The column's unique identifier.
    persons_and_teams [PeopleEntity!]The column's people or team values.
    text StringThe column's value as text.
    type ColumnType!The column's type.
    updated_at DateThe column's last updated date.
    value JSONThe column's JSON-formatted raw value.

    Column values v1

    You can return the data in a people column in two different formats when you query by column values. The text field will return the data as a simple string, and the value field will return the data as a JSON string.

    🚧

    Removing column values v1 support

    column_values v1 fields will no longer be supported in API versions 2023-10 and later.

    {
      "text": "Sales Team",
      "value": "{\"changed_at\":\"2022-07-21T12:00:00.000Z\",\"personsAndTeams\":[{\"id\":665845,\"kind\":\"team\"}]}"
    }
    

    Updating the people column

    You can update a people column using the change_simple_column_value mutation and sending a simple string in the value argument. You can also use the change_multiple_column_values mutation and pass a JSON string in the column_values argument.

    Simple strings

    To update a people column, send a string of user IDs separated by a comma that you want to add to the column.

    mutation {
      change_simple_column_value(item_id:9876543210, board_id:1234567890, column_id:"people", value:"123456, 654321") {
        id
      }
    }
    
    fetch ("https://api.monday.com/v2", {
      method: 'post',
      headers: {
        'Content-Type': 'application/json',
        'Authorization' : 'YOUR_API_KEY_HERE'
      },
      body: JSON.stringify({
        query : "mutation ($myBoardId:Int!, $myItemId:Int!, $myColumnValue: String!, $columnId: String!) { change_simple_column_value (item_id:$myItemId, board_id:$myBoardId, column_id: $columnId, value: $myColumnValue) { id } }",
        variables : JSON.stringify({
          myBoardId: 1234567890,
          myItemId: 9876543210,
          columnId: "people",
          myColumnValue: "123456, 654321"
          })
        })
      })
    

    JSON

    To update a people column, send an array with the people or team IDs you want to add to the column.

    Check out this mutation in action in our Postman library or follow along with these code samples!

    mutation {
      change_multiple_column_values(item_id:9876543210, board_id:1234567890, column_values: "{\"people\" : {\"personsAndTeams\":[{\"id\":4616627,\"kind\":\"person\"},{\"id\":4616666,\"kind\":\"person\"},{\"id\":51166,\"kind\":\"team\"}]}}") {
        id
      }
    }
    
    fetch ("https://api.monday.com/v2", {
      method: 'post',
      headers: {
        'Content-Type': 'application/json',
        'Authorization' : 'YOUR_API_KEY_HERE'
      },
      body: JSON.stringify({
        query : "mutation ($myBoardId:Int!, $myItemId:Int!, $myColumnValues:JSON!) { change_multiple_column_values(item_id:$myItemId, board_id:$myBoardId, column_values: $myColumnValues) { id }}",
        variables : JSON.stringify({
          myBoardId: 1234567890,
          myItemId: 9876543210,
          myColumnValues:"{\"people\": {\"personAndTeams\": [{\"id\": 4616627, \"kind\": \"person\"}, {\"id\": 4616666, \"kind\": \"person\"}, {\"id\": 51166, \"kind\": \"team\"}]}}"
        })
      })
    })
    

    Clearing the people column

    You have two options to clear a people column. First, you can use the change_multiple_column_values mutation and pass null, an empty string, or an empty object in the column_values argument. Check out this mutation in action in our Postman library or follow along with these code samples!

    mutation {
      change_multiple_column_values(item_id:9876543210, board_id:1234567890, column_values: "{\"people\" : null}") {
        id
      }
    }
    
    fetch ("https://api.monday.com/v2", {
      method: 'post',
      headers: {
        'Content-Type': 'application/json',
        'Authorization' : 'YOUR_API_KEY_HERE'
      },
      body: JSON.stringify({
        query : "mutation ($myBoardId:Int!, $myItemId:Int!, $myColumnValues:JSON!) { change_multiple_column_values(item_id:$myItemId, board_id:$myBoardId, column_values: $myColumnValues) { id } }",
        variables : JSON.stringify({
          myBoardId: 1234567890,
          myItemId: 9876543210,
          myColumnValues: "{\"people\" : null}"
        })
      })
    })
    

    You can also use the change_simple_column_value mutation and pass an empty string in the value argument.

    mutation {
      change_simple_column_value(item_id:9876543210, board_id:1234567890, column_id: "people", value: "") {
        id
      }
    }
    
    fetch ("https://api.monday.com/v2", {
      method: 'post',
      headers: {
        'Content-Type': 'application/json',
        'Authorization' : 'YOUR_API_KEY_HERE'
      },
      body: JSON.stringify({
        query : "mutation ($myBoardId:Int!, $myItemId:Int!, $myColumnValue: String!, $columnId: String!) { change_simple_column_value (item_id:$myItemId, board_id:$myBoardId, column_id: $columnId, value: $myColumnValue) { id } }",
        variables : JSON.stringify({
          myBoardId: 1234567890,
          myItemId: 9876543210,
          columnId: "phone",
          myColumnValue: ""
          })
        })
      })
    

    📘

    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! 😎