2020CONST_GET_TASK = "get_task"
2121CONST_GET_TASKS = "get_tasks"
2222CONST_ROOT_FOLDERS = "root_folders"
23+ CONST_ROOT_FOLDERS_DELTA = "root_folders_delta"
2324CONST_TASK = "task"
2425CONST_TASK_FOLDER = "task_folder"
2526
@@ -993,6 +994,7 @@ class ToDo(ApiComponent):
993994
994995 _endpoints = {
995996 CONST_ROOT_FOLDERS : "/todo/lists" ,
997+ CONST_ROOT_FOLDERS_DELTA : "/todo/lists/delta" ,
996998 CONST_GET_FOLDER : "/todo/lists/{id}" ,
997999 }
9981000
@@ -1032,18 +1034,8 @@ def __repr__(self):
10321034 """Representation of the ToDo via the Graph api as."""
10331035 return "Microsoft To-Do"
10341036
1035- def list_folders (self , query = None , limit = None ):
1036- """Return a list of folders.
1037-
1038- To use query an order_by check the OData specification here:
1039- https://docs.oasis-open.org/odata/odata/v4.0/errata03/os/complete/
1040- part2-url-conventions/odata-v4.0-errata03-os-part2-url-conventions
1041- -complete.html
1042- :param query: the query string or object to list folders
1043- :param int limit: max no. of folders to get. Over 999 uses batch.
1044- :rtype: list[Folder]
1045- """
1046- url = self .build_url (self ._endpoints .get (CONST_ROOT_FOLDERS ))
1037+ def _list_folders_with_url (self , url , query = None , limit = None ):
1038+ """Return a list of folders using the provided url."""
10471039
10481040 params = {}
10491041 if limit :
@@ -1066,6 +1058,36 @@ def list_folders(self, query=None, limit=None):
10661058 for x in data .get ("value" , [])
10671059 ]
10681060
1061+ def list_folders (self , query = None , limit = None ):
1062+ """Return a list of folders.
1063+
1064+ To use query an order_by check the OData specification here:
1065+ https://docs.oasis-open.org/odata/odata/v4.0/errata03/os/complete/
1066+ part2-url-conventions/odata-v4.0-errata03-os-part2-url-conventions
1067+ -complete.html
1068+ :param query: the query string or object to list folders
1069+ :param int limit: max no. of folders to get. Over 999 uses batch.
1070+ :rtype: list[Folder]
1071+ """
1072+ url = self .build_url (self ._endpoints .get (CONST_ROOT_FOLDERS ))
1073+
1074+ return self ._list_folders_with_url (url , query , limit )
1075+
1076+ def list_folders_delta (self , query = None , limit = None ):
1077+ """Return a list of folders using the delta endpoint.
1078+
1079+ To use query an order_by check the OData specification here:
1080+ https://docs.oasis-open.org/odata/odata/v4.0/errata03/os/complete/
1081+ part2-url-conventions/odata-v4.0-errata03-os-part2-url-conventions
1082+ -complete.html
1083+ :param query: the query string or object to list folders
1084+ :param int limit: max no. of folders to get. Over 999 uses batch.
1085+ :rtype: list[Folder]
1086+ """
1087+ url = self .build_url (self ._endpoints .get (CONST_ROOT_FOLDERS_DELTA ))
1088+
1089+ return self ._list_folders_with_url (url , query , limit )
1090+
10691091 def new_folder (self , folder_name ):
10701092 """Create a new folder.
10711093
0 commit comments