@@ -1941,7 +1941,7 @@ def advanced_search_aggregated(self, query_string, max_results=5000, sorting_cri
1941
1941
1942
1942
return results
1943
1943
1944
- def advanced_search_v2 (self , query_string , page_number = 1 , records_per_page = 20 , sorting_criteria = None ,
1944
+ def advanced_search_v2 (self , query_string , ticloud = False , page_number = 1 , records_per_page = 20 , sorting_criteria = None ,
1945
1945
sorting_order = "desc" ):
1946
1946
"""Sends a query string to the A1000 Advanced Search API v2.
1947
1947
The query string must be composed of key-value pairs separated by space.
@@ -1953,6 +1953,8 @@ def advanced_search_v2(self, query_string, page_number=1, records_per_page=20, s
1953
1953
1954
1954
:param query_string: query string
1955
1955
:type query_string: str
1956
+ :param ticloud: show only cloud results
1957
+ :type ticloud: bool
1956
1958
:param page_number: page number
1957
1959
:type page_number: int
1958
1960
:param records_per_page: number of records returned per page; maximum value is 100
@@ -1968,13 +1970,17 @@ def advanced_search_v2(self, query_string, page_number=1, records_per_page=20, s
1968
1970
if not isinstance (query_string , str ):
1969
1971
raise WrongInputError ("The search query must be a string." )
1970
1972
1973
+ if not isinstance (ticloud , bool ):
1974
+ raise WrongInputError ("ticloud parameter must be boolean." )
1975
+
1971
1976
if not isinstance (records_per_page , int ) or not 1 <= records_per_page <= 100 :
1972
1977
raise WrongInputError ("records_per_page parameter must be an integer with a value "
1973
1978
"between 1 and 100 (included)." )
1974
1979
1975
1980
url = self ._url .format (endpoint = self .__ADVANCED_SEARCH_ENDPOINT_V2 )
1976
1981
1977
- post_json = {"query" : query_string , "page" : page_number , "records_per_page" : records_per_page }
1982
+ post_json = {"query" : query_string , "ticloud" : ticloud , "page" : page_number ,
1983
+ "records_per_page" : records_per_page }
1978
1984
1979
1985
if sorting_criteria :
1980
1986
if sorting_criteria not in ADVANCED_SEARCH_SORTING_CRITERIA or sorting_order not in ("desc" , "asc" ):
@@ -1995,7 +2001,7 @@ def advanced_search_v2(self, query_string, page_number=1, records_per_page=20, s
1995
2001
1996
2002
return response
1997
2003
1998
- def advanced_search_v2_aggregated (self , query_string , max_results = 5000 , sorting_criteria = None ,
2004
+ def advanced_search_v2_aggregated (self , query_string , ticloud = False , max_results = 5000 , sorting_criteria = None ,
1999
2005
sorting_order = "desc" ):
2000
2006
"""Sends a query string to the A1000 Advanced Search API v2.
2001
2007
The query string must be composed of key-value pairs separated by space.
@@ -2009,6 +2015,8 @@ def advanced_search_v2_aggregated(self, query_string, max_results=5000, sorting
2009
2015
2010
2016
:param query_string: search query - see API documentation for details on writing search queries
2011
2017
:type query_string: str
2018
+ :param ticloud: show only cloud results
2019
+ :type ticloud: bool
2012
2020
:param max_results: maximum results to be returned in a list; default value is 5000
2013
2021
:type max_results: int
2014
2022
:param sorting_criteria: define the criteria used in sorting; possible values are 'sha1', 'firstseen',
@@ -2029,6 +2037,7 @@ def advanced_search_v2_aggregated(self, query_string, max_results=5000, sorting
2029
2037
while more_pages :
2030
2038
response = self .advanced_search_v2 (
2031
2039
query_string = query_string ,
2040
+ ticloud = ticloud ,
2032
2041
page_number = next_page ,
2033
2042
records_per_page = 100 ,
2034
2043
sorting_criteria = sorting_criteria ,
0 commit comments