@@ -51,7 +51,14 @@ class NotionClient(object):
5151    for internal use -- the main one you'll likely want to use is `get_block`. 
5252    """ 
5353
54-     def  __init__ (self , token_v2 = None , monitor = False , start_monitoring = False , enable_caching = False , cache_key = None ):
54+     def  __init__ (
55+         self ,
56+         token_v2 = None ,
57+         monitor = False ,
58+         start_monitoring = False ,
59+         enable_caching = False ,
60+         cache_key = None ,
61+     ):
5562        self .session  =  create_session ()
5663        self .session .cookies  =  cookiejar_from_dict ({"token_v2" : token_v2 })
5764        if  enable_caching :
@@ -242,15 +249,47 @@ def search_pages_with_parent(self, parent_id, search=""):
242249        return  response ["results" ]
243250
244251    def  search_blocks (self , search , limit = 25 ):
252+         return  self .search (query = search , limit = limit )
253+ 
254+     def  search (
255+         self ,
256+         query = "" ,
257+         search_type = "BlocksInSpace" ,
258+         limit = 100 ,
259+         sort = "Relevance" ,
260+         source = "quick_find" ,
261+         isDeletedOnly = False ,
262+         excludeTemplates = False ,
263+         isNavigableOnly = False ,
264+         requireEditPermissions = False ,
265+         ancestors = [],
266+         createdBy = [],
267+         editedBy = [],
268+         lastEditedTime = {},
269+         createdTime = {},
270+     ):
245271        data  =  {
246-             "query " : search ,
247-             "table " : "space" ,
248-             "id " : self .current_space .id ,
272+             "type " : search_type ,
273+             "query " : query ,
274+             "spaceId " : self .current_space .id ,
249275            "limit" : limit ,
276+             "filters" : {
277+                 "isDeletedOnly" : isDeletedOnly ,
278+                 "excludeTemplates" : excludeTemplates ,
279+                 "isNavigableOnly" : isNavigableOnly ,
280+                 "requireEditPermissions" : requireEditPermissions ,
281+                 "ancestors" : ancestors ,
282+                 "createdBy" : createdBy ,
283+                 "editedBy" : editedBy ,
284+                 "lastEditedTime" : lastEditedTime ,
285+                 "createdTime" : createdTime ,
286+             },
287+             "sort" : sort ,
288+             "source" : source ,
250289        }
251-         response  =  self .post ("searchBlocks " , data ).json ()
290+         response  =  self .post ("search " , data ).json ()
252291        self ._store .store_recordmap (response ["recordMap" ])
253-         return  [self .get_block (block_id ) for  block_id  in  response ["results" ]]
292+         return  [self .get_block (result [ "id" ] ) for  result  in  response ["results" ]]
254293
255294    def  create_record (self , table , parent , ** kwargs ):
256295
0 commit comments