revengai 1.1.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (741) hide show
  1. revengai/__init__.py +1035 -0
  2. revengai/api/__init__.py +58 -0
  3. revengai/api/analyses_comments_api.py +1260 -0
  4. revengai/api/analyses_core_api.py +4305 -0
  5. revengai/api/analyses_dynamic_execution_api.py +1991 -0
  6. revengai/api/analyses_results_metadata_api.py +2324 -0
  7. revengai/api/analyses_security_checks_api.py +909 -0
  8. revengai/api/authentication_users_api.py +1386 -0
  9. revengai/api/binaries_api.py +1702 -0
  10. revengai/api/collections_api.py +2222 -0
  11. revengai/api/confidence_api.py +1214 -0
  12. revengai/api/external_sources_api.py +1709 -0
  13. revengai/api/firmware_api.py +624 -0
  14. revengai/api/functions_ai_decompilation_api.py +2728 -0
  15. revengai/api/functions_block_comments_api.py +897 -0
  16. revengai/api/functions_core_api.py +2216 -0
  17. revengai/api/functions_data_types_api.py +1838 -0
  18. revengai/api/functions_decompilation_api.py +2097 -0
  19. revengai/api/functions_renaming_history_api.py +1214 -0
  20. revengai/api/functions_threat_score_api.py +610 -0
  21. revengai/api/models_api.py +303 -0
  22. revengai/api/search_api.py +1483 -0
  23. revengai/api/v1_api.py +6373 -0
  24. revengai/api_client.py +804 -0
  25. revengai/api_response.py +21 -0
  26. revengai/configuration.py +602 -0
  27. revengai/exceptions.py +216 -0
  28. revengai/models/__init__.py +631 -0
  29. revengai/models/addr.py +144 -0
  30. revengai/models/ai_decompilation_rating.py +37 -0
  31. revengai/models/analyse_created.py +99 -0
  32. revengai/models/analysis_access_info.py +89 -0
  33. revengai/models/analysis_config.py +107 -0
  34. revengai/models/analysis_create_request.py +132 -0
  35. revengai/models/analysis_create_response.py +89 -0
  36. revengai/models/analysis_detail_response.py +122 -0
  37. revengai/models/analysis_form.py +138 -0
  38. revengai/models/analysis_functions.py +95 -0
  39. revengai/models/analysis_record.py +123 -0
  40. revengai/models/analysis_scope.py +37 -0
  41. revengai/models/analysis_status.py +94 -0
  42. revengai/models/analysis_strings_response.py +97 -0
  43. revengai/models/analysis_threat_score_data.py +99 -0
  44. revengai/models/analysis_update_request.py +109 -0
  45. revengai/models/analysis_update_tags_request.py +87 -0
  46. revengai/models/analysis_update_tags_response.py +95 -0
  47. revengai/models/ann_function.py +121 -0
  48. revengai/models/ann_input.py +108 -0
  49. revengai/models/app_api_rest_v1_analyse_schema_model_name.py +44 -0
  50. revengai/models/app_api_rest_v1_analyse_schema_status.py +40 -0
  51. revengai/models/app_api_rest_v1_analyse_schema_symbols.py +97 -0
  52. revengai/models/app_api_rest_v1_analysis_info_responses_logs.py +99 -0
  53. revengai/models/app_api_rest_v1_analysis_info_schema_function_rename.py +88 -0
  54. revengai/models/app_api_rest_v1_ann_schema_ann_function.py +135 -0
  55. revengai/models/app_api_rest_v2_analyses_enums_dynamic_execution_status.py +39 -0
  56. revengai/models/app_api_rest_v2_analyses_enums_model_name.py +43 -0
  57. revengai/models/app_api_rest_v2_analyses_enums_order_by.py +38 -0
  58. revengai/models/app_api_rest_v2_analyses_enums_status.py +41 -0
  59. revengai/models/app_api_rest_v2_analyses_responses_analysis_tags.py +104 -0
  60. revengai/models/app_api_rest_v2_analyses_responses_logs.py +87 -0
  61. revengai/models/app_api_rest_v2_analyses_responses_tag_item.py +96 -0
  62. revengai/models/app_api_rest_v2_analyses_schemas_symbols.py +97 -0
  63. revengai/models/app_api_rest_v2_collections_enums_order_by.py +41 -0
  64. revengai/models/app_api_rest_v2_functions_rename_schema_function_rename.py +94 -0
  65. revengai/models/app_api_rest_v2_functions_responses_function.py +89 -0
  66. revengai/models/app_api_rest_v2_functions_types_function.py +109 -0
  67. revengai/models/app_api_rest_v2_info_responses_analysis_tags.py +104 -0
  68. revengai/models/app_api_rest_v2_similarity_schema_ann_function.py +121 -0
  69. revengai/models/app_core_responses_base_base_response_analysis_tags1.py +126 -0
  70. revengai/models/app_core_responses_base_base_response_analysis_tags2.py +126 -0
  71. revengai/models/app_services_binary_ann_schema_tag_item.py +99 -0
  72. revengai/models/app_services_dynamic_execution_schemas_dynamic_execution_status.py +87 -0
  73. revengai/models/argument.py +100 -0
  74. revengai/models/base_response.py +125 -0
  75. revengai/models/base_response_analysis_create_response.py +126 -0
  76. revengai/models/base_response_analysis_detail_response.py +126 -0
  77. revengai/models/base_response_analysis_functions.py +126 -0
  78. revengai/models/base_response_analysis_strings_response.py +126 -0
  79. revengai/models/base_response_analysis_threat_score_data.py +126 -0
  80. revengai/models/base_response_analysis_update_tags_response.py +126 -0
  81. revengai/models/base_response_basic.py +126 -0
  82. revengai/models/base_response_binary_additional_response.py +126 -0
  83. revengai/models/base_response_binary_ann_list_response.py +126 -0
  84. revengai/models/base_response_binary_details_response.py +126 -0
  85. revengai/models/base_response_binary_externals_response.py +126 -0
  86. revengai/models/base_response_binary_search_response.py +126 -0
  87. revengai/models/base_response_block_comments_generation_for_function_response.py +126 -0
  88. revengai/models/base_response_block_comments_overview_generation_response.py +117 -0
  89. revengai/models/base_response_bool.py +122 -0
  90. revengai/models/base_response_box_plot_confidence.py +126 -0
  91. revengai/models/base_response_callees_caller_functions_response.py +126 -0
  92. revengai/models/base_response_capabilities.py +126 -0
  93. revengai/models/base_response_check_security_checks_task_response.py +126 -0
  94. revengai/models/base_response_child_binaries_response.py +126 -0
  95. revengai/models/base_response_collection_binaries_update_response.py +126 -0
  96. revengai/models/base_response_collection_response.py +126 -0
  97. revengai/models/base_response_collection_search_response.py +126 -0
  98. revengai/models/base_response_collection_tags_update_response.py +126 -0
  99. revengai/models/base_response_comment_response.py +126 -0
  100. revengai/models/base_response_communities.py +126 -0
  101. revengai/models/base_response_created.py +126 -0
  102. revengai/models/base_response_decompilation_response.py +126 -0
  103. revengai/models/base_response_dict.py +122 -0
  104. revengai/models/base_response_dynamic_execution_status.py +126 -0
  105. revengai/models/base_response_external_response.py +126 -0
  106. revengai/models/base_response_function_analysis_threat_score_data.py +126 -0
  107. revengai/models/base_response_function_blocks_response.py +126 -0
  108. revengai/models/base_response_function_capability_response.py +126 -0
  109. revengai/models/base_response_function_data_types.py +126 -0
  110. revengai/models/base_response_function_data_types_list.py +126 -0
  111. revengai/models/base_response_function_search_response.py +126 -0
  112. revengai/models/base_response_function_strings_response.py +126 -0
  113. revengai/models/base_response_function_task_response.py +126 -0
  114. revengai/models/base_response_function_threat_score.py +126 -0
  115. revengai/models/base_response_functions_detail_response.py +126 -0
  116. revengai/models/base_response_generate_function_data_types.py +126 -0
  117. revengai/models/base_response_generation_status_list.py +126 -0
  118. revengai/models/base_response_get_ai_decompilation_rating_response.py +126 -0
  119. revengai/models/base_response_get_ai_decompilation_task.py +126 -0
  120. revengai/models/base_response_get_public_user_response.py +126 -0
  121. revengai/models/base_response_get_user_response.py +126 -0
  122. revengai/models/base_response_list_collection_results.py +126 -0
  123. revengai/models/base_response_list_comment_response.py +130 -0
  124. revengai/models/base_response_list_die_match.py +130 -0
  125. revengai/models/base_response_list_function_box_plot_confidence.py +130 -0
  126. revengai/models/base_response_list_function_name_history.py +130 -0
  127. revengai/models/base_response_list_sbom.py +130 -0
  128. revengai/models/base_response_list_similar_functions_response.py +130 -0
  129. revengai/models/base_response_list_tag_origin_box_plot_confidence.py +130 -0
  130. revengai/models/base_response_list_user_activity_response.py +130 -0
  131. revengai/models/base_response_login_response.py +126 -0
  132. revengai/models/base_response_logs.py +126 -0
  133. revengai/models/base_response_models_response.py +126 -0
  134. revengai/models/base_response_nearest_neighbor_analysis.py +136 -0
  135. revengai/models/base_response_network_overview_response.py +126 -0
  136. revengai/models/base_response_params.py +126 -0
  137. revengai/models/base_response_process_dumps.py +126 -0
  138. revengai/models/base_response_process_registry.py +126 -0
  139. revengai/models/base_response_process_tree.py +126 -0
  140. revengai/models/base_response_queued_security_checks_task_response.py +126 -0
  141. revengai/models/base_response_recent.py +126 -0
  142. revengai/models/base_response_security_checks_response.py +126 -0
  143. revengai/models/base_response_status.py +126 -0
  144. revengai/models/base_response_str.py +122 -0
  145. revengai/models/base_response_symbols_info.py +126 -0
  146. revengai/models/base_response_tag_search_response.py +126 -0
  147. revengai/models/base_response_task_response.py +126 -0
  148. revengai/models/base_response_ttps.py +126 -0
  149. revengai/models/base_response_vulnerabilities.py +126 -0
  150. revengai/models/basic.py +108 -0
  151. revengai/models/batch_ann.py +106 -0
  152. revengai/models/batch_function_rename.py +95 -0
  153. revengai/models/batch_function_rename_record.py +90 -0
  154. revengai/models/binary_additional_details_data_response.py +113 -0
  155. revengai/models/binary_additional_response.py +106 -0
  156. revengai/models/binary_ann_form.py +94 -0
  157. revengai/models/binary_ann_list_response.py +95 -0
  158. revengai/models/binary_config.py +109 -0
  159. revengai/models/binary_details_response.py +126 -0
  160. revengai/models/binary_externals_response.py +96 -0
  161. revengai/models/binary_search_response.py +95 -0
  162. revengai/models/binary_search_result.py +109 -0
  163. revengai/models/binary_task_status.py +40 -0
  164. revengai/models/block.py +87 -0
  165. revengai/models/block_comments_generation_for_function_response.py +87 -0
  166. revengai/models/boundary.py +91 -0
  167. revengai/models/box_plot_confidence.py +99 -0
  168. revengai/models/callee_function_info.py +107 -0
  169. revengai/models/callees_caller_functions_response.py +107 -0
  170. revengai/models/caller_function_info.py +107 -0
  171. revengai/models/capabilities.py +95 -0
  172. revengai/models/capability.py +91 -0
  173. revengai/models/check_security_checks_task_response.py +88 -0
  174. revengai/models/child_binaries_response.py +105 -0
  175. revengai/models/code_signature_model.py +99 -0
  176. revengai/models/collection_binaries_update_request.py +87 -0
  177. revengai/models/collection_binaries_update_response.py +95 -0
  178. revengai/models/collection_binary_response.py +98 -0
  179. revengai/models/collection_count.py +99 -0
  180. revengai/models/collection_create_request.py +108 -0
  181. revengai/models/collection_list_item.py +113 -0
  182. revengai/models/collection_response.py +132 -0
  183. revengai/models/collection_response_binaries_inner.py +136 -0
  184. revengai/models/collection_scope.py +39 -0
  185. revengai/models/collection_search_response.py +95 -0
  186. revengai/models/collection_search_result.py +125 -0
  187. revengai/models/collection_tags_update_request.py +87 -0
  188. revengai/models/collection_tags_update_response.py +87 -0
  189. revengai/models/collection_update_request.py +107 -0
  190. revengai/models/collections_count_form.py +88 -0
  191. revengai/models/comment_base.py +87 -0
  192. revengai/models/comment_response.py +111 -0
  193. revengai/models/comment_update_request.py +87 -0
  194. revengai/models/communities.py +101 -0
  195. revengai/models/community_match_percentages.py +93 -0
  196. revengai/models/confidence_type.py +40 -0
  197. revengai/models/config_settings.py +101 -0
  198. revengai/models/context.py +142 -0
  199. revengai/models/create_ai_decompilation_request.py +87 -0
  200. revengai/models/created.py +91 -0
  201. revengai/models/decompilation_comment_context.py +99 -0
  202. revengai/models/decompilation_response.py +91 -0
  203. revengai/models/deleted_analysis.py +99 -0
  204. revengai/models/die_match.py +93 -0
  205. revengai/models/dynamic_execution_status_input.py +39 -0
  206. revengai/models/elf_dynamic_entry.py +89 -0
  207. revengai/models/elf_import_model.py +89 -0
  208. revengai/models/elf_model.py +180 -0
  209. revengai/models/elf_relocation.py +99 -0
  210. revengai/models/elf_section.py +105 -0
  211. revengai/models/elf_security.py +95 -0
  212. revengai/models/elf_segment.py +103 -0
  213. revengai/models/elf_symbol.py +99 -0
  214. revengai/models/entrypoint_model.py +89 -0
  215. revengai/models/enumeration.py +98 -0
  216. revengai/models/error_model.py +89 -0
  217. revengai/models/export_model.py +89 -0
  218. revengai/models/exported_binary_ann_result.py +111 -0
  219. revengai/models/external_response.py +92 -0
  220. revengai/models/file_format.py +38 -0
  221. revengai/models/file_hashes.py +141 -0
  222. revengai/models/file_metadata.py +97 -0
  223. revengai/models/file_options.py +41 -0
  224. revengai/models/filters.py +40 -0
  225. revengai/models/function_analysis_threat_score_data.py +99 -0
  226. revengai/models/function_batch_ann.py +106 -0
  227. revengai/models/function_block_destination_response.py +96 -0
  228. revengai/models/function_block_response.py +110 -0
  229. revengai/models/function_blocks_response.py +122 -0
  230. revengai/models/function_boundary.py +91 -0
  231. revengai/models/function_box_plot_confidence.py +93 -0
  232. revengai/models/function_capability_response.py +87 -0
  233. revengai/models/function_comment_create_request.py +93 -0
  234. revengai/models/function_data_types.py +107 -0
  235. revengai/models/function_data_types_list.py +99 -0
  236. revengai/models/function_data_types_list_item.py +109 -0
  237. revengai/models/function_data_types_params.py +87 -0
  238. revengai/models/function_data_types_status.py +91 -0
  239. revengai/models/function_dump.py +106 -0
  240. revengai/models/function_header.py +113 -0
  241. revengai/models/function_info_input.py +106 -0
  242. revengai/models/function_info_input_func_deps_inner.py +164 -0
  243. revengai/models/function_info_output.py +106 -0
  244. revengai/models/function_list.py +87 -0
  245. revengai/models/function_list_basic.py +99 -0
  246. revengai/models/function_local_variable_response.py +95 -0
  247. revengai/models/function_mapping_full.py +248 -0
  248. revengai/models/function_name_confidence_body.py +98 -0
  249. revengai/models/function_name_history.py +97 -0
  250. revengai/models/function_name_input.py +89 -0
  251. revengai/models/function_param_mapping.py +89 -0
  252. revengai/models/function_param_response.py +95 -0
  253. revengai/models/function_params.py +95 -0
  254. revengai/models/function_rename.py +94 -0
  255. revengai/models/function_rename_map.py +96 -0
  256. revengai/models/function_search_response.py +95 -0
  257. revengai/models/function_search_result.py +100 -0
  258. revengai/models/function_string.py +89 -0
  259. revengai/models/function_strings_response.py +97 -0
  260. revengai/models/function_task_response.py +95 -0
  261. revengai/models/function_task_status.py +40 -0
  262. revengai/models/function_threat_score.py +100 -0
  263. revengai/models/function_type_input.py +128 -0
  264. revengai/models/function_type_output.py +128 -0
  265. revengai/models/functions_detail_response.py +122 -0
  266. revengai/models/functions_list_rename.py +95 -0
  267. revengai/models/generate_function_data_types.py +95 -0
  268. revengai/models/generation_status_list.py +99 -0
  269. revengai/models/get_ai_decompilation_rating_response.py +88 -0
  270. revengai/models/get_ai_decompilation_task.py +153 -0
  271. revengai/models/get_public_user_response.py +89 -0
  272. revengai/models/get_user_response.py +100 -0
  273. revengai/models/global_variable.py +102 -0
  274. revengai/models/icon_model.py +92 -0
  275. revengai/models/import_model.py +89 -0
  276. revengai/models/inverse_function_map_item.py +100 -0
  277. revengai/models/inverse_string_map_item.py +94 -0
  278. revengai/models/inverse_value.py +87 -0
  279. revengai/models/isa.py +38 -0
  280. revengai/models/isa_options.py +39 -0
  281. revengai/models/list_collection_results.py +95 -0
  282. revengai/models/login_request.py +90 -0
  283. revengai/models/login_response.py +87 -0
  284. revengai/models/logs.py +87 -0
  285. revengai/models/meta_model.py +96 -0
  286. revengai/models/model_list.py +99 -0
  287. revengai/models/model_name.py +43 -0
  288. revengai/models/models_response.py +87 -0
  289. revengai/models/nearest_neighbor.py +106 -0
  290. revengai/models/network_overview_dns.py +99 -0
  291. revengai/models/network_overview_dns_answer.py +89 -0
  292. revengai/models/network_overview_metadata.py +100 -0
  293. revengai/models/network_overview_response.py +105 -0
  294. revengai/models/order.py +37 -0
  295. revengai/models/origin.py +43 -0
  296. revengai/models/pagination_model.py +91 -0
  297. revengai/models/params.py +104 -0
  298. revengai/models/pdb_debug_model.py +95 -0
  299. revengai/models/pe_model.py +216 -0
  300. revengai/models/platform.py +37 -0
  301. revengai/models/platform_options.py +40 -0
  302. revengai/models/process.py +104 -0
  303. revengai/models/process_dump.py +97 -0
  304. revengai/models/process_dump_metadata.py +91 -0
  305. revengai/models/process_dumps.py +93 -0
  306. revengai/models/process_dumps_data.py +97 -0
  307. revengai/models/process_registry.py +106 -0
  308. revengai/models/process_tree.py +97 -0
  309. revengai/models/queued_security_checks_task_response.py +87 -0
  310. revengai/models/quick_search.py +99 -0
  311. revengai/models/re_analysis_form.py +102 -0
  312. revengai/models/recent.py +95 -0
  313. revengai/models/recent_analysis.py +99 -0
  314. revengai/models/recent_analysis_form.py +92 -0
  315. revengai/models/registry.py +103 -0
  316. revengai/models/relative_binary_response.py +91 -0
  317. revengai/models/rename.py +99 -0
  318. revengai/models/sandbox_options.py +89 -0
  319. revengai/models/sbom.py +97 -0
  320. revengai/models/sbom_package.py +89 -0
  321. revengai/models/scope.py +39 -0
  322. revengai/models/scrape_third_party_config.py +87 -0
  323. revengai/models/search_binary_ids.py +138 -0
  324. revengai/models/search_form.py +97 -0
  325. revengai/models/search_function_ids.py +138 -0
  326. revengai/models/search_query.py +99 -0
  327. revengai/models/section_model.py +97 -0
  328. revengai/models/security_checks_response.py +99 -0
  329. revengai/models/security_checks_result.py +104 -0
  330. revengai/models/security_model.py +107 -0
  331. revengai/models/severity_type.py +41 -0
  332. revengai/models/similar_functions_response.py +101 -0
  333. revengai/models/single_code_certificate_model.py +97 -0
  334. revengai/models/single_code_signature_model.py +97 -0
  335. revengai/models/single_pdb_entry_model.py +91 -0
  336. revengai/models/single_section_model.py +99 -0
  337. revengai/models/stack_variable.py +102 -0
  338. revengai/models/status_input.py +41 -0
  339. revengai/models/status_output.py +89 -0
  340. revengai/models/string_functions.py +97 -0
  341. revengai/models/structure.py +118 -0
  342. revengai/models/structure_member.py +100 -0
  343. revengai/models/symbols.py +97 -0
  344. revengai/models/symbols_info.py +103 -0
  345. revengai/models/tag_confidence_body.py +96 -0
  346. revengai/models/tag_input.py +87 -0
  347. revengai/models/tag_origin_box_plot_confidence.py +97 -0
  348. revengai/models/tag_output.py +89 -0
  349. revengai/models/tag_response.py +89 -0
  350. revengai/models/tag_search_response.py +95 -0
  351. revengai/models/tag_search_result.py +89 -0
  352. revengai/models/tags.py +90 -0
  353. revengai/models/task_response.py +95 -0
  354. revengai/models/task_status.py +40 -0
  355. revengai/models/threat_score_function_body.py +88 -0
  356. revengai/models/timestamp_model.py +91 -0
  357. revengai/models/ttps.py +93 -0
  358. revengai/models/ttps_attack.py +89 -0
  359. revengai/models/ttps_data.py +97 -0
  360. revengai/models/ttps_element.py +109 -0
  361. revengai/models/ttps_occurance.py +89 -0
  362. revengai/models/type_definition.py +98 -0
  363. revengai/models/update_function_data_types.py +93 -0
  364. revengai/models/upload_success.py +106 -0
  365. revengai/models/upsert_ai_decomplation_rating_request.py +88 -0
  366. revengai/models/user_activity_response.py +98 -0
  367. revengai/models/user_boundaries.py +91 -0
  368. revengai/models/vulnerabilities.py +95 -0
  369. revengai/models/vulnerability.py +114 -0
  370. revengai/models/vulnerability_type.py +41 -0
  371. revengai/models/workspace.py +38 -0
  372. revengai/py.typed +0 -0
  373. revengai/rest.py +258 -0
  374. revengai/test/__init__.py +0 -0
  375. revengai/test/test_addr.py +50 -0
  376. revengai/test/test_ai_decompilation_rating.py +33 -0
  377. revengai/test/test_analyse_created.py +53 -0
  378. revengai/test/test_analyses_comments_api.py +59 -0
  379. revengai/test/test_analyses_core_api.py +136 -0
  380. revengai/test/test_analyses_dynamic_execution_api.py +80 -0
  381. revengai/test/test_analyses_results_metadata_api.py +143 -0
  382. revengai/test/test_analyses_security_checks_api.py +52 -0
  383. revengai/test/test_analysis_access_info.py +54 -0
  384. revengai/test/test_analysis_config.py +60 -0
  385. revengai/test/test_analysis_create_request.py +83 -0
  386. revengai/test/test_analysis_create_response.py +54 -0
  387. revengai/test/test_analysis_detail_response.py +83 -0
  388. revengai/test/test_analysis_form.py +81 -0
  389. revengai/test/test_analysis_functions.py +78 -0
  390. revengai/test/test_analysis_record.py +74 -0
  391. revengai/test/test_analysis_scope.py +33 -0
  392. revengai/test/test_analysis_status.py +53 -0
  393. revengai/test/test_analysis_strings_response.py +70 -0
  394. revengai/test/test_analysis_threat_score_data.py +64 -0
  395. revengai/test/test_analysis_update_request.py +52 -0
  396. revengai/test/test_analysis_update_tags_request.py +56 -0
  397. revengai/test/test_analysis_update_tags_response.py +60 -0
  398. revengai/test/test_ann_function.py +61 -0
  399. revengai/test/test_ann_input.py +56 -0
  400. revengai/test/test_app_api_rest_v1_analyse_schema_model_name.py +33 -0
  401. revengai/test/test_app_api_rest_v1_analyse_schema_status.py +33 -0
  402. revengai/test/test_app_api_rest_v1_analyse_schema_symbols.py +57 -0
  403. revengai/test/test_app_api_rest_v1_analysis_info_responses_logs.py +53 -0
  404. revengai/test/test_app_api_rest_v1_analysis_info_schema_function_rename.py +52 -0
  405. revengai/test/test_app_api_rest_v1_ann_schema_ann_function.py +74 -0
  406. revengai/test/test_app_api_rest_v2_analyses_enums_dynamic_execution_status.py +33 -0
  407. revengai/test/test_app_api_rest_v2_analyses_enums_model_name.py +33 -0
  408. revengai/test/test_app_api_rest_v2_analyses_enums_order_by.py +33 -0
  409. revengai/test/test_app_api_rest_v2_analyses_enums_status.py +33 -0
  410. revengai/test/test_app_api_rest_v2_analyses_responses_analysis_tags.py +74 -0
  411. revengai/test/test_app_api_rest_v2_analyses_responses_logs.py +52 -0
  412. revengai/test/test_app_api_rest_v2_analyses_responses_tag_item.py +55 -0
  413. revengai/test/test_app_api_rest_v2_analyses_schemas_symbols.py +57 -0
  414. revengai/test/test_app_api_rest_v2_collections_enums_order_by.py +33 -0
  415. revengai/test/test_app_api_rest_v2_functions_rename_schema_function_rename.py +52 -0
  416. revengai/test/test_app_api_rest_v2_functions_responses_function.py +54 -0
  417. revengai/test/test_app_api_rest_v2_functions_types_function.py +72 -0
  418. revengai/test/test_app_api_rest_v2_info_responses_analysis_tags.py +70 -0
  419. revengai/test/test_app_api_rest_v2_similarity_schema_ann_function.py +61 -0
  420. revengai/test/test_app_core_responses_base_base_response_analysis_tags1.py +73 -0
  421. revengai/test/test_app_core_responses_base_base_response_analysis_tags2.py +75 -0
  422. revengai/test/test_app_services_binary_ann_schema_tag_item.py +52 -0
  423. revengai/test/test_app_services_dynamic_execution_schemas_dynamic_execution_status.py +52 -0
  424. revengai/test/test_argument.py +59 -0
  425. revengai/test/test_authentication_users_api.py +66 -0
  426. revengai/test/test_base_response.py +63 -0
  427. revengai/test/test_base_response_analysis_create_response.py +65 -0
  428. revengai/test/test_base_response_analysis_detail_response.py +81 -0
  429. revengai/test/test_base_response_analysis_functions.py +77 -0
  430. revengai/test/test_base_response_analysis_strings_response.py +73 -0
  431. revengai/test/test_base_response_analysis_threat_score_data.py +70 -0
  432. revengai/test/test_base_response_analysis_update_tags_response.py +68 -0
  433. revengai/test/test_base_response_basic.py +74 -0
  434. revengai/test/test_base_response_binary_additional_response.py +259 -0
  435. revengai/test/test_base_response_binary_ann_list_response.py +83 -0
  436. revengai/test/test_base_response_binary_details_response.py +83 -0
  437. revengai/test/test_base_response_binary_externals_response.py +72 -0
  438. revengai/test/test_base_response_binary_search_response.py +77 -0
  439. revengai/test/test_base_response_block_comments_generation_for_function_response.py +64 -0
  440. revengai/test/test_base_response_block_comments_overview_generation_response.py +63 -0
  441. revengai/test/test_base_response_bool.py +63 -0
  442. revengai/test/test_base_response_box_plot_confidence.py +70 -0
  443. revengai/test/test_base_response_callees_caller_functions_response.py +82 -0
  444. revengai/test/test_base_response_capabilities.py +71 -0
  445. revengai/test/test_base_response_check_security_checks_task_response.py +64 -0
  446. revengai/test/test_base_response_child_binaries_response.py +73 -0
  447. revengai/test/test_base_response_collection_binaries_update_response.py +72 -0
  448. revengai/test/test_base_response_collection_response.py +78 -0
  449. revengai/test/test_base_response_collection_search_response.py +80 -0
  450. revengai/test/test_base_response_collection_tags_update_response.py +66 -0
  451. revengai/test/test_base_response_comment_response.py +71 -0
  452. revengai/test/test_base_response_communities.py +77 -0
  453. revengai/test/test_base_response_created.py +66 -0
  454. revengai/test/test_base_response_decompilation_response.py +66 -0
  455. revengai/test/test_base_response_dict.py +65 -0
  456. revengai/test/test_base_response_dynamic_execution_status.py +64 -0
  457. revengai/test/test_base_response_external_response.py +68 -0
  458. revengai/test/test_base_response_function_analysis_threat_score_data.py +70 -0
  459. revengai/test/test_base_response_function_blocks_response.py +96 -0
  460. revengai/test/test_base_response_function_capability_response.py +66 -0
  461. revengai/test/test_base_response_function_data_types.py +99 -0
  462. revengai/test/test_base_response_function_data_types_list.py +105 -0
  463. revengai/test/test_base_response_function_search_response.py +73 -0
  464. revengai/test/test_base_response_function_strings_response.py +69 -0
  465. revengai/test/test_base_response_function_task_response.py +65 -0
  466. revengai/test/test_base_response_function_threat_score.py +73 -0
  467. revengai/test/test_base_response_functions_detail_response.py +78 -0
  468. revengai/test/test_base_response_generate_function_data_types.py +74 -0
  469. revengai/test/test_base_response_generation_status_list.py +71 -0
  470. revengai/test/test_base_response_get_ai_decompilation_rating_response.py +64 -0
  471. revengai/test/test_base_response_get_ai_decompilation_task.py +118 -0
  472. revengai/test/test_base_response_get_public_user_response.py +65 -0
  473. revengai/test/test_base_response_get_user_response.py +70 -0
  474. revengai/test/test_base_response_list_collection_results.py +79 -0
  475. revengai/test/test_base_response_list_comment_response.py +73 -0
  476. revengai/test/test_base_response_list_die_match.py +69 -0
  477. revengai/test/test_base_response_list_function_box_plot_confidence.py +74 -0
  478. revengai/test/test_base_response_list_function_name_history.py +71 -0
  479. revengai/test/test_base_response_list_sbom.py +73 -0
  480. revengai/test/test_base_response_list_similar_functions_response.py +77 -0
  481. revengai/test/test_base_response_list_tag_origin_box_plot_confidence.py +76 -0
  482. revengai/test/test_base_response_list_user_activity_response.py +71 -0
  483. revengai/test/test_base_response_login_response.py +64 -0
  484. revengai/test/test_base_response_logs.py +64 -0
  485. revengai/test/test_base_response_models_response.py +66 -0
  486. revengai/test/test_base_response_nearest_neighbor_analysis.py +75 -0
  487. revengai/test/test_base_response_network_overview_response.py +80 -0
  488. revengai/test/test_base_response_params.py +70 -0
  489. revengai/test/test_base_response_process_dumps.py +76 -0
  490. revengai/test/test_base_response_process_registry.py +73 -0
  491. revengai/test/test_base_response_process_tree.py +78 -0
  492. revengai/test/test_base_response_queued_security_checks_task_response.py +64 -0
  493. revengai/test/test_base_response_recent.py +79 -0
  494. revengai/test/test_base_response_security_checks_response.py +76 -0
  495. revengai/test/test_base_response_status.py +65 -0
  496. revengai/test/test_base_response_str.py +63 -0
  497. revengai/test/test_base_response_symbols_info.py +68 -0
  498. revengai/test/test_base_response_tag_search_response.py +68 -0
  499. revengai/test/test_base_response_task_response.py +65 -0
  500. revengai/test/test_base_response_ttps.py +81 -0
  501. revengai/test/test_base_response_vulnerabilities.py +77 -0
  502. revengai/test/test_basic.py +72 -0
  503. revengai/test/test_batch_ann.py +55 -0
  504. revengai/test/test_batch_function_rename.py +60 -0
  505. revengai/test/test_batch_function_rename_record.py +54 -0
  506. revengai/test/test_binaries_api.py +73 -0
  507. revengai/test/test_binary_additional_details_data_response.py +256 -0
  508. revengai/test/test_binary_additional_response.py +441 -0
  509. revengai/test/test_binary_ann_form.py +58 -0
  510. revengai/test/test_binary_ann_list_response.py +90 -0
  511. revengai/test/test_binary_config.py +53 -0
  512. revengai/test/test_binary_details_response.py +90 -0
  513. revengai/test/test_binary_externals_response.py +68 -0
  514. revengai/test/test_binary_search_response.py +78 -0
  515. revengai/test/test_binary_search_result.py +72 -0
  516. revengai/test/test_binary_task_status.py +33 -0
  517. revengai/test/test_block.py +52 -0
  518. revengai/test/test_block_comments_generation_for_function_response.py +52 -0
  519. revengai/test/test_boundary.py +56 -0
  520. revengai/test/test_box_plot_confidence.py +64 -0
  521. revengai/test/test_callee_function_info.py +61 -0
  522. revengai/test/test_callees_caller_functions_response.py +87 -0
  523. revengai/test/test_caller_function_info.py +61 -0
  524. revengai/test/test_capabilities.py +66 -0
  525. revengai/test/test_capability.py +60 -0
  526. revengai/test/test_check_security_checks_task_response.py +52 -0
  527. revengai/test/test_child_binaries_response.py +66 -0
  528. revengai/test/test_code_signature_model.py +80 -0
  529. revengai/test/test_collection_binaries_update_request.py +56 -0
  530. revengai/test/test_collection_binaries_update_response.py +68 -0
  531. revengai/test/test_collection_binary_response.py +62 -0
  532. revengai/test/test_collection_count.py +53 -0
  533. revengai/test/test_collection_create_request.py +63 -0
  534. revengai/test/test_collection_list_item.py +72 -0
  535. revengai/test/test_collection_response.py +73 -0
  536. revengai/test/test_collection_response_binaries_inner.py +62 -0
  537. revengai/test/test_collection_scope.py +33 -0
  538. revengai/test/test_collection_search_response.py +84 -0
  539. revengai/test/test_collection_search_result.py +73 -0
  540. revengai/test/test_collection_tags_update_request.py +56 -0
  541. revengai/test/test_collection_tags_update_response.py +56 -0
  542. revengai/test/test_collection_update_request.py +53 -0
  543. revengai/test/test_collections_api.py +80 -0
  544. revengai/test/test_collections_count_form.py +52 -0
  545. revengai/test/test_comment_base.py +52 -0
  546. revengai/test/test_comment_response.py +65 -0
  547. revengai/test/test_comment_update_request.py +52 -0
  548. revengai/test/test_communities.py +78 -0
  549. revengai/test/test_community_match_percentages.py +58 -0
  550. revengai/test/test_confidence_api.py +59 -0
  551. revengai/test/test_confidence_type.py +33 -0
  552. revengai/test/test_config_settings.py +70 -0
  553. revengai/test/test_context.py +54 -0
  554. revengai/test/test_create_ai_decompilation_request.py +52 -0
  555. revengai/test/test_created.py +56 -0
  556. revengai/test/test_decompilation_comment_context.py +54 -0
  557. revengai/test/test_decompilation_response.py +56 -0
  558. revengai/test/test_deleted_analysis.py +52 -0
  559. revengai/test/test_die_match.py +58 -0
  560. revengai/test/test_dynamic_execution_status_input.py +33 -0
  561. revengai/test/test_elf_dynamic_entry.py +54 -0
  562. revengai/test/test_elf_import_model.py +58 -0
  563. revengai/test/test_elf_model.py +236 -0
  564. revengai/test/test_elf_relocation.py +64 -0
  565. revengai/test/test_elf_section.py +70 -0
  566. revengai/test/test_elf_security.py +60 -0
  567. revengai/test/test_elf_segment.py +68 -0
  568. revengai/test/test_elf_symbol.py +64 -0
  569. revengai/test/test_entrypoint_model.py +54 -0
  570. revengai/test/test_enumeration.py +60 -0
  571. revengai/test/test_error_model.py +54 -0
  572. revengai/test/test_export_model.py +62 -0
  573. revengai/test/test_exported_binary_ann_result.py +79 -0
  574. revengai/test/test_external_response.py +60 -0
  575. revengai/test/test_external_sources_api.py +73 -0
  576. revengai/test/test_file_format.py +33 -0
  577. revengai/test/test_file_hashes.py +66 -0
  578. revengai/test/test_file_metadata.py +74 -0
  579. revengai/test/test_file_options.py +33 -0
  580. revengai/test/test_filters.py +33 -0
  581. revengai/test/test_firmware_api.py +45 -0
  582. revengai/test/test_function_analysis_threat_score_data.py +64 -0
  583. revengai/test/test_function_batch_ann.py +55 -0
  584. revengai/test/test_function_block_destination_response.py +56 -0
  585. revengai/test/test_function_block_response.py +75 -0
  586. revengai/test/test_function_blocks_response.py +116 -0
  587. revengai/test/test_function_boundary.py +56 -0
  588. revengai/test/test_function_box_plot_confidence.py +68 -0
  589. revengai/test/test_function_capability_response.py +56 -0
  590. revengai/test/test_function_comment_create_request.py +55 -0
  591. revengai/test/test_function_data_types.py +88 -0
  592. revengai/test/test_function_data_types_list.py +132 -0
  593. revengai/test/test_function_data_types_list_item.py +90 -0
  594. revengai/test/test_function_data_types_params.py +56 -0
  595. revengai/test/test_function_data_types_status.py +56 -0
  596. revengai/test/test_function_dump.py +55 -0
  597. revengai/test/test_function_header.py +73 -0
  598. revengai/test/test_function_info_input.py +85 -0
  599. revengai/test/test_function_info_input_func_deps_inner.py +66 -0
  600. revengai/test/test_function_info_output.py +85 -0
  601. revengai/test/test_function_list.py +56 -0
  602. revengai/test/test_function_list_basic.py +53 -0
  603. revengai/test/test_function_local_variable_response.py +60 -0
  604. revengai/test/test_function_mapping_full.py +148 -0
  605. revengai/test/test_function_name_confidence_body.py +56 -0
  606. revengai/test/test_function_name_history.py +62 -0
  607. revengai/test/test_function_name_input.py +54 -0
  608. revengai/test/test_function_param_mapping.py +54 -0
  609. revengai/test/test_function_param_response.py +60 -0
  610. revengai/test/test_function_params.py +60 -0
  611. revengai/test/test_function_rename.py +52 -0
  612. revengai/test/test_function_rename_map.py +55 -0
  613. revengai/test/test_function_search_response.py +70 -0
  614. revengai/test/test_function_search_result.py +64 -0
  615. revengai/test/test_function_string.py +54 -0
  616. revengai/test/test_function_strings_response.py +62 -0
  617. revengai/test/test_function_task_response.py +52 -0
  618. revengai/test/test_function_task_status.py +33 -0
  619. revengai/test/test_function_threat_score.py +70 -0
  620. revengai/test/test_function_type_input.py +95 -0
  621. revengai/test/test_function_type_output.py +95 -0
  622. revengai/test/test_functions_ai_decompilation_api.py +108 -0
  623. revengai/test/test_functions_block_comments_api.py +73 -0
  624. revengai/test/test_functions_core_api.py +87 -0
  625. revengai/test/test_functions_data_types_api.py +101 -0
  626. revengai/test/test_functions_decompilation_api.py +80 -0
  627. revengai/test/test_functions_detail_response.py +74 -0
  628. revengai/test/test_functions_list_rename.py +62 -0
  629. revengai/test/test_functions_renaming_history_api.py +59 -0
  630. revengai/test/test_functions_threat_score_api.py +59 -0
  631. revengai/test/test_generate_function_data_types.py +72 -0
  632. revengai/test/test_generation_status_list.py +64 -0
  633. revengai/test/test_get_ai_decompilation_rating_response.py +52 -0
  634. revengai/test/test_get_ai_decompilation_task.py +157 -0
  635. revengai/test/test_get_public_user_response.py +54 -0
  636. revengai/test/test_get_user_response.py +64 -0
  637. revengai/test/test_global_variable.py +60 -0
  638. revengai/test/test_icon_model.py +52 -0
  639. revengai/test/test_import_model.py +66 -0
  640. revengai/test/test_inverse_function_map_item.py +55 -0
  641. revengai/test/test_inverse_string_map_item.py +54 -0
  642. revengai/test/test_inverse_value.py +52 -0
  643. revengai/test/test_isa.py +33 -0
  644. revengai/test/test_isa_options.py +33 -0
  645. revengai/test/test_list_collection_results.py +82 -0
  646. revengai/test/test_login_request.py +54 -0
  647. revengai/test/test_login_response.py +52 -0
  648. revengai/test/test_logs.py +52 -0
  649. revengai/test/test_meta_model.py +54 -0
  650. revengai/test/test_model_list.py +53 -0
  651. revengai/test/test_model_name.py +33 -0
  652. revengai/test/test_models_api.py +38 -0
  653. revengai/test/test_models_response.py +56 -0
  654. revengai/test/test_nearest_neighbor.py +66 -0
  655. revengai/test/test_network_overview_dns.py +64 -0
  656. revengai/test/test_network_overview_dns_answer.py +54 -0
  657. revengai/test/test_network_overview_metadata.py +58 -0
  658. revengai/test/test_network_overview_response.py +84 -0
  659. revengai/test/test_order.py +33 -0
  660. revengai/test/test_origin.py +33 -0
  661. revengai/test/test_pagination_model.py +56 -0
  662. revengai/test/test_params.py +64 -0
  663. revengai/test/test_pdb_debug_model.py +62 -0
  664. revengai/test/test_pe_model.py +220 -0
  665. revengai/test/test_platform.py +33 -0
  666. revengai/test/test_platform_options.py +33 -0
  667. revengai/test/test_process.py +72 -0
  668. revengai/test/test_process_dump.py +64 -0
  669. revengai/test/test_process_dump_metadata.py +56 -0
  670. revengai/test/test_process_dumps.py +76 -0
  671. revengai/test/test_process_dumps_data.py +72 -0
  672. revengai/test/test_process_registry.py +70 -0
  673. revengai/test/test_process_tree.py +80 -0
  674. revengai/test/test_queued_security_checks_task_response.py +52 -0
  675. revengai/test/test_quick_search.py +53 -0
  676. revengai/test/test_re_analysis_form.py +58 -0
  677. revengai/test/test_recent.py +82 -0
  678. revengai/test/test_recent_analysis.py +53 -0
  679. revengai/test/test_recent_analysis_form.py +53 -0
  680. revengai/test/test_registry.py +58 -0
  681. revengai/test/test_relative_binary_response.py +56 -0
  682. revengai/test/test_rename.py +53 -0
  683. revengai/test/test_sandbox_options.py +52 -0
  684. revengai/test/test_sbom.py +66 -0
  685. revengai/test/test_sbom_package.py +54 -0
  686. revengai/test/test_scope.py +33 -0
  687. revengai/test/test_scrape_third_party_config.py +51 -0
  688. revengai/test/test_search_api.py +59 -0
  689. revengai/test/test_search_binary_ids.py +50 -0
  690. revengai/test/test_search_form.py +56 -0
  691. revengai/test/test_search_function_ids.py +50 -0
  692. revengai/test/test_search_query.py +52 -0
  693. revengai/test/test_section_model.py +72 -0
  694. revengai/test/test_security_checks_response.py +76 -0
  695. revengai/test/test_security_checks_result.py +66 -0
  696. revengai/test/test_security_model.py +72 -0
  697. revengai/test/test_severity_type.py +33 -0
  698. revengai/test/test_similar_functions_response.py +74 -0
  699. revengai/test/test_single_code_certificate_model.py +62 -0
  700. revengai/test/test_single_code_signature_model.py +70 -0
  701. revengai/test/test_single_pdb_entry_model.py +56 -0
  702. revengai/test/test_single_section_model.py +64 -0
  703. revengai/test/test_stack_variable.py +61 -0
  704. revengai/test/test_status_input.py +33 -0
  705. revengai/test/test_status_output.py +54 -0
  706. revengai/test/test_string_functions.py +62 -0
  707. revengai/test/test_structure.py +71 -0
  708. revengai/test/test_structure_member.py +59 -0
  709. revengai/test/test_symbols.py +57 -0
  710. revengai/test/test_symbols_info.py +55 -0
  711. revengai/test/test_tag_confidence_body.py +60 -0
  712. revengai/test/test_tag_input.py +52 -0
  713. revengai/test/test_tag_origin_box_plot_confidence.py +72 -0
  714. revengai/test/test_tag_output.py +54 -0
  715. revengai/test/test_tag_response.py +54 -0
  716. revengai/test/test_tag_search_response.py +60 -0
  717. revengai/test/test_tag_search_result.py +54 -0
  718. revengai/test/test_tags.py +54 -0
  719. revengai/test/test_task_response.py +52 -0
  720. revengai/test/test_task_status.py +33 -0
  721. revengai/test/test_threat_score_function_body.py +53 -0
  722. revengai/test/test_timestamp_model.py +56 -0
  723. revengai/test/test_ttps.py +86 -0
  724. revengai/test/test_ttps_attack.py +54 -0
  725. revengai/test/test_ttps_data.py +82 -0
  726. revengai/test/test_ttps_element.py +74 -0
  727. revengai/test/test_ttps_occurance.py +54 -0
  728. revengai/test/test_type_definition.py +56 -0
  729. revengai/test/test_update_function_data_types.py +118 -0
  730. revengai/test/test_upload_success.py +54 -0
  731. revengai/test/test_upsert_ai_decomplation_rating_request.py +52 -0
  732. revengai/test/test_user_activity_response.py +62 -0
  733. revengai/test/test_user_boundaries.py +56 -0
  734. revengai/test/test_v1_api.py +185 -0
  735. revengai/test/test_vulnerabilities.py +78 -0
  736. revengai/test/test_vulnerability.py +71 -0
  737. revengai/test/test_vulnerability_type.py +33 -0
  738. revengai/test/test_workspace.py +33 -0
  739. revengai-1.1.1.dist-info/METADATA +470 -0
  740. revengai-1.1.1.dist-info/RECORD +741 -0
  741. revengai-1.1.1.dist-info/WHEEL +4 -0
@@ -0,0 +1,2324 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ RevEng.AI API
5
+
6
+ RevEng.AI is Similarity Search Engine for executable binaries
7
+
8
+ The version of the OpenAPI document: 0.0.1
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+ import warnings
15
+ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
16
+ from typing import Any, Dict, List, Optional, Tuple, Union
17
+ from typing_extensions import Annotated
18
+
19
+ from pydantic import Field, StrictInt, StrictStr
20
+ from typing import Any, Optional
21
+ from typing_extensions import Annotated
22
+ from revengai.models.app_core_responses_base_base_response_analysis_tags2 import AppCoreResponsesBaseBaseResponseAnalysisTags2
23
+ from revengai.models.base_response_analysis_functions import BaseResponseAnalysisFunctions
24
+ from revengai.models.base_response_analysis_threat_score_data import BaseResponseAnalysisThreatScoreData
25
+ from revengai.models.base_response_capabilities import BaseResponseCapabilities
26
+ from revengai.models.base_response_communities import BaseResponseCommunities
27
+ from revengai.models.base_response_list_sbom import BaseResponseListSBOM
28
+ from revengai.models.base_response_vulnerabilities import BaseResponseVulnerabilities
29
+
30
+ from revengai.api_client import ApiClient, RequestSerialized
31
+ from revengai.api_response import ApiResponse
32
+ from revengai.rest import RESTResponseType
33
+
34
+
35
+ class AnalysesResultsMetadataApi:
36
+ """NOTE: This class is auto generated by OpenAPI Generator
37
+ Ref: https://openapi-generator.tech
38
+
39
+ Do not edit the class manually.
40
+ """
41
+
42
+ def __init__(self, api_client=None) -> None:
43
+ if api_client is None:
44
+ api_client = ApiClient.get_default()
45
+ self.api_client = api_client
46
+
47
+
48
+ @validate_call
49
+ def get_capabilities(
50
+ self,
51
+ analysis_id: StrictInt,
52
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
53
+ _request_timeout: Union[
54
+ None,
55
+ Annotated[StrictFloat, Field(gt=0)],
56
+ Tuple[
57
+ Annotated[StrictFloat, Field(gt=0)],
58
+ Annotated[StrictFloat, Field(gt=0)]
59
+ ]
60
+ ] = None,
61
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
62
+ _content_type: Optional[StrictStr] = None,
63
+ _headers: Optional[Dict[StrictStr, Any]] = None,
64
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
65
+ ) -> BaseResponseCapabilities:
66
+ """Gets the capabilities from the analysis
67
+
68
+
69
+ :param analysis_id: (required)
70
+ :type analysis_id: int
71
+ :param authorization: API Key bearer token
72
+ :type authorization: str
73
+ :param _request_timeout: timeout setting for this request. If one
74
+ number provided, it will be total request
75
+ timeout. It can also be a pair (tuple) of
76
+ (connection, read) timeouts.
77
+ :type _request_timeout: int, tuple(int, int), optional
78
+ :param _request_auth: set to override the auth_settings for an a single
79
+ request; this effectively ignores the
80
+ authentication in the spec for a single request.
81
+ :type _request_auth: dict, optional
82
+ :param _content_type: force content-type for the request.
83
+ :type _content_type: str, Optional
84
+ :param _headers: set to override the headers for a single
85
+ request; this effectively ignores the headers
86
+ in the spec for a single request.
87
+ :type _headers: dict, optional
88
+ :param _host_index: set to override the host_index for a single
89
+ request; this effectively ignores the host_index
90
+ in the spec for a single request.
91
+ :type _host_index: int, optional
92
+ :return: Returns the result object.
93
+ """ # noqa: E501
94
+
95
+ _param = self._get_capabilities_serialize(
96
+ analysis_id=analysis_id,
97
+ authorization=authorization,
98
+ _request_auth=_request_auth,
99
+ _content_type=_content_type,
100
+ _headers=_headers,
101
+ _host_index=_host_index
102
+ )
103
+
104
+ _response_types_map: Dict[str, Optional[str]] = {
105
+ '200': "BaseResponseCapabilities",
106
+ '422': "BaseResponse",
107
+ }
108
+ response_data = self.api_client.call_api(
109
+ *_param,
110
+ _request_timeout=_request_timeout
111
+ )
112
+ response_data.read()
113
+ return self.api_client.response_deserialize(
114
+ response_data=response_data,
115
+ response_types_map=_response_types_map,
116
+ ).data
117
+
118
+
119
+ @validate_call
120
+ def get_capabilities_with_http_info(
121
+ self,
122
+ analysis_id: StrictInt,
123
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
124
+ _request_timeout: Union[
125
+ None,
126
+ Annotated[StrictFloat, Field(gt=0)],
127
+ Tuple[
128
+ Annotated[StrictFloat, Field(gt=0)],
129
+ Annotated[StrictFloat, Field(gt=0)]
130
+ ]
131
+ ] = None,
132
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
133
+ _content_type: Optional[StrictStr] = None,
134
+ _headers: Optional[Dict[StrictStr, Any]] = None,
135
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
136
+ ) -> ApiResponse[BaseResponseCapabilities]:
137
+ """Gets the capabilities from the analysis
138
+
139
+
140
+ :param analysis_id: (required)
141
+ :type analysis_id: int
142
+ :param authorization: API Key bearer token
143
+ :type authorization: str
144
+ :param _request_timeout: timeout setting for this request. If one
145
+ number provided, it will be total request
146
+ timeout. It can also be a pair (tuple) of
147
+ (connection, read) timeouts.
148
+ :type _request_timeout: int, tuple(int, int), optional
149
+ :param _request_auth: set to override the auth_settings for an a single
150
+ request; this effectively ignores the
151
+ authentication in the spec for a single request.
152
+ :type _request_auth: dict, optional
153
+ :param _content_type: force content-type for the request.
154
+ :type _content_type: str, Optional
155
+ :param _headers: set to override the headers for a single
156
+ request; this effectively ignores the headers
157
+ in the spec for a single request.
158
+ :type _headers: dict, optional
159
+ :param _host_index: set to override the host_index for a single
160
+ request; this effectively ignores the host_index
161
+ in the spec for a single request.
162
+ :type _host_index: int, optional
163
+ :return: Returns the result object.
164
+ """ # noqa: E501
165
+
166
+ _param = self._get_capabilities_serialize(
167
+ analysis_id=analysis_id,
168
+ authorization=authorization,
169
+ _request_auth=_request_auth,
170
+ _content_type=_content_type,
171
+ _headers=_headers,
172
+ _host_index=_host_index
173
+ )
174
+
175
+ _response_types_map: Dict[str, Optional[str]] = {
176
+ '200': "BaseResponseCapabilities",
177
+ '422': "BaseResponse",
178
+ }
179
+ response_data = self.api_client.call_api(
180
+ *_param,
181
+ _request_timeout=_request_timeout
182
+ )
183
+ response_data.read()
184
+ return self.api_client.response_deserialize(
185
+ response_data=response_data,
186
+ response_types_map=_response_types_map,
187
+ )
188
+
189
+
190
+ @validate_call
191
+ def get_capabilities_without_preload_content(
192
+ self,
193
+ analysis_id: StrictInt,
194
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
195
+ _request_timeout: Union[
196
+ None,
197
+ Annotated[StrictFloat, Field(gt=0)],
198
+ Tuple[
199
+ Annotated[StrictFloat, Field(gt=0)],
200
+ Annotated[StrictFloat, Field(gt=0)]
201
+ ]
202
+ ] = None,
203
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
204
+ _content_type: Optional[StrictStr] = None,
205
+ _headers: Optional[Dict[StrictStr, Any]] = None,
206
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
207
+ ) -> RESTResponseType:
208
+ """Gets the capabilities from the analysis
209
+
210
+
211
+ :param analysis_id: (required)
212
+ :type analysis_id: int
213
+ :param authorization: API Key bearer token
214
+ :type authorization: str
215
+ :param _request_timeout: timeout setting for this request. If one
216
+ number provided, it will be total request
217
+ timeout. It can also be a pair (tuple) of
218
+ (connection, read) timeouts.
219
+ :type _request_timeout: int, tuple(int, int), optional
220
+ :param _request_auth: set to override the auth_settings for an a single
221
+ request; this effectively ignores the
222
+ authentication in the spec for a single request.
223
+ :type _request_auth: dict, optional
224
+ :param _content_type: force content-type for the request.
225
+ :type _content_type: str, Optional
226
+ :param _headers: set to override the headers for a single
227
+ request; this effectively ignores the headers
228
+ in the spec for a single request.
229
+ :type _headers: dict, optional
230
+ :param _host_index: set to override the host_index for a single
231
+ request; this effectively ignores the host_index
232
+ in the spec for a single request.
233
+ :type _host_index: int, optional
234
+ :return: Returns the result object.
235
+ """ # noqa: E501
236
+
237
+ _param = self._get_capabilities_serialize(
238
+ analysis_id=analysis_id,
239
+ authorization=authorization,
240
+ _request_auth=_request_auth,
241
+ _content_type=_content_type,
242
+ _headers=_headers,
243
+ _host_index=_host_index
244
+ )
245
+
246
+ _response_types_map: Dict[str, Optional[str]] = {
247
+ '200': "BaseResponseCapabilities",
248
+ '422': "BaseResponse",
249
+ }
250
+ response_data = self.api_client.call_api(
251
+ *_param,
252
+ _request_timeout=_request_timeout
253
+ )
254
+ return response_data.response
255
+
256
+
257
+ def _get_capabilities_serialize(
258
+ self,
259
+ analysis_id,
260
+ authorization,
261
+ _request_auth,
262
+ _content_type,
263
+ _headers,
264
+ _host_index,
265
+ ) -> RequestSerialized:
266
+
267
+ _host = None
268
+
269
+ _collection_formats: Dict[str, str] = {
270
+ }
271
+
272
+ _path_params: Dict[str, str] = {}
273
+ _query_params: List[Tuple[str, str]] = []
274
+ _header_params: Dict[str, Optional[str]] = _headers or {}
275
+ _form_params: List[Tuple[str, str]] = []
276
+ _files: Dict[
277
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
278
+ ] = {}
279
+ _body_params: Optional[bytes] = None
280
+
281
+ # process the path parameters
282
+ if analysis_id is not None:
283
+ _path_params['analysis_id'] = analysis_id
284
+ # process the query parameters
285
+ # process the header parameters
286
+ if authorization is not None:
287
+ _header_params['authorization'] = authorization
288
+ # process the form parameters
289
+ # process the body parameter
290
+
291
+
292
+ # set the HTTP header `Accept`
293
+ if 'Accept' not in _header_params:
294
+ _header_params['Accept'] = self.api_client.select_header_accept(
295
+ [
296
+ 'application/json'
297
+ ]
298
+ )
299
+
300
+
301
+ # authentication setting
302
+ _auth_settings: List[str] = [
303
+ 'APIKey'
304
+ ]
305
+
306
+ return self.api_client.param_serialize(
307
+ method='GET',
308
+ resource_path='/v2/analyses/{analysis_id}/capabilities',
309
+ path_params=_path_params,
310
+ query_params=_query_params,
311
+ header_params=_header_params,
312
+ body=_body_params,
313
+ post_params=_form_params,
314
+ files=_files,
315
+ auth_settings=_auth_settings,
316
+ collection_formats=_collection_formats,
317
+ _host=_host,
318
+ _request_auth=_request_auth
319
+ )
320
+
321
+
322
+
323
+
324
+ @validate_call
325
+ def get_communities(
326
+ self,
327
+ analysis_id: StrictInt,
328
+ user_name: Annotated[Optional[StrictStr], Field(description="The user name to limit communities to")] = None,
329
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
330
+ _request_timeout: Union[
331
+ None,
332
+ Annotated[StrictFloat, Field(gt=0)],
333
+ Tuple[
334
+ Annotated[StrictFloat, Field(gt=0)],
335
+ Annotated[StrictFloat, Field(gt=0)]
336
+ ]
337
+ ] = None,
338
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
339
+ _content_type: Optional[StrictStr] = None,
340
+ _headers: Optional[Dict[StrictStr, Any]] = None,
341
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
342
+ ) -> BaseResponseCommunities:
343
+ """Gets the communities found in the analysis
344
+
345
+
346
+ :param analysis_id: (required)
347
+ :type analysis_id: int
348
+ :param user_name: The user name to limit communities to
349
+ :type user_name: str
350
+ :param authorization: API Key bearer token
351
+ :type authorization: str
352
+ :param _request_timeout: timeout setting for this request. If one
353
+ number provided, it will be total request
354
+ timeout. It can also be a pair (tuple) of
355
+ (connection, read) timeouts.
356
+ :type _request_timeout: int, tuple(int, int), optional
357
+ :param _request_auth: set to override the auth_settings for an a single
358
+ request; this effectively ignores the
359
+ authentication in the spec for a single request.
360
+ :type _request_auth: dict, optional
361
+ :param _content_type: force content-type for the request.
362
+ :type _content_type: str, Optional
363
+ :param _headers: set to override the headers for a single
364
+ request; this effectively ignores the headers
365
+ in the spec for a single request.
366
+ :type _headers: dict, optional
367
+ :param _host_index: set to override the host_index for a single
368
+ request; this effectively ignores the host_index
369
+ in the spec for a single request.
370
+ :type _host_index: int, optional
371
+ :return: Returns the result object.
372
+ """ # noqa: E501
373
+
374
+ _param = self._get_communities_serialize(
375
+ analysis_id=analysis_id,
376
+ user_name=user_name,
377
+ authorization=authorization,
378
+ _request_auth=_request_auth,
379
+ _content_type=_content_type,
380
+ _headers=_headers,
381
+ _host_index=_host_index
382
+ )
383
+
384
+ _response_types_map: Dict[str, Optional[str]] = {
385
+ '200': "BaseResponseCommunities",
386
+ '422': "BaseResponse",
387
+ }
388
+ response_data = self.api_client.call_api(
389
+ *_param,
390
+ _request_timeout=_request_timeout
391
+ )
392
+ response_data.read()
393
+ return self.api_client.response_deserialize(
394
+ response_data=response_data,
395
+ response_types_map=_response_types_map,
396
+ ).data
397
+
398
+
399
+ @validate_call
400
+ def get_communities_with_http_info(
401
+ self,
402
+ analysis_id: StrictInt,
403
+ user_name: Annotated[Optional[StrictStr], Field(description="The user name to limit communities to")] = None,
404
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
405
+ _request_timeout: Union[
406
+ None,
407
+ Annotated[StrictFloat, Field(gt=0)],
408
+ Tuple[
409
+ Annotated[StrictFloat, Field(gt=0)],
410
+ Annotated[StrictFloat, Field(gt=0)]
411
+ ]
412
+ ] = None,
413
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
414
+ _content_type: Optional[StrictStr] = None,
415
+ _headers: Optional[Dict[StrictStr, Any]] = None,
416
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
417
+ ) -> ApiResponse[BaseResponseCommunities]:
418
+ """Gets the communities found in the analysis
419
+
420
+
421
+ :param analysis_id: (required)
422
+ :type analysis_id: int
423
+ :param user_name: The user name to limit communities to
424
+ :type user_name: str
425
+ :param authorization: API Key bearer token
426
+ :type authorization: str
427
+ :param _request_timeout: timeout setting for this request. If one
428
+ number provided, it will be total request
429
+ timeout. It can also be a pair (tuple) of
430
+ (connection, read) timeouts.
431
+ :type _request_timeout: int, tuple(int, int), optional
432
+ :param _request_auth: set to override the auth_settings for an a single
433
+ request; this effectively ignores the
434
+ authentication in the spec for a single request.
435
+ :type _request_auth: dict, optional
436
+ :param _content_type: force content-type for the request.
437
+ :type _content_type: str, Optional
438
+ :param _headers: set to override the headers for a single
439
+ request; this effectively ignores the headers
440
+ in the spec for a single request.
441
+ :type _headers: dict, optional
442
+ :param _host_index: set to override the host_index for a single
443
+ request; this effectively ignores the host_index
444
+ in the spec for a single request.
445
+ :type _host_index: int, optional
446
+ :return: Returns the result object.
447
+ """ # noqa: E501
448
+
449
+ _param = self._get_communities_serialize(
450
+ analysis_id=analysis_id,
451
+ user_name=user_name,
452
+ authorization=authorization,
453
+ _request_auth=_request_auth,
454
+ _content_type=_content_type,
455
+ _headers=_headers,
456
+ _host_index=_host_index
457
+ )
458
+
459
+ _response_types_map: Dict[str, Optional[str]] = {
460
+ '200': "BaseResponseCommunities",
461
+ '422': "BaseResponse",
462
+ }
463
+ response_data = self.api_client.call_api(
464
+ *_param,
465
+ _request_timeout=_request_timeout
466
+ )
467
+ response_data.read()
468
+ return self.api_client.response_deserialize(
469
+ response_data=response_data,
470
+ response_types_map=_response_types_map,
471
+ )
472
+
473
+
474
+ @validate_call
475
+ def get_communities_without_preload_content(
476
+ self,
477
+ analysis_id: StrictInt,
478
+ user_name: Annotated[Optional[StrictStr], Field(description="The user name to limit communities to")] = None,
479
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
480
+ _request_timeout: Union[
481
+ None,
482
+ Annotated[StrictFloat, Field(gt=0)],
483
+ Tuple[
484
+ Annotated[StrictFloat, Field(gt=0)],
485
+ Annotated[StrictFloat, Field(gt=0)]
486
+ ]
487
+ ] = None,
488
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
489
+ _content_type: Optional[StrictStr] = None,
490
+ _headers: Optional[Dict[StrictStr, Any]] = None,
491
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
492
+ ) -> RESTResponseType:
493
+ """Gets the communities found in the analysis
494
+
495
+
496
+ :param analysis_id: (required)
497
+ :type analysis_id: int
498
+ :param user_name: The user name to limit communities to
499
+ :type user_name: str
500
+ :param authorization: API Key bearer token
501
+ :type authorization: str
502
+ :param _request_timeout: timeout setting for this request. If one
503
+ number provided, it will be total request
504
+ timeout. It can also be a pair (tuple) of
505
+ (connection, read) timeouts.
506
+ :type _request_timeout: int, tuple(int, int), optional
507
+ :param _request_auth: set to override the auth_settings for an a single
508
+ request; this effectively ignores the
509
+ authentication in the spec for a single request.
510
+ :type _request_auth: dict, optional
511
+ :param _content_type: force content-type for the request.
512
+ :type _content_type: str, Optional
513
+ :param _headers: set to override the headers for a single
514
+ request; this effectively ignores the headers
515
+ in the spec for a single request.
516
+ :type _headers: dict, optional
517
+ :param _host_index: set to override the host_index for a single
518
+ request; this effectively ignores the host_index
519
+ in the spec for a single request.
520
+ :type _host_index: int, optional
521
+ :return: Returns the result object.
522
+ """ # noqa: E501
523
+
524
+ _param = self._get_communities_serialize(
525
+ analysis_id=analysis_id,
526
+ user_name=user_name,
527
+ authorization=authorization,
528
+ _request_auth=_request_auth,
529
+ _content_type=_content_type,
530
+ _headers=_headers,
531
+ _host_index=_host_index
532
+ )
533
+
534
+ _response_types_map: Dict[str, Optional[str]] = {
535
+ '200': "BaseResponseCommunities",
536
+ '422': "BaseResponse",
537
+ }
538
+ response_data = self.api_client.call_api(
539
+ *_param,
540
+ _request_timeout=_request_timeout
541
+ )
542
+ return response_data.response
543
+
544
+
545
+ def _get_communities_serialize(
546
+ self,
547
+ analysis_id,
548
+ user_name,
549
+ authorization,
550
+ _request_auth,
551
+ _content_type,
552
+ _headers,
553
+ _host_index,
554
+ ) -> RequestSerialized:
555
+
556
+ _host = None
557
+
558
+ _collection_formats: Dict[str, str] = {
559
+ }
560
+
561
+ _path_params: Dict[str, str] = {}
562
+ _query_params: List[Tuple[str, str]] = []
563
+ _header_params: Dict[str, Optional[str]] = _headers or {}
564
+ _form_params: List[Tuple[str, str]] = []
565
+ _files: Dict[
566
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
567
+ ] = {}
568
+ _body_params: Optional[bytes] = None
569
+
570
+ # process the path parameters
571
+ if analysis_id is not None:
572
+ _path_params['analysis_id'] = analysis_id
573
+ # process the query parameters
574
+ if user_name is not None:
575
+
576
+ _query_params.append(('user_name', user_name))
577
+
578
+ # process the header parameters
579
+ if authorization is not None:
580
+ _header_params['authorization'] = authorization
581
+ # process the form parameters
582
+ # process the body parameter
583
+
584
+
585
+ # set the HTTP header `Accept`
586
+ if 'Accept' not in _header_params:
587
+ _header_params['Accept'] = self.api_client.select_header_accept(
588
+ [
589
+ 'application/json'
590
+ ]
591
+ )
592
+
593
+
594
+ # authentication setting
595
+ _auth_settings: List[str] = [
596
+ 'APIKey'
597
+ ]
598
+
599
+ return self.api_client.param_serialize(
600
+ method='GET',
601
+ resource_path='/v2/analyses/{analysis_id}/communities',
602
+ path_params=_path_params,
603
+ query_params=_query_params,
604
+ header_params=_header_params,
605
+ body=_body_params,
606
+ post_params=_form_params,
607
+ files=_files,
608
+ auth_settings=_auth_settings,
609
+ collection_formats=_collection_formats,
610
+ _host=_host,
611
+ _request_auth=_request_auth
612
+ )
613
+
614
+
615
+
616
+
617
+ @validate_call
618
+ def get_functions_list(
619
+ self,
620
+ analysis_id: StrictInt,
621
+ search_term: Optional[StrictStr] = None,
622
+ min_v_addr: Optional[StrictInt] = None,
623
+ max_v_addr: Optional[StrictInt] = None,
624
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
625
+ _request_timeout: Union[
626
+ None,
627
+ Annotated[StrictFloat, Field(gt=0)],
628
+ Tuple[
629
+ Annotated[StrictFloat, Field(gt=0)],
630
+ Annotated[StrictFloat, Field(gt=0)]
631
+ ]
632
+ ] = None,
633
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
634
+ _content_type: Optional[StrictStr] = None,
635
+ _headers: Optional[Dict[StrictStr, Any]] = None,
636
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
637
+ ) -> BaseResponseAnalysisFunctions:
638
+ """Gets functions from analysis
639
+
640
+ Gets the functions identified during analysis
641
+
642
+ :param analysis_id: (required)
643
+ :type analysis_id: int
644
+ :param search_term:
645
+ :type search_term: str
646
+ :param min_v_addr:
647
+ :type min_v_addr: int
648
+ :param max_v_addr:
649
+ :type max_v_addr: int
650
+ :param authorization: API Key bearer token
651
+ :type authorization: str
652
+ :param _request_timeout: timeout setting for this request. If one
653
+ number provided, it will be total request
654
+ timeout. It can also be a pair (tuple) of
655
+ (connection, read) timeouts.
656
+ :type _request_timeout: int, tuple(int, int), optional
657
+ :param _request_auth: set to override the auth_settings for an a single
658
+ request; this effectively ignores the
659
+ authentication in the spec for a single request.
660
+ :type _request_auth: dict, optional
661
+ :param _content_type: force content-type for the request.
662
+ :type _content_type: str, Optional
663
+ :param _headers: set to override the headers for a single
664
+ request; this effectively ignores the headers
665
+ in the spec for a single request.
666
+ :type _headers: dict, optional
667
+ :param _host_index: set to override the host_index for a single
668
+ request; this effectively ignores the host_index
669
+ in the spec for a single request.
670
+ :type _host_index: int, optional
671
+ :return: Returns the result object.
672
+ """ # noqa: E501
673
+
674
+ _param = self._get_functions_list_serialize(
675
+ analysis_id=analysis_id,
676
+ search_term=search_term,
677
+ min_v_addr=min_v_addr,
678
+ max_v_addr=max_v_addr,
679
+ authorization=authorization,
680
+ _request_auth=_request_auth,
681
+ _content_type=_content_type,
682
+ _headers=_headers,
683
+ _host_index=_host_index
684
+ )
685
+
686
+ _response_types_map: Dict[str, Optional[str]] = {
687
+ '200': "BaseResponseAnalysisFunctions",
688
+ '422': "BaseResponse",
689
+ }
690
+ response_data = self.api_client.call_api(
691
+ *_param,
692
+ _request_timeout=_request_timeout
693
+ )
694
+ response_data.read()
695
+ return self.api_client.response_deserialize(
696
+ response_data=response_data,
697
+ response_types_map=_response_types_map,
698
+ ).data
699
+
700
+
701
+ @validate_call
702
+ def get_functions_list_with_http_info(
703
+ self,
704
+ analysis_id: StrictInt,
705
+ search_term: Optional[StrictStr] = None,
706
+ min_v_addr: Optional[StrictInt] = None,
707
+ max_v_addr: Optional[StrictInt] = None,
708
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
709
+ _request_timeout: Union[
710
+ None,
711
+ Annotated[StrictFloat, Field(gt=0)],
712
+ Tuple[
713
+ Annotated[StrictFloat, Field(gt=0)],
714
+ Annotated[StrictFloat, Field(gt=0)]
715
+ ]
716
+ ] = None,
717
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
718
+ _content_type: Optional[StrictStr] = None,
719
+ _headers: Optional[Dict[StrictStr, Any]] = None,
720
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
721
+ ) -> ApiResponse[BaseResponseAnalysisFunctions]:
722
+ """Gets functions from analysis
723
+
724
+ Gets the functions identified during analysis
725
+
726
+ :param analysis_id: (required)
727
+ :type analysis_id: int
728
+ :param search_term:
729
+ :type search_term: str
730
+ :param min_v_addr:
731
+ :type min_v_addr: int
732
+ :param max_v_addr:
733
+ :type max_v_addr: int
734
+ :param authorization: API Key bearer token
735
+ :type authorization: str
736
+ :param _request_timeout: timeout setting for this request. If one
737
+ number provided, it will be total request
738
+ timeout. It can also be a pair (tuple) of
739
+ (connection, read) timeouts.
740
+ :type _request_timeout: int, tuple(int, int), optional
741
+ :param _request_auth: set to override the auth_settings for an a single
742
+ request; this effectively ignores the
743
+ authentication in the spec for a single request.
744
+ :type _request_auth: dict, optional
745
+ :param _content_type: force content-type for the request.
746
+ :type _content_type: str, Optional
747
+ :param _headers: set to override the headers for a single
748
+ request; this effectively ignores the headers
749
+ in the spec for a single request.
750
+ :type _headers: dict, optional
751
+ :param _host_index: set to override the host_index for a single
752
+ request; this effectively ignores the host_index
753
+ in the spec for a single request.
754
+ :type _host_index: int, optional
755
+ :return: Returns the result object.
756
+ """ # noqa: E501
757
+
758
+ _param = self._get_functions_list_serialize(
759
+ analysis_id=analysis_id,
760
+ search_term=search_term,
761
+ min_v_addr=min_v_addr,
762
+ max_v_addr=max_v_addr,
763
+ authorization=authorization,
764
+ _request_auth=_request_auth,
765
+ _content_type=_content_type,
766
+ _headers=_headers,
767
+ _host_index=_host_index
768
+ )
769
+
770
+ _response_types_map: Dict[str, Optional[str]] = {
771
+ '200': "BaseResponseAnalysisFunctions",
772
+ '422': "BaseResponse",
773
+ }
774
+ response_data = self.api_client.call_api(
775
+ *_param,
776
+ _request_timeout=_request_timeout
777
+ )
778
+ response_data.read()
779
+ return self.api_client.response_deserialize(
780
+ response_data=response_data,
781
+ response_types_map=_response_types_map,
782
+ )
783
+
784
+
785
+ @validate_call
786
+ def get_functions_list_without_preload_content(
787
+ self,
788
+ analysis_id: StrictInt,
789
+ search_term: Optional[StrictStr] = None,
790
+ min_v_addr: Optional[StrictInt] = None,
791
+ max_v_addr: Optional[StrictInt] = None,
792
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
793
+ _request_timeout: Union[
794
+ None,
795
+ Annotated[StrictFloat, Field(gt=0)],
796
+ Tuple[
797
+ Annotated[StrictFloat, Field(gt=0)],
798
+ Annotated[StrictFloat, Field(gt=0)]
799
+ ]
800
+ ] = None,
801
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
802
+ _content_type: Optional[StrictStr] = None,
803
+ _headers: Optional[Dict[StrictStr, Any]] = None,
804
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
805
+ ) -> RESTResponseType:
806
+ """Gets functions from analysis
807
+
808
+ Gets the functions identified during analysis
809
+
810
+ :param analysis_id: (required)
811
+ :type analysis_id: int
812
+ :param search_term:
813
+ :type search_term: str
814
+ :param min_v_addr:
815
+ :type min_v_addr: int
816
+ :param max_v_addr:
817
+ :type max_v_addr: int
818
+ :param authorization: API Key bearer token
819
+ :type authorization: str
820
+ :param _request_timeout: timeout setting for this request. If one
821
+ number provided, it will be total request
822
+ timeout. It can also be a pair (tuple) of
823
+ (connection, read) timeouts.
824
+ :type _request_timeout: int, tuple(int, int), optional
825
+ :param _request_auth: set to override the auth_settings for an a single
826
+ request; this effectively ignores the
827
+ authentication in the spec for a single request.
828
+ :type _request_auth: dict, optional
829
+ :param _content_type: force content-type for the request.
830
+ :type _content_type: str, Optional
831
+ :param _headers: set to override the headers for a single
832
+ request; this effectively ignores the headers
833
+ in the spec for a single request.
834
+ :type _headers: dict, optional
835
+ :param _host_index: set to override the host_index for a single
836
+ request; this effectively ignores the host_index
837
+ in the spec for a single request.
838
+ :type _host_index: int, optional
839
+ :return: Returns the result object.
840
+ """ # noqa: E501
841
+
842
+ _param = self._get_functions_list_serialize(
843
+ analysis_id=analysis_id,
844
+ search_term=search_term,
845
+ min_v_addr=min_v_addr,
846
+ max_v_addr=max_v_addr,
847
+ authorization=authorization,
848
+ _request_auth=_request_auth,
849
+ _content_type=_content_type,
850
+ _headers=_headers,
851
+ _host_index=_host_index
852
+ )
853
+
854
+ _response_types_map: Dict[str, Optional[str]] = {
855
+ '200': "BaseResponseAnalysisFunctions",
856
+ '422': "BaseResponse",
857
+ }
858
+ response_data = self.api_client.call_api(
859
+ *_param,
860
+ _request_timeout=_request_timeout
861
+ )
862
+ return response_data.response
863
+
864
+
865
+ def _get_functions_list_serialize(
866
+ self,
867
+ analysis_id,
868
+ search_term,
869
+ min_v_addr,
870
+ max_v_addr,
871
+ authorization,
872
+ _request_auth,
873
+ _content_type,
874
+ _headers,
875
+ _host_index,
876
+ ) -> RequestSerialized:
877
+
878
+ _host = None
879
+
880
+ _collection_formats: Dict[str, str] = {
881
+ }
882
+
883
+ _path_params: Dict[str, str] = {}
884
+ _query_params: List[Tuple[str, str]] = []
885
+ _header_params: Dict[str, Optional[str]] = _headers or {}
886
+ _form_params: List[Tuple[str, str]] = []
887
+ _files: Dict[
888
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
889
+ ] = {}
890
+ _body_params: Optional[bytes] = None
891
+
892
+ # process the path parameters
893
+ if analysis_id is not None:
894
+ _path_params['analysis_id'] = analysis_id
895
+ # process the query parameters
896
+ if search_term is not None:
897
+
898
+ _query_params.append(('search_term', search_term))
899
+
900
+ if min_v_addr is not None:
901
+
902
+ _query_params.append(('min_v_addr', min_v_addr))
903
+
904
+ if max_v_addr is not None:
905
+
906
+ _query_params.append(('max_v_addr', max_v_addr))
907
+
908
+ # process the header parameters
909
+ if authorization is not None:
910
+ _header_params['authorization'] = authorization
911
+ # process the form parameters
912
+ # process the body parameter
913
+
914
+
915
+ # set the HTTP header `Accept`
916
+ if 'Accept' not in _header_params:
917
+ _header_params['Accept'] = self.api_client.select_header_accept(
918
+ [
919
+ 'application/json'
920
+ ]
921
+ )
922
+
923
+
924
+ # authentication setting
925
+ _auth_settings: List[str] = [
926
+ 'APIKey'
927
+ ]
928
+
929
+ return self.api_client.param_serialize(
930
+ method='GET',
931
+ resource_path='/v2/analyses/{analysis_id}/functions/list',
932
+ path_params=_path_params,
933
+ query_params=_query_params,
934
+ header_params=_header_params,
935
+ body=_body_params,
936
+ post_params=_form_params,
937
+ files=_files,
938
+ auth_settings=_auth_settings,
939
+ collection_formats=_collection_formats,
940
+ _host=_host,
941
+ _request_auth=_request_auth
942
+ )
943
+
944
+
945
+
946
+
947
+ @validate_call
948
+ def get_pdf(
949
+ self,
950
+ analysis_id: StrictInt,
951
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
952
+ _request_timeout: Union[
953
+ None,
954
+ Annotated[StrictFloat, Field(gt=0)],
955
+ Tuple[
956
+ Annotated[StrictFloat, Field(gt=0)],
957
+ Annotated[StrictFloat, Field(gt=0)]
958
+ ]
959
+ ] = None,
960
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
961
+ _content_type: Optional[StrictStr] = None,
962
+ _headers: Optional[Dict[StrictStr, Any]] = None,
963
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
964
+ ) -> object:
965
+ """Gets the PDF found in the analysis
966
+
967
+
968
+ :param analysis_id: (required)
969
+ :type analysis_id: int
970
+ :param authorization: API Key bearer token
971
+ :type authorization: str
972
+ :param _request_timeout: timeout setting for this request. If one
973
+ number provided, it will be total request
974
+ timeout. It can also be a pair (tuple) of
975
+ (connection, read) timeouts.
976
+ :type _request_timeout: int, tuple(int, int), optional
977
+ :param _request_auth: set to override the auth_settings for an a single
978
+ request; this effectively ignores the
979
+ authentication in the spec for a single request.
980
+ :type _request_auth: dict, optional
981
+ :param _content_type: force content-type for the request.
982
+ :type _content_type: str, Optional
983
+ :param _headers: set to override the headers for a single
984
+ request; this effectively ignores the headers
985
+ in the spec for a single request.
986
+ :type _headers: dict, optional
987
+ :param _host_index: set to override the host_index for a single
988
+ request; this effectively ignores the host_index
989
+ in the spec for a single request.
990
+ :type _host_index: int, optional
991
+ :return: Returns the result object.
992
+ """ # noqa: E501
993
+
994
+ _param = self._get_pdf_serialize(
995
+ analysis_id=analysis_id,
996
+ authorization=authorization,
997
+ _request_auth=_request_auth,
998
+ _content_type=_content_type,
999
+ _headers=_headers,
1000
+ _host_index=_host_index
1001
+ )
1002
+
1003
+ _response_types_map: Dict[str, Optional[str]] = {
1004
+ '200': "object",
1005
+ '422': "BaseResponse",
1006
+ }
1007
+ response_data = self.api_client.call_api(
1008
+ *_param,
1009
+ _request_timeout=_request_timeout
1010
+ )
1011
+ response_data.read()
1012
+ return self.api_client.response_deserialize(
1013
+ response_data=response_data,
1014
+ response_types_map=_response_types_map,
1015
+ ).data
1016
+
1017
+
1018
+ @validate_call
1019
+ def get_pdf_with_http_info(
1020
+ self,
1021
+ analysis_id: StrictInt,
1022
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1023
+ _request_timeout: Union[
1024
+ None,
1025
+ Annotated[StrictFloat, Field(gt=0)],
1026
+ Tuple[
1027
+ Annotated[StrictFloat, Field(gt=0)],
1028
+ Annotated[StrictFloat, Field(gt=0)]
1029
+ ]
1030
+ ] = None,
1031
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1032
+ _content_type: Optional[StrictStr] = None,
1033
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1034
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1035
+ ) -> ApiResponse[object]:
1036
+ """Gets the PDF found in the analysis
1037
+
1038
+
1039
+ :param analysis_id: (required)
1040
+ :type analysis_id: int
1041
+ :param authorization: API Key bearer token
1042
+ :type authorization: str
1043
+ :param _request_timeout: timeout setting for this request. If one
1044
+ number provided, it will be total request
1045
+ timeout. It can also be a pair (tuple) of
1046
+ (connection, read) timeouts.
1047
+ :type _request_timeout: int, tuple(int, int), optional
1048
+ :param _request_auth: set to override the auth_settings for an a single
1049
+ request; this effectively ignores the
1050
+ authentication in the spec for a single request.
1051
+ :type _request_auth: dict, optional
1052
+ :param _content_type: force content-type for the request.
1053
+ :type _content_type: str, Optional
1054
+ :param _headers: set to override the headers for a single
1055
+ request; this effectively ignores the headers
1056
+ in the spec for a single request.
1057
+ :type _headers: dict, optional
1058
+ :param _host_index: set to override the host_index for a single
1059
+ request; this effectively ignores the host_index
1060
+ in the spec for a single request.
1061
+ :type _host_index: int, optional
1062
+ :return: Returns the result object.
1063
+ """ # noqa: E501
1064
+
1065
+ _param = self._get_pdf_serialize(
1066
+ analysis_id=analysis_id,
1067
+ authorization=authorization,
1068
+ _request_auth=_request_auth,
1069
+ _content_type=_content_type,
1070
+ _headers=_headers,
1071
+ _host_index=_host_index
1072
+ )
1073
+
1074
+ _response_types_map: Dict[str, Optional[str]] = {
1075
+ '200': "object",
1076
+ '422': "BaseResponse",
1077
+ }
1078
+ response_data = self.api_client.call_api(
1079
+ *_param,
1080
+ _request_timeout=_request_timeout
1081
+ )
1082
+ response_data.read()
1083
+ return self.api_client.response_deserialize(
1084
+ response_data=response_data,
1085
+ response_types_map=_response_types_map,
1086
+ )
1087
+
1088
+
1089
+ @validate_call
1090
+ def get_pdf_without_preload_content(
1091
+ self,
1092
+ analysis_id: StrictInt,
1093
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1094
+ _request_timeout: Union[
1095
+ None,
1096
+ Annotated[StrictFloat, Field(gt=0)],
1097
+ Tuple[
1098
+ Annotated[StrictFloat, Field(gt=0)],
1099
+ Annotated[StrictFloat, Field(gt=0)]
1100
+ ]
1101
+ ] = None,
1102
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1103
+ _content_type: Optional[StrictStr] = None,
1104
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1105
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1106
+ ) -> RESTResponseType:
1107
+ """Gets the PDF found in the analysis
1108
+
1109
+
1110
+ :param analysis_id: (required)
1111
+ :type analysis_id: int
1112
+ :param authorization: API Key bearer token
1113
+ :type authorization: str
1114
+ :param _request_timeout: timeout setting for this request. If one
1115
+ number provided, it will be total request
1116
+ timeout. It can also be a pair (tuple) of
1117
+ (connection, read) timeouts.
1118
+ :type _request_timeout: int, tuple(int, int), optional
1119
+ :param _request_auth: set to override the auth_settings for an a single
1120
+ request; this effectively ignores the
1121
+ authentication in the spec for a single request.
1122
+ :type _request_auth: dict, optional
1123
+ :param _content_type: force content-type for the request.
1124
+ :type _content_type: str, Optional
1125
+ :param _headers: set to override the headers for a single
1126
+ request; this effectively ignores the headers
1127
+ in the spec for a single request.
1128
+ :type _headers: dict, optional
1129
+ :param _host_index: set to override the host_index for a single
1130
+ request; this effectively ignores the host_index
1131
+ in the spec for a single request.
1132
+ :type _host_index: int, optional
1133
+ :return: Returns the result object.
1134
+ """ # noqa: E501
1135
+
1136
+ _param = self._get_pdf_serialize(
1137
+ analysis_id=analysis_id,
1138
+ authorization=authorization,
1139
+ _request_auth=_request_auth,
1140
+ _content_type=_content_type,
1141
+ _headers=_headers,
1142
+ _host_index=_host_index
1143
+ )
1144
+
1145
+ _response_types_map: Dict[str, Optional[str]] = {
1146
+ '200': "object",
1147
+ '422': "BaseResponse",
1148
+ }
1149
+ response_data = self.api_client.call_api(
1150
+ *_param,
1151
+ _request_timeout=_request_timeout
1152
+ )
1153
+ return response_data.response
1154
+
1155
+
1156
+ def _get_pdf_serialize(
1157
+ self,
1158
+ analysis_id,
1159
+ authorization,
1160
+ _request_auth,
1161
+ _content_type,
1162
+ _headers,
1163
+ _host_index,
1164
+ ) -> RequestSerialized:
1165
+
1166
+ _host = None
1167
+
1168
+ _collection_formats: Dict[str, str] = {
1169
+ }
1170
+
1171
+ _path_params: Dict[str, str] = {}
1172
+ _query_params: List[Tuple[str, str]] = []
1173
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1174
+ _form_params: List[Tuple[str, str]] = []
1175
+ _files: Dict[
1176
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1177
+ ] = {}
1178
+ _body_params: Optional[bytes] = None
1179
+
1180
+ # process the path parameters
1181
+ if analysis_id is not None:
1182
+ _path_params['analysis_id'] = analysis_id
1183
+ # process the query parameters
1184
+ # process the header parameters
1185
+ if authorization is not None:
1186
+ _header_params['authorization'] = authorization
1187
+ # process the form parameters
1188
+ # process the body parameter
1189
+
1190
+
1191
+ # set the HTTP header `Accept`
1192
+ if 'Accept' not in _header_params:
1193
+ _header_params['Accept'] = self.api_client.select_header_accept(
1194
+ [
1195
+ 'application/json'
1196
+ ]
1197
+ )
1198
+
1199
+
1200
+ # authentication setting
1201
+ _auth_settings: List[str] = [
1202
+ 'APIKey'
1203
+ ]
1204
+
1205
+ return self.api_client.param_serialize(
1206
+ method='GET',
1207
+ resource_path='/v2/analyses/{analysis_id}/pdf',
1208
+ path_params=_path_params,
1209
+ query_params=_query_params,
1210
+ header_params=_header_params,
1211
+ body=_body_params,
1212
+ post_params=_form_params,
1213
+ files=_files,
1214
+ auth_settings=_auth_settings,
1215
+ collection_formats=_collection_formats,
1216
+ _host=_host,
1217
+ _request_auth=_request_auth
1218
+ )
1219
+
1220
+
1221
+
1222
+
1223
+ @validate_call
1224
+ def get_sbom(
1225
+ self,
1226
+ analysis_id: StrictInt,
1227
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1228
+ _request_timeout: Union[
1229
+ None,
1230
+ Annotated[StrictFloat, Field(gt=0)],
1231
+ Tuple[
1232
+ Annotated[StrictFloat, Field(gt=0)],
1233
+ Annotated[StrictFloat, Field(gt=0)]
1234
+ ]
1235
+ ] = None,
1236
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1237
+ _content_type: Optional[StrictStr] = None,
1238
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1239
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1240
+ ) -> BaseResponseListSBOM:
1241
+ """Gets the software-bill-of-materials (SBOM) found in the analysis
1242
+
1243
+
1244
+ :param analysis_id: (required)
1245
+ :type analysis_id: int
1246
+ :param authorization: API Key bearer token
1247
+ :type authorization: str
1248
+ :param _request_timeout: timeout setting for this request. If one
1249
+ number provided, it will be total request
1250
+ timeout. It can also be a pair (tuple) of
1251
+ (connection, read) timeouts.
1252
+ :type _request_timeout: int, tuple(int, int), optional
1253
+ :param _request_auth: set to override the auth_settings for an a single
1254
+ request; this effectively ignores the
1255
+ authentication in the spec for a single request.
1256
+ :type _request_auth: dict, optional
1257
+ :param _content_type: force content-type for the request.
1258
+ :type _content_type: str, Optional
1259
+ :param _headers: set to override the headers for a single
1260
+ request; this effectively ignores the headers
1261
+ in the spec for a single request.
1262
+ :type _headers: dict, optional
1263
+ :param _host_index: set to override the host_index for a single
1264
+ request; this effectively ignores the host_index
1265
+ in the spec for a single request.
1266
+ :type _host_index: int, optional
1267
+ :return: Returns the result object.
1268
+ """ # noqa: E501
1269
+
1270
+ _param = self._get_sbom_serialize(
1271
+ analysis_id=analysis_id,
1272
+ authorization=authorization,
1273
+ _request_auth=_request_auth,
1274
+ _content_type=_content_type,
1275
+ _headers=_headers,
1276
+ _host_index=_host_index
1277
+ )
1278
+
1279
+ _response_types_map: Dict[str, Optional[str]] = {
1280
+ '200': "BaseResponseListSBOM",
1281
+ '422': "BaseResponse",
1282
+ }
1283
+ response_data = self.api_client.call_api(
1284
+ *_param,
1285
+ _request_timeout=_request_timeout
1286
+ )
1287
+ response_data.read()
1288
+ return self.api_client.response_deserialize(
1289
+ response_data=response_data,
1290
+ response_types_map=_response_types_map,
1291
+ ).data
1292
+
1293
+
1294
+ @validate_call
1295
+ def get_sbom_with_http_info(
1296
+ self,
1297
+ analysis_id: StrictInt,
1298
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1299
+ _request_timeout: Union[
1300
+ None,
1301
+ Annotated[StrictFloat, Field(gt=0)],
1302
+ Tuple[
1303
+ Annotated[StrictFloat, Field(gt=0)],
1304
+ Annotated[StrictFloat, Field(gt=0)]
1305
+ ]
1306
+ ] = None,
1307
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1308
+ _content_type: Optional[StrictStr] = None,
1309
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1310
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1311
+ ) -> ApiResponse[BaseResponseListSBOM]:
1312
+ """Gets the software-bill-of-materials (SBOM) found in the analysis
1313
+
1314
+
1315
+ :param analysis_id: (required)
1316
+ :type analysis_id: int
1317
+ :param authorization: API Key bearer token
1318
+ :type authorization: str
1319
+ :param _request_timeout: timeout setting for this request. If one
1320
+ number provided, it will be total request
1321
+ timeout. It can also be a pair (tuple) of
1322
+ (connection, read) timeouts.
1323
+ :type _request_timeout: int, tuple(int, int), optional
1324
+ :param _request_auth: set to override the auth_settings for an a single
1325
+ request; this effectively ignores the
1326
+ authentication in the spec for a single request.
1327
+ :type _request_auth: dict, optional
1328
+ :param _content_type: force content-type for the request.
1329
+ :type _content_type: str, Optional
1330
+ :param _headers: set to override the headers for a single
1331
+ request; this effectively ignores the headers
1332
+ in the spec for a single request.
1333
+ :type _headers: dict, optional
1334
+ :param _host_index: set to override the host_index for a single
1335
+ request; this effectively ignores the host_index
1336
+ in the spec for a single request.
1337
+ :type _host_index: int, optional
1338
+ :return: Returns the result object.
1339
+ """ # noqa: E501
1340
+
1341
+ _param = self._get_sbom_serialize(
1342
+ analysis_id=analysis_id,
1343
+ authorization=authorization,
1344
+ _request_auth=_request_auth,
1345
+ _content_type=_content_type,
1346
+ _headers=_headers,
1347
+ _host_index=_host_index
1348
+ )
1349
+
1350
+ _response_types_map: Dict[str, Optional[str]] = {
1351
+ '200': "BaseResponseListSBOM",
1352
+ '422': "BaseResponse",
1353
+ }
1354
+ response_data = self.api_client.call_api(
1355
+ *_param,
1356
+ _request_timeout=_request_timeout
1357
+ )
1358
+ response_data.read()
1359
+ return self.api_client.response_deserialize(
1360
+ response_data=response_data,
1361
+ response_types_map=_response_types_map,
1362
+ )
1363
+
1364
+
1365
+ @validate_call
1366
+ def get_sbom_without_preload_content(
1367
+ self,
1368
+ analysis_id: StrictInt,
1369
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1370
+ _request_timeout: Union[
1371
+ None,
1372
+ Annotated[StrictFloat, Field(gt=0)],
1373
+ Tuple[
1374
+ Annotated[StrictFloat, Field(gt=0)],
1375
+ Annotated[StrictFloat, Field(gt=0)]
1376
+ ]
1377
+ ] = None,
1378
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1379
+ _content_type: Optional[StrictStr] = None,
1380
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1381
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1382
+ ) -> RESTResponseType:
1383
+ """Gets the software-bill-of-materials (SBOM) found in the analysis
1384
+
1385
+
1386
+ :param analysis_id: (required)
1387
+ :type analysis_id: int
1388
+ :param authorization: API Key bearer token
1389
+ :type authorization: str
1390
+ :param _request_timeout: timeout setting for this request. If one
1391
+ number provided, it will be total request
1392
+ timeout. It can also be a pair (tuple) of
1393
+ (connection, read) timeouts.
1394
+ :type _request_timeout: int, tuple(int, int), optional
1395
+ :param _request_auth: set to override the auth_settings for an a single
1396
+ request; this effectively ignores the
1397
+ authentication in the spec for a single request.
1398
+ :type _request_auth: dict, optional
1399
+ :param _content_type: force content-type for the request.
1400
+ :type _content_type: str, Optional
1401
+ :param _headers: set to override the headers for a single
1402
+ request; this effectively ignores the headers
1403
+ in the spec for a single request.
1404
+ :type _headers: dict, optional
1405
+ :param _host_index: set to override the host_index for a single
1406
+ request; this effectively ignores the host_index
1407
+ in the spec for a single request.
1408
+ :type _host_index: int, optional
1409
+ :return: Returns the result object.
1410
+ """ # noqa: E501
1411
+
1412
+ _param = self._get_sbom_serialize(
1413
+ analysis_id=analysis_id,
1414
+ authorization=authorization,
1415
+ _request_auth=_request_auth,
1416
+ _content_type=_content_type,
1417
+ _headers=_headers,
1418
+ _host_index=_host_index
1419
+ )
1420
+
1421
+ _response_types_map: Dict[str, Optional[str]] = {
1422
+ '200': "BaseResponseListSBOM",
1423
+ '422': "BaseResponse",
1424
+ }
1425
+ response_data = self.api_client.call_api(
1426
+ *_param,
1427
+ _request_timeout=_request_timeout
1428
+ )
1429
+ return response_data.response
1430
+
1431
+
1432
+ def _get_sbom_serialize(
1433
+ self,
1434
+ analysis_id,
1435
+ authorization,
1436
+ _request_auth,
1437
+ _content_type,
1438
+ _headers,
1439
+ _host_index,
1440
+ ) -> RequestSerialized:
1441
+
1442
+ _host = None
1443
+
1444
+ _collection_formats: Dict[str, str] = {
1445
+ }
1446
+
1447
+ _path_params: Dict[str, str] = {}
1448
+ _query_params: List[Tuple[str, str]] = []
1449
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1450
+ _form_params: List[Tuple[str, str]] = []
1451
+ _files: Dict[
1452
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1453
+ ] = {}
1454
+ _body_params: Optional[bytes] = None
1455
+
1456
+ # process the path parameters
1457
+ if analysis_id is not None:
1458
+ _path_params['analysis_id'] = analysis_id
1459
+ # process the query parameters
1460
+ # process the header parameters
1461
+ if authorization is not None:
1462
+ _header_params['authorization'] = authorization
1463
+ # process the form parameters
1464
+ # process the body parameter
1465
+
1466
+
1467
+ # set the HTTP header `Accept`
1468
+ if 'Accept' not in _header_params:
1469
+ _header_params['Accept'] = self.api_client.select_header_accept(
1470
+ [
1471
+ 'application/json'
1472
+ ]
1473
+ )
1474
+
1475
+
1476
+ # authentication setting
1477
+ _auth_settings: List[str] = [
1478
+ 'APIKey'
1479
+ ]
1480
+
1481
+ return self.api_client.param_serialize(
1482
+ method='GET',
1483
+ resource_path='/v2/analyses/{analysis_id}/sbom',
1484
+ path_params=_path_params,
1485
+ query_params=_query_params,
1486
+ header_params=_header_params,
1487
+ body=_body_params,
1488
+ post_params=_form_params,
1489
+ files=_files,
1490
+ auth_settings=_auth_settings,
1491
+ collection_formats=_collection_formats,
1492
+ _host=_host,
1493
+ _request_auth=_request_auth
1494
+ )
1495
+
1496
+
1497
+
1498
+
1499
+ @validate_call
1500
+ def get_tags(
1501
+ self,
1502
+ analysis_id: StrictInt,
1503
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1504
+ _request_timeout: Union[
1505
+ None,
1506
+ Annotated[StrictFloat, Field(gt=0)],
1507
+ Tuple[
1508
+ Annotated[StrictFloat, Field(gt=0)],
1509
+ Annotated[StrictFloat, Field(gt=0)]
1510
+ ]
1511
+ ] = None,
1512
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1513
+ _content_type: Optional[StrictStr] = None,
1514
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1515
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1516
+ ) -> AppCoreResponsesBaseBaseResponseAnalysisTags2:
1517
+ """Get function tags with maliciousness score
1518
+
1519
+
1520
+ :param analysis_id: (required)
1521
+ :type analysis_id: int
1522
+ :param authorization: API Key bearer token
1523
+ :type authorization: str
1524
+ :param _request_timeout: timeout setting for this request. If one
1525
+ number provided, it will be total request
1526
+ timeout. It can also be a pair (tuple) of
1527
+ (connection, read) timeouts.
1528
+ :type _request_timeout: int, tuple(int, int), optional
1529
+ :param _request_auth: set to override the auth_settings for an a single
1530
+ request; this effectively ignores the
1531
+ authentication in the spec for a single request.
1532
+ :type _request_auth: dict, optional
1533
+ :param _content_type: force content-type for the request.
1534
+ :type _content_type: str, Optional
1535
+ :param _headers: set to override the headers for a single
1536
+ request; this effectively ignores the headers
1537
+ in the spec for a single request.
1538
+ :type _headers: dict, optional
1539
+ :param _host_index: set to override the host_index for a single
1540
+ request; this effectively ignores the host_index
1541
+ in the spec for a single request.
1542
+ :type _host_index: int, optional
1543
+ :return: Returns the result object.
1544
+ """ # noqa: E501
1545
+
1546
+ _param = self._get_tags_serialize(
1547
+ analysis_id=analysis_id,
1548
+ authorization=authorization,
1549
+ _request_auth=_request_auth,
1550
+ _content_type=_content_type,
1551
+ _headers=_headers,
1552
+ _host_index=_host_index
1553
+ )
1554
+
1555
+ _response_types_map: Dict[str, Optional[str]] = {
1556
+ '200': "AppCoreResponsesBaseBaseResponseAnalysisTags2",
1557
+ '422': "BaseResponse",
1558
+ }
1559
+ response_data = self.api_client.call_api(
1560
+ *_param,
1561
+ _request_timeout=_request_timeout
1562
+ )
1563
+ response_data.read()
1564
+ return self.api_client.response_deserialize(
1565
+ response_data=response_data,
1566
+ response_types_map=_response_types_map,
1567
+ ).data
1568
+
1569
+
1570
+ @validate_call
1571
+ def get_tags_with_http_info(
1572
+ self,
1573
+ analysis_id: StrictInt,
1574
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1575
+ _request_timeout: Union[
1576
+ None,
1577
+ Annotated[StrictFloat, Field(gt=0)],
1578
+ Tuple[
1579
+ Annotated[StrictFloat, Field(gt=0)],
1580
+ Annotated[StrictFloat, Field(gt=0)]
1581
+ ]
1582
+ ] = None,
1583
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1584
+ _content_type: Optional[StrictStr] = None,
1585
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1586
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1587
+ ) -> ApiResponse[AppCoreResponsesBaseBaseResponseAnalysisTags2]:
1588
+ """Get function tags with maliciousness score
1589
+
1590
+
1591
+ :param analysis_id: (required)
1592
+ :type analysis_id: int
1593
+ :param authorization: API Key bearer token
1594
+ :type authorization: str
1595
+ :param _request_timeout: timeout setting for this request. If one
1596
+ number provided, it will be total request
1597
+ timeout. It can also be a pair (tuple) of
1598
+ (connection, read) timeouts.
1599
+ :type _request_timeout: int, tuple(int, int), optional
1600
+ :param _request_auth: set to override the auth_settings for an a single
1601
+ request; this effectively ignores the
1602
+ authentication in the spec for a single request.
1603
+ :type _request_auth: dict, optional
1604
+ :param _content_type: force content-type for the request.
1605
+ :type _content_type: str, Optional
1606
+ :param _headers: set to override the headers for a single
1607
+ request; this effectively ignores the headers
1608
+ in the spec for a single request.
1609
+ :type _headers: dict, optional
1610
+ :param _host_index: set to override the host_index for a single
1611
+ request; this effectively ignores the host_index
1612
+ in the spec for a single request.
1613
+ :type _host_index: int, optional
1614
+ :return: Returns the result object.
1615
+ """ # noqa: E501
1616
+
1617
+ _param = self._get_tags_serialize(
1618
+ analysis_id=analysis_id,
1619
+ authorization=authorization,
1620
+ _request_auth=_request_auth,
1621
+ _content_type=_content_type,
1622
+ _headers=_headers,
1623
+ _host_index=_host_index
1624
+ )
1625
+
1626
+ _response_types_map: Dict[str, Optional[str]] = {
1627
+ '200': "AppCoreResponsesBaseBaseResponseAnalysisTags2",
1628
+ '422': "BaseResponse",
1629
+ }
1630
+ response_data = self.api_client.call_api(
1631
+ *_param,
1632
+ _request_timeout=_request_timeout
1633
+ )
1634
+ response_data.read()
1635
+ return self.api_client.response_deserialize(
1636
+ response_data=response_data,
1637
+ response_types_map=_response_types_map,
1638
+ )
1639
+
1640
+
1641
+ @validate_call
1642
+ def get_tags_without_preload_content(
1643
+ self,
1644
+ analysis_id: StrictInt,
1645
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1646
+ _request_timeout: Union[
1647
+ None,
1648
+ Annotated[StrictFloat, Field(gt=0)],
1649
+ Tuple[
1650
+ Annotated[StrictFloat, Field(gt=0)],
1651
+ Annotated[StrictFloat, Field(gt=0)]
1652
+ ]
1653
+ ] = None,
1654
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1655
+ _content_type: Optional[StrictStr] = None,
1656
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1657
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1658
+ ) -> RESTResponseType:
1659
+ """Get function tags with maliciousness score
1660
+
1661
+
1662
+ :param analysis_id: (required)
1663
+ :type analysis_id: int
1664
+ :param authorization: API Key bearer token
1665
+ :type authorization: str
1666
+ :param _request_timeout: timeout setting for this request. If one
1667
+ number provided, it will be total request
1668
+ timeout. It can also be a pair (tuple) of
1669
+ (connection, read) timeouts.
1670
+ :type _request_timeout: int, tuple(int, int), optional
1671
+ :param _request_auth: set to override the auth_settings for an a single
1672
+ request; this effectively ignores the
1673
+ authentication in the spec for a single request.
1674
+ :type _request_auth: dict, optional
1675
+ :param _content_type: force content-type for the request.
1676
+ :type _content_type: str, Optional
1677
+ :param _headers: set to override the headers for a single
1678
+ request; this effectively ignores the headers
1679
+ in the spec for a single request.
1680
+ :type _headers: dict, optional
1681
+ :param _host_index: set to override the host_index for a single
1682
+ request; this effectively ignores the host_index
1683
+ in the spec for a single request.
1684
+ :type _host_index: int, optional
1685
+ :return: Returns the result object.
1686
+ """ # noqa: E501
1687
+
1688
+ _param = self._get_tags_serialize(
1689
+ analysis_id=analysis_id,
1690
+ authorization=authorization,
1691
+ _request_auth=_request_auth,
1692
+ _content_type=_content_type,
1693
+ _headers=_headers,
1694
+ _host_index=_host_index
1695
+ )
1696
+
1697
+ _response_types_map: Dict[str, Optional[str]] = {
1698
+ '200': "AppCoreResponsesBaseBaseResponseAnalysisTags2",
1699
+ '422': "BaseResponse",
1700
+ }
1701
+ response_data = self.api_client.call_api(
1702
+ *_param,
1703
+ _request_timeout=_request_timeout
1704
+ )
1705
+ return response_data.response
1706
+
1707
+
1708
+ def _get_tags_serialize(
1709
+ self,
1710
+ analysis_id,
1711
+ authorization,
1712
+ _request_auth,
1713
+ _content_type,
1714
+ _headers,
1715
+ _host_index,
1716
+ ) -> RequestSerialized:
1717
+
1718
+ _host = None
1719
+
1720
+ _collection_formats: Dict[str, str] = {
1721
+ }
1722
+
1723
+ _path_params: Dict[str, str] = {}
1724
+ _query_params: List[Tuple[str, str]] = []
1725
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1726
+ _form_params: List[Tuple[str, str]] = []
1727
+ _files: Dict[
1728
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1729
+ ] = {}
1730
+ _body_params: Optional[bytes] = None
1731
+
1732
+ # process the path parameters
1733
+ if analysis_id is not None:
1734
+ _path_params['analysis_id'] = analysis_id
1735
+ # process the query parameters
1736
+ # process the header parameters
1737
+ if authorization is not None:
1738
+ _header_params['authorization'] = authorization
1739
+ # process the form parameters
1740
+ # process the body parameter
1741
+
1742
+
1743
+ # set the HTTP header `Accept`
1744
+ if 'Accept' not in _header_params:
1745
+ _header_params['Accept'] = self.api_client.select_header_accept(
1746
+ [
1747
+ 'application/json'
1748
+ ]
1749
+ )
1750
+
1751
+
1752
+ # authentication setting
1753
+ _auth_settings: List[str] = [
1754
+ 'APIKey'
1755
+ ]
1756
+
1757
+ return self.api_client.param_serialize(
1758
+ method='GET',
1759
+ resource_path='/v2/analyses/{analysis_id}/tags',
1760
+ path_params=_path_params,
1761
+ query_params=_query_params,
1762
+ header_params=_header_params,
1763
+ body=_body_params,
1764
+ post_params=_form_params,
1765
+ files=_files,
1766
+ auth_settings=_auth_settings,
1767
+ collection_formats=_collection_formats,
1768
+ _host=_host,
1769
+ _request_auth=_request_auth
1770
+ )
1771
+
1772
+
1773
+
1774
+
1775
+ @validate_call
1776
+ def get_threat_score(
1777
+ self,
1778
+ analysis_id: StrictInt,
1779
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1780
+ _request_timeout: Union[
1781
+ None,
1782
+ Annotated[StrictFloat, Field(gt=0)],
1783
+ Tuple[
1784
+ Annotated[StrictFloat, Field(gt=0)],
1785
+ Annotated[StrictFloat, Field(gt=0)]
1786
+ ]
1787
+ ] = None,
1788
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1789
+ _content_type: Optional[StrictStr] = None,
1790
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1791
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1792
+ ) -> BaseResponseAnalysisThreatScoreData:
1793
+ """Gets the threat score found in the analysis
1794
+
1795
+
1796
+ :param analysis_id: (required)
1797
+ :type analysis_id: int
1798
+ :param authorization: API Key bearer token
1799
+ :type authorization: str
1800
+ :param _request_timeout: timeout setting for this request. If one
1801
+ number provided, it will be total request
1802
+ timeout. It can also be a pair (tuple) of
1803
+ (connection, read) timeouts.
1804
+ :type _request_timeout: int, tuple(int, int), optional
1805
+ :param _request_auth: set to override the auth_settings for an a single
1806
+ request; this effectively ignores the
1807
+ authentication in the spec for a single request.
1808
+ :type _request_auth: dict, optional
1809
+ :param _content_type: force content-type for the request.
1810
+ :type _content_type: str, Optional
1811
+ :param _headers: set to override the headers for a single
1812
+ request; this effectively ignores the headers
1813
+ in the spec for a single request.
1814
+ :type _headers: dict, optional
1815
+ :param _host_index: set to override the host_index for a single
1816
+ request; this effectively ignores the host_index
1817
+ in the spec for a single request.
1818
+ :type _host_index: int, optional
1819
+ :return: Returns the result object.
1820
+ """ # noqa: E501
1821
+
1822
+ _param = self._get_threat_score_serialize(
1823
+ analysis_id=analysis_id,
1824
+ authorization=authorization,
1825
+ _request_auth=_request_auth,
1826
+ _content_type=_content_type,
1827
+ _headers=_headers,
1828
+ _host_index=_host_index
1829
+ )
1830
+
1831
+ _response_types_map: Dict[str, Optional[str]] = {
1832
+ '200': "BaseResponseAnalysisThreatScoreData",
1833
+ '422': "BaseResponse",
1834
+ }
1835
+ response_data = self.api_client.call_api(
1836
+ *_param,
1837
+ _request_timeout=_request_timeout
1838
+ )
1839
+ response_data.read()
1840
+ return self.api_client.response_deserialize(
1841
+ response_data=response_data,
1842
+ response_types_map=_response_types_map,
1843
+ ).data
1844
+
1845
+
1846
+ @validate_call
1847
+ def get_threat_score_with_http_info(
1848
+ self,
1849
+ analysis_id: StrictInt,
1850
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1851
+ _request_timeout: Union[
1852
+ None,
1853
+ Annotated[StrictFloat, Field(gt=0)],
1854
+ Tuple[
1855
+ Annotated[StrictFloat, Field(gt=0)],
1856
+ Annotated[StrictFloat, Field(gt=0)]
1857
+ ]
1858
+ ] = None,
1859
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1860
+ _content_type: Optional[StrictStr] = None,
1861
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1862
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1863
+ ) -> ApiResponse[BaseResponseAnalysisThreatScoreData]:
1864
+ """Gets the threat score found in the analysis
1865
+
1866
+
1867
+ :param analysis_id: (required)
1868
+ :type analysis_id: int
1869
+ :param authorization: API Key bearer token
1870
+ :type authorization: str
1871
+ :param _request_timeout: timeout setting for this request. If one
1872
+ number provided, it will be total request
1873
+ timeout. It can also be a pair (tuple) of
1874
+ (connection, read) timeouts.
1875
+ :type _request_timeout: int, tuple(int, int), optional
1876
+ :param _request_auth: set to override the auth_settings for an a single
1877
+ request; this effectively ignores the
1878
+ authentication in the spec for a single request.
1879
+ :type _request_auth: dict, optional
1880
+ :param _content_type: force content-type for the request.
1881
+ :type _content_type: str, Optional
1882
+ :param _headers: set to override the headers for a single
1883
+ request; this effectively ignores the headers
1884
+ in the spec for a single request.
1885
+ :type _headers: dict, optional
1886
+ :param _host_index: set to override the host_index for a single
1887
+ request; this effectively ignores the host_index
1888
+ in the spec for a single request.
1889
+ :type _host_index: int, optional
1890
+ :return: Returns the result object.
1891
+ """ # noqa: E501
1892
+
1893
+ _param = self._get_threat_score_serialize(
1894
+ analysis_id=analysis_id,
1895
+ authorization=authorization,
1896
+ _request_auth=_request_auth,
1897
+ _content_type=_content_type,
1898
+ _headers=_headers,
1899
+ _host_index=_host_index
1900
+ )
1901
+
1902
+ _response_types_map: Dict[str, Optional[str]] = {
1903
+ '200': "BaseResponseAnalysisThreatScoreData",
1904
+ '422': "BaseResponse",
1905
+ }
1906
+ response_data = self.api_client.call_api(
1907
+ *_param,
1908
+ _request_timeout=_request_timeout
1909
+ )
1910
+ response_data.read()
1911
+ return self.api_client.response_deserialize(
1912
+ response_data=response_data,
1913
+ response_types_map=_response_types_map,
1914
+ )
1915
+
1916
+
1917
+ @validate_call
1918
+ def get_threat_score_without_preload_content(
1919
+ self,
1920
+ analysis_id: StrictInt,
1921
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1922
+ _request_timeout: Union[
1923
+ None,
1924
+ Annotated[StrictFloat, Field(gt=0)],
1925
+ Tuple[
1926
+ Annotated[StrictFloat, Field(gt=0)],
1927
+ Annotated[StrictFloat, Field(gt=0)]
1928
+ ]
1929
+ ] = None,
1930
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1931
+ _content_type: Optional[StrictStr] = None,
1932
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1933
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1934
+ ) -> RESTResponseType:
1935
+ """Gets the threat score found in the analysis
1936
+
1937
+
1938
+ :param analysis_id: (required)
1939
+ :type analysis_id: int
1940
+ :param authorization: API Key bearer token
1941
+ :type authorization: str
1942
+ :param _request_timeout: timeout setting for this request. If one
1943
+ number provided, it will be total request
1944
+ timeout. It can also be a pair (tuple) of
1945
+ (connection, read) timeouts.
1946
+ :type _request_timeout: int, tuple(int, int), optional
1947
+ :param _request_auth: set to override the auth_settings for an a single
1948
+ request; this effectively ignores the
1949
+ authentication in the spec for a single request.
1950
+ :type _request_auth: dict, optional
1951
+ :param _content_type: force content-type for the request.
1952
+ :type _content_type: str, Optional
1953
+ :param _headers: set to override the headers for a single
1954
+ request; this effectively ignores the headers
1955
+ in the spec for a single request.
1956
+ :type _headers: dict, optional
1957
+ :param _host_index: set to override the host_index for a single
1958
+ request; this effectively ignores the host_index
1959
+ in the spec for a single request.
1960
+ :type _host_index: int, optional
1961
+ :return: Returns the result object.
1962
+ """ # noqa: E501
1963
+
1964
+ _param = self._get_threat_score_serialize(
1965
+ analysis_id=analysis_id,
1966
+ authorization=authorization,
1967
+ _request_auth=_request_auth,
1968
+ _content_type=_content_type,
1969
+ _headers=_headers,
1970
+ _host_index=_host_index
1971
+ )
1972
+
1973
+ _response_types_map: Dict[str, Optional[str]] = {
1974
+ '200': "BaseResponseAnalysisThreatScoreData",
1975
+ '422': "BaseResponse",
1976
+ }
1977
+ response_data = self.api_client.call_api(
1978
+ *_param,
1979
+ _request_timeout=_request_timeout
1980
+ )
1981
+ return response_data.response
1982
+
1983
+
1984
+ def _get_threat_score_serialize(
1985
+ self,
1986
+ analysis_id,
1987
+ authorization,
1988
+ _request_auth,
1989
+ _content_type,
1990
+ _headers,
1991
+ _host_index,
1992
+ ) -> RequestSerialized:
1993
+
1994
+ _host = None
1995
+
1996
+ _collection_formats: Dict[str, str] = {
1997
+ }
1998
+
1999
+ _path_params: Dict[str, str] = {}
2000
+ _query_params: List[Tuple[str, str]] = []
2001
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2002
+ _form_params: List[Tuple[str, str]] = []
2003
+ _files: Dict[
2004
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
2005
+ ] = {}
2006
+ _body_params: Optional[bytes] = None
2007
+
2008
+ # process the path parameters
2009
+ if analysis_id is not None:
2010
+ _path_params['analysis_id'] = analysis_id
2011
+ # process the query parameters
2012
+ # process the header parameters
2013
+ if authorization is not None:
2014
+ _header_params['authorization'] = authorization
2015
+ # process the form parameters
2016
+ # process the body parameter
2017
+
2018
+
2019
+ # set the HTTP header `Accept`
2020
+ if 'Accept' not in _header_params:
2021
+ _header_params['Accept'] = self.api_client.select_header_accept(
2022
+ [
2023
+ 'application/json'
2024
+ ]
2025
+ )
2026
+
2027
+
2028
+ # authentication setting
2029
+ _auth_settings: List[str] = [
2030
+ 'APIKey'
2031
+ ]
2032
+
2033
+ return self.api_client.param_serialize(
2034
+ method='GET',
2035
+ resource_path='/v2/analyses/{analysis_id}/threat_score',
2036
+ path_params=_path_params,
2037
+ query_params=_query_params,
2038
+ header_params=_header_params,
2039
+ body=_body_params,
2040
+ post_params=_form_params,
2041
+ files=_files,
2042
+ auth_settings=_auth_settings,
2043
+ collection_formats=_collection_formats,
2044
+ _host=_host,
2045
+ _request_auth=_request_auth
2046
+ )
2047
+
2048
+
2049
+
2050
+
2051
+ @validate_call
2052
+ def get_vulnerabilities(
2053
+ self,
2054
+ analysis_id: StrictInt,
2055
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
2056
+ _request_timeout: Union[
2057
+ None,
2058
+ Annotated[StrictFloat, Field(gt=0)],
2059
+ Tuple[
2060
+ Annotated[StrictFloat, Field(gt=0)],
2061
+ Annotated[StrictFloat, Field(gt=0)]
2062
+ ]
2063
+ ] = None,
2064
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2065
+ _content_type: Optional[StrictStr] = None,
2066
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2067
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2068
+ ) -> BaseResponseVulnerabilities:
2069
+ """Gets the vulnerabilities found in the analysis
2070
+
2071
+
2072
+ :param analysis_id: (required)
2073
+ :type analysis_id: int
2074
+ :param authorization: API Key bearer token
2075
+ :type authorization: str
2076
+ :param _request_timeout: timeout setting for this request. If one
2077
+ number provided, it will be total request
2078
+ timeout. It can also be a pair (tuple) of
2079
+ (connection, read) timeouts.
2080
+ :type _request_timeout: int, tuple(int, int), optional
2081
+ :param _request_auth: set to override the auth_settings for an a single
2082
+ request; this effectively ignores the
2083
+ authentication in the spec for a single request.
2084
+ :type _request_auth: dict, optional
2085
+ :param _content_type: force content-type for the request.
2086
+ :type _content_type: str, Optional
2087
+ :param _headers: set to override the headers for a single
2088
+ request; this effectively ignores the headers
2089
+ in the spec for a single request.
2090
+ :type _headers: dict, optional
2091
+ :param _host_index: set to override the host_index for a single
2092
+ request; this effectively ignores the host_index
2093
+ in the spec for a single request.
2094
+ :type _host_index: int, optional
2095
+ :return: Returns the result object.
2096
+ """ # noqa: E501
2097
+
2098
+ _param = self._get_vulnerabilities_serialize(
2099
+ analysis_id=analysis_id,
2100
+ authorization=authorization,
2101
+ _request_auth=_request_auth,
2102
+ _content_type=_content_type,
2103
+ _headers=_headers,
2104
+ _host_index=_host_index
2105
+ )
2106
+
2107
+ _response_types_map: Dict[str, Optional[str]] = {
2108
+ '200': "BaseResponseVulnerabilities",
2109
+ '422': "BaseResponse",
2110
+ }
2111
+ response_data = self.api_client.call_api(
2112
+ *_param,
2113
+ _request_timeout=_request_timeout
2114
+ )
2115
+ response_data.read()
2116
+ return self.api_client.response_deserialize(
2117
+ response_data=response_data,
2118
+ response_types_map=_response_types_map,
2119
+ ).data
2120
+
2121
+
2122
+ @validate_call
2123
+ def get_vulnerabilities_with_http_info(
2124
+ self,
2125
+ analysis_id: StrictInt,
2126
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
2127
+ _request_timeout: Union[
2128
+ None,
2129
+ Annotated[StrictFloat, Field(gt=0)],
2130
+ Tuple[
2131
+ Annotated[StrictFloat, Field(gt=0)],
2132
+ Annotated[StrictFloat, Field(gt=0)]
2133
+ ]
2134
+ ] = None,
2135
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2136
+ _content_type: Optional[StrictStr] = None,
2137
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2138
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2139
+ ) -> ApiResponse[BaseResponseVulnerabilities]:
2140
+ """Gets the vulnerabilities found in the analysis
2141
+
2142
+
2143
+ :param analysis_id: (required)
2144
+ :type analysis_id: int
2145
+ :param authorization: API Key bearer token
2146
+ :type authorization: str
2147
+ :param _request_timeout: timeout setting for this request. If one
2148
+ number provided, it will be total request
2149
+ timeout. It can also be a pair (tuple) of
2150
+ (connection, read) timeouts.
2151
+ :type _request_timeout: int, tuple(int, int), optional
2152
+ :param _request_auth: set to override the auth_settings for an a single
2153
+ request; this effectively ignores the
2154
+ authentication in the spec for a single request.
2155
+ :type _request_auth: dict, optional
2156
+ :param _content_type: force content-type for the request.
2157
+ :type _content_type: str, Optional
2158
+ :param _headers: set to override the headers for a single
2159
+ request; this effectively ignores the headers
2160
+ in the spec for a single request.
2161
+ :type _headers: dict, optional
2162
+ :param _host_index: set to override the host_index for a single
2163
+ request; this effectively ignores the host_index
2164
+ in the spec for a single request.
2165
+ :type _host_index: int, optional
2166
+ :return: Returns the result object.
2167
+ """ # noqa: E501
2168
+
2169
+ _param = self._get_vulnerabilities_serialize(
2170
+ analysis_id=analysis_id,
2171
+ authorization=authorization,
2172
+ _request_auth=_request_auth,
2173
+ _content_type=_content_type,
2174
+ _headers=_headers,
2175
+ _host_index=_host_index
2176
+ )
2177
+
2178
+ _response_types_map: Dict[str, Optional[str]] = {
2179
+ '200': "BaseResponseVulnerabilities",
2180
+ '422': "BaseResponse",
2181
+ }
2182
+ response_data = self.api_client.call_api(
2183
+ *_param,
2184
+ _request_timeout=_request_timeout
2185
+ )
2186
+ response_data.read()
2187
+ return self.api_client.response_deserialize(
2188
+ response_data=response_data,
2189
+ response_types_map=_response_types_map,
2190
+ )
2191
+
2192
+
2193
+ @validate_call
2194
+ def get_vulnerabilities_without_preload_content(
2195
+ self,
2196
+ analysis_id: StrictInt,
2197
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
2198
+ _request_timeout: Union[
2199
+ None,
2200
+ Annotated[StrictFloat, Field(gt=0)],
2201
+ Tuple[
2202
+ Annotated[StrictFloat, Field(gt=0)],
2203
+ Annotated[StrictFloat, Field(gt=0)]
2204
+ ]
2205
+ ] = None,
2206
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2207
+ _content_type: Optional[StrictStr] = None,
2208
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2209
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2210
+ ) -> RESTResponseType:
2211
+ """Gets the vulnerabilities found in the analysis
2212
+
2213
+
2214
+ :param analysis_id: (required)
2215
+ :type analysis_id: int
2216
+ :param authorization: API Key bearer token
2217
+ :type authorization: str
2218
+ :param _request_timeout: timeout setting for this request. If one
2219
+ number provided, it will be total request
2220
+ timeout. It can also be a pair (tuple) of
2221
+ (connection, read) timeouts.
2222
+ :type _request_timeout: int, tuple(int, int), optional
2223
+ :param _request_auth: set to override the auth_settings for an a single
2224
+ request; this effectively ignores the
2225
+ authentication in the spec for a single request.
2226
+ :type _request_auth: dict, optional
2227
+ :param _content_type: force content-type for the request.
2228
+ :type _content_type: str, Optional
2229
+ :param _headers: set to override the headers for a single
2230
+ request; this effectively ignores the headers
2231
+ in the spec for a single request.
2232
+ :type _headers: dict, optional
2233
+ :param _host_index: set to override the host_index for a single
2234
+ request; this effectively ignores the host_index
2235
+ in the spec for a single request.
2236
+ :type _host_index: int, optional
2237
+ :return: Returns the result object.
2238
+ """ # noqa: E501
2239
+
2240
+ _param = self._get_vulnerabilities_serialize(
2241
+ analysis_id=analysis_id,
2242
+ authorization=authorization,
2243
+ _request_auth=_request_auth,
2244
+ _content_type=_content_type,
2245
+ _headers=_headers,
2246
+ _host_index=_host_index
2247
+ )
2248
+
2249
+ _response_types_map: Dict[str, Optional[str]] = {
2250
+ '200': "BaseResponseVulnerabilities",
2251
+ '422': "BaseResponse",
2252
+ }
2253
+ response_data = self.api_client.call_api(
2254
+ *_param,
2255
+ _request_timeout=_request_timeout
2256
+ )
2257
+ return response_data.response
2258
+
2259
+
2260
+ def _get_vulnerabilities_serialize(
2261
+ self,
2262
+ analysis_id,
2263
+ authorization,
2264
+ _request_auth,
2265
+ _content_type,
2266
+ _headers,
2267
+ _host_index,
2268
+ ) -> RequestSerialized:
2269
+
2270
+ _host = None
2271
+
2272
+ _collection_formats: Dict[str, str] = {
2273
+ }
2274
+
2275
+ _path_params: Dict[str, str] = {}
2276
+ _query_params: List[Tuple[str, str]] = []
2277
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2278
+ _form_params: List[Tuple[str, str]] = []
2279
+ _files: Dict[
2280
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
2281
+ ] = {}
2282
+ _body_params: Optional[bytes] = None
2283
+
2284
+ # process the path parameters
2285
+ if analysis_id is not None:
2286
+ _path_params['analysis_id'] = analysis_id
2287
+ # process the query parameters
2288
+ # process the header parameters
2289
+ if authorization is not None:
2290
+ _header_params['authorization'] = authorization
2291
+ # process the form parameters
2292
+ # process the body parameter
2293
+
2294
+
2295
+ # set the HTTP header `Accept`
2296
+ if 'Accept' not in _header_params:
2297
+ _header_params['Accept'] = self.api_client.select_header_accept(
2298
+ [
2299
+ 'application/json'
2300
+ ]
2301
+ )
2302
+
2303
+
2304
+ # authentication setting
2305
+ _auth_settings: List[str] = [
2306
+ 'APIKey'
2307
+ ]
2308
+
2309
+ return self.api_client.param_serialize(
2310
+ method='GET',
2311
+ resource_path='/v2/analyses/{analysis_id}/vulnerabilities',
2312
+ path_params=_path_params,
2313
+ query_params=_query_params,
2314
+ header_params=_header_params,
2315
+ body=_body_params,
2316
+ post_params=_form_params,
2317
+ files=_files,
2318
+ auth_settings=_auth_settings,
2319
+ collection_formats=_collection_formats,
2320
+ _host=_host,
2321
+ _request_auth=_request_auth
2322
+ )
2323
+
2324
+