Filtering by item_id column in items_page

The documentation says:

“The item ID column represents the unique identifier assigned to each item. You can read the item ID column via the API, but you currently cannot filter, update, or clear it.
You can also read an item’s ID by querying id on any field with the Item type.”

I want to implement filtering by this column, but I’m confused — the docs say it’s not possible, yet my tests show that filtering by item_id sometimes does work.


:white_check_mark: Example : Filtering by the system Item ID column (pulse_id_mkqzqgs2)

query {
  boardB: boards(ids: 1938645783) {
    items_page(
      limit: 300
      query_params: {
        rules: [
          {
            column_id: "pulse_id_mkqzqgs2"
            compare_value: [1939530666]
            operator: any_of
          }
        ]
        operator: and
      }
    ) {
      cursor
      items {
        id
      }
    }
  }
}

Response (filtered correctly, returns matching item):

{
  "data": {
    "boardB": [
      {
        "items_page": {
          "cursor": null,
          "items": [
            {
              "id": "1939530666"
            }
          ]
        }
      }
    ]
  },
  "extensions": {
    "request_id": "2b64aa75-11ee-948a-8c14-adeafd6a3aab"
  }
}

:red_question_mark: Questions

So despite the documentation saying that filtering is not supported for item_id, both system and custom item_id columns do return filtered results.

:backhand_index_pointing_right: Could the Monday.com team clarify:

  • Is this officially supported, or just incidental behavior?

  • If it works, why does the documentation explicitly say it’s not possible?

  • Can we rely on this for production apps, or should we avoid it?

Thanks in advance!