@@ -24,8 +24,13 @@ def fetch_updates_for_item(self, item_id, limit=100) -> MondayApiResponse:
2424 query = get_updates_for_item_query (item_id = item_id , limit = limit )
2525 return self .client .execute (query )
2626
27- def fetch_board_updates_page (self , board_id , limit = 100 , page = 1 ) -> List [Update ]:
28- query = get_updates_for_board (board_id , limit , page )
27+ def fetch_board_updates_page (self , board_id , limit = 100 , page = 1 , from_date : Optional [str ] = None , to_date : Optional [str ] = None ) -> List [Update ]:
28+ """
29+ Fetches a single page of updates from a board.
30+
31+ Note: from_date and to_date parameters require Monday API version 2026-01+
32+ """
33+ query = get_updates_for_board (board_id , limit , page , from_date , to_date )
2934 response : MondayApiResponse = self .client .execute (query )
3035 return response .data .boards [0 ].updates
3136
@@ -64,4 +69,35 @@ def fetch_board_updates(
6469 all_updates .extend (updates )
6570 page += 1
6671
67- return all_updates
72+ return all_updates
73+
74+ def fetch_board_updates_incremental (
75+ self ,
76+ board_id : str ,
77+ limit : int = 100 ,
78+ page : int = 1 ,
79+ from_date : Optional [str ] = None ,
80+ to_date : Optional [str ] = None ,
81+ ) -> List [Update ]:
82+ """
83+ Fetches updates from a board using Monday's native incremental fetch API.
84+ Uses the API's built-in date filtering instead of client-side filtering.
85+
86+ **Requires API version 2026-01 or later**
87+
88+ Args:
89+ board_id: The board ID to fetch updates from
90+ limit: Maximum number of updates per page (default: 100)
91+ page: Page number to fetch (default: 1)
92+ from_date: Start date in ISO format (e.g., "2025-10-10T00:00:00Z")
93+ to_date: End date in ISO format (e.g., "2025-11-11T00:00:00Z")
94+
95+ Returns:
96+ List of Update objects
97+
98+ Note:
99+ The from_date and to_date parameters require Monday API version 2026-01+.
100+ If using an older API version, use fetch_board_updates() instead which
101+ provides client-side date filtering.
102+ """
103+ return self .fetch_board_updates_page (board_id , limit , page , from_date , to_date )
0 commit comments