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,1709 @@
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 Optional
21
+ from typing_extensions import Annotated
22
+ from revengai.models.base_response_external_response import BaseResponseExternalResponse
23
+ from revengai.models.base_response_str import BaseResponseStr
24
+ from revengai.models.base_response_task_response import BaseResponseTaskResponse
25
+
26
+ from revengai.api_client import ApiClient, RequestSerialized
27
+ from revengai.api_response import ApiResponse
28
+ from revengai.rest import RESTResponseType
29
+
30
+
31
+ class ExternalSourcesApi:
32
+ """NOTE: This class is auto generated by OpenAPI Generator
33
+ Ref: https://openapi-generator.tech
34
+
35
+ Do not edit the class manually.
36
+ """
37
+
38
+ def __init__(self, api_client=None) -> None:
39
+ if api_client is None:
40
+ api_client = ApiClient.get_default()
41
+ self.api_client = api_client
42
+
43
+
44
+ @validate_call
45
+ def create_external_task_mb(
46
+ self,
47
+ analysis_id: StrictInt,
48
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
49
+ _request_timeout: Union[
50
+ None,
51
+ Annotated[StrictFloat, Field(gt=0)],
52
+ Tuple[
53
+ Annotated[StrictFloat, Field(gt=0)],
54
+ Annotated[StrictFloat, Field(gt=0)]
55
+ ]
56
+ ] = None,
57
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
58
+ _content_type: Optional[StrictStr] = None,
59
+ _headers: Optional[Dict[StrictStr, Any]] = None,
60
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
61
+ ) -> BaseResponseStr:
62
+ """Pulls data from VirusTotal
63
+
64
+
65
+ :param analysis_id: (required)
66
+ :type analysis_id: int
67
+ :param authorization: API Key bearer token
68
+ :type authorization: str
69
+ :param _request_timeout: timeout setting for this request. If one
70
+ number provided, it will be total request
71
+ timeout. It can also be a pair (tuple) of
72
+ (connection, read) timeouts.
73
+ :type _request_timeout: int, tuple(int, int), optional
74
+ :param _request_auth: set to override the auth_settings for an a single
75
+ request; this effectively ignores the
76
+ authentication in the spec for a single request.
77
+ :type _request_auth: dict, optional
78
+ :param _content_type: force content-type for the request.
79
+ :type _content_type: str, Optional
80
+ :param _headers: set to override the headers for a single
81
+ request; this effectively ignores the headers
82
+ in the spec for a single request.
83
+ :type _headers: dict, optional
84
+ :param _host_index: set to override the host_index for a single
85
+ request; this effectively ignores the host_index
86
+ in the spec for a single request.
87
+ :type _host_index: int, optional
88
+ :return: Returns the result object.
89
+ """ # noqa: E501
90
+
91
+ _param = self._create_external_task_mb_serialize(
92
+ analysis_id=analysis_id,
93
+ authorization=authorization,
94
+ _request_auth=_request_auth,
95
+ _content_type=_content_type,
96
+ _headers=_headers,
97
+ _host_index=_host_index
98
+ )
99
+
100
+ _response_types_map: Dict[str, Optional[str]] = {
101
+ '202': "BaseResponseStr",
102
+ '422': "BaseResponse",
103
+ '409': "BaseResponse",
104
+ }
105
+ response_data = self.api_client.call_api(
106
+ *_param,
107
+ _request_timeout=_request_timeout
108
+ )
109
+ response_data.read()
110
+ return self.api_client.response_deserialize(
111
+ response_data=response_data,
112
+ response_types_map=_response_types_map,
113
+ ).data
114
+
115
+
116
+ @validate_call
117
+ def create_external_task_mb_with_http_info(
118
+ self,
119
+ analysis_id: StrictInt,
120
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
121
+ _request_timeout: Union[
122
+ None,
123
+ Annotated[StrictFloat, Field(gt=0)],
124
+ Tuple[
125
+ Annotated[StrictFloat, Field(gt=0)],
126
+ Annotated[StrictFloat, Field(gt=0)]
127
+ ]
128
+ ] = None,
129
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
130
+ _content_type: Optional[StrictStr] = None,
131
+ _headers: Optional[Dict[StrictStr, Any]] = None,
132
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
133
+ ) -> ApiResponse[BaseResponseStr]:
134
+ """Pulls data from VirusTotal
135
+
136
+
137
+ :param analysis_id: (required)
138
+ :type analysis_id: int
139
+ :param authorization: API Key bearer token
140
+ :type authorization: str
141
+ :param _request_timeout: timeout setting for this request. If one
142
+ number provided, it will be total request
143
+ timeout. It can also be a pair (tuple) of
144
+ (connection, read) timeouts.
145
+ :type _request_timeout: int, tuple(int, int), optional
146
+ :param _request_auth: set to override the auth_settings for an a single
147
+ request; this effectively ignores the
148
+ authentication in the spec for a single request.
149
+ :type _request_auth: dict, optional
150
+ :param _content_type: force content-type for the request.
151
+ :type _content_type: str, Optional
152
+ :param _headers: set to override the headers for a single
153
+ request; this effectively ignores the headers
154
+ in the spec for a single request.
155
+ :type _headers: dict, optional
156
+ :param _host_index: set to override the host_index for a single
157
+ request; this effectively ignores the host_index
158
+ in the spec for a single request.
159
+ :type _host_index: int, optional
160
+ :return: Returns the result object.
161
+ """ # noqa: E501
162
+
163
+ _param = self._create_external_task_mb_serialize(
164
+ analysis_id=analysis_id,
165
+ authorization=authorization,
166
+ _request_auth=_request_auth,
167
+ _content_type=_content_type,
168
+ _headers=_headers,
169
+ _host_index=_host_index
170
+ )
171
+
172
+ _response_types_map: Dict[str, Optional[str]] = {
173
+ '202': "BaseResponseStr",
174
+ '422': "BaseResponse",
175
+ '409': "BaseResponse",
176
+ }
177
+ response_data = self.api_client.call_api(
178
+ *_param,
179
+ _request_timeout=_request_timeout
180
+ )
181
+ response_data.read()
182
+ return self.api_client.response_deserialize(
183
+ response_data=response_data,
184
+ response_types_map=_response_types_map,
185
+ )
186
+
187
+
188
+ @validate_call
189
+ def create_external_task_mb_without_preload_content(
190
+ self,
191
+ analysis_id: StrictInt,
192
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
193
+ _request_timeout: Union[
194
+ None,
195
+ Annotated[StrictFloat, Field(gt=0)],
196
+ Tuple[
197
+ Annotated[StrictFloat, Field(gt=0)],
198
+ Annotated[StrictFloat, Field(gt=0)]
199
+ ]
200
+ ] = None,
201
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
202
+ _content_type: Optional[StrictStr] = None,
203
+ _headers: Optional[Dict[StrictStr, Any]] = None,
204
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
205
+ ) -> RESTResponseType:
206
+ """Pulls data from VirusTotal
207
+
208
+
209
+ :param analysis_id: (required)
210
+ :type analysis_id: int
211
+ :param authorization: API Key bearer token
212
+ :type authorization: str
213
+ :param _request_timeout: timeout setting for this request. If one
214
+ number provided, it will be total request
215
+ timeout. It can also be a pair (tuple) of
216
+ (connection, read) timeouts.
217
+ :type _request_timeout: int, tuple(int, int), optional
218
+ :param _request_auth: set to override the auth_settings for an a single
219
+ request; this effectively ignores the
220
+ authentication in the spec for a single request.
221
+ :type _request_auth: dict, optional
222
+ :param _content_type: force content-type for the request.
223
+ :type _content_type: str, Optional
224
+ :param _headers: set to override the headers for a single
225
+ request; this effectively ignores the headers
226
+ in the spec for a single request.
227
+ :type _headers: dict, optional
228
+ :param _host_index: set to override the host_index for a single
229
+ request; this effectively ignores the host_index
230
+ in the spec for a single request.
231
+ :type _host_index: int, optional
232
+ :return: Returns the result object.
233
+ """ # noqa: E501
234
+
235
+ _param = self._create_external_task_mb_serialize(
236
+ analysis_id=analysis_id,
237
+ authorization=authorization,
238
+ _request_auth=_request_auth,
239
+ _content_type=_content_type,
240
+ _headers=_headers,
241
+ _host_index=_host_index
242
+ )
243
+
244
+ _response_types_map: Dict[str, Optional[str]] = {
245
+ '202': "BaseResponseStr",
246
+ '422': "BaseResponse",
247
+ '409': "BaseResponse",
248
+ }
249
+ response_data = self.api_client.call_api(
250
+ *_param,
251
+ _request_timeout=_request_timeout
252
+ )
253
+ return response_data.response
254
+
255
+
256
+ def _create_external_task_mb_serialize(
257
+ self,
258
+ analysis_id,
259
+ authorization,
260
+ _request_auth,
261
+ _content_type,
262
+ _headers,
263
+ _host_index,
264
+ ) -> RequestSerialized:
265
+
266
+ _host = None
267
+
268
+ _collection_formats: Dict[str, str] = {
269
+ }
270
+
271
+ _path_params: Dict[str, str] = {}
272
+ _query_params: List[Tuple[str, str]] = []
273
+ _header_params: Dict[str, Optional[str]] = _headers or {}
274
+ _form_params: List[Tuple[str, str]] = []
275
+ _files: Dict[
276
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
277
+ ] = {}
278
+ _body_params: Optional[bytes] = None
279
+
280
+ # process the path parameters
281
+ if analysis_id is not None:
282
+ _path_params['analysis_id'] = analysis_id
283
+ # process the query parameters
284
+ # process the header parameters
285
+ if authorization is not None:
286
+ _header_params['authorization'] = authorization
287
+ # process the form parameters
288
+ # process the body parameter
289
+
290
+
291
+ # set the HTTP header `Accept`
292
+ if 'Accept' not in _header_params:
293
+ _header_params['Accept'] = self.api_client.select_header_accept(
294
+ [
295
+ 'application/json'
296
+ ]
297
+ )
298
+
299
+
300
+ # authentication setting
301
+ _auth_settings: List[str] = [
302
+ 'APIKey'
303
+ ]
304
+
305
+ return self.api_client.param_serialize(
306
+ method='POST',
307
+ resource_path='/v2/analysis/{analysis_id}/external/mb',
308
+ path_params=_path_params,
309
+ query_params=_query_params,
310
+ header_params=_header_params,
311
+ body=_body_params,
312
+ post_params=_form_params,
313
+ files=_files,
314
+ auth_settings=_auth_settings,
315
+ collection_formats=_collection_formats,
316
+ _host=_host,
317
+ _request_auth=_request_auth
318
+ )
319
+
320
+
321
+
322
+
323
+ @validate_call
324
+ def create_external_task_vt(
325
+ self,
326
+ analysis_id: StrictInt,
327
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
328
+ _request_timeout: Union[
329
+ None,
330
+ Annotated[StrictFloat, Field(gt=0)],
331
+ Tuple[
332
+ Annotated[StrictFloat, Field(gt=0)],
333
+ Annotated[StrictFloat, Field(gt=0)]
334
+ ]
335
+ ] = None,
336
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
337
+ _content_type: Optional[StrictStr] = None,
338
+ _headers: Optional[Dict[StrictStr, Any]] = None,
339
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
340
+ ) -> BaseResponseStr:
341
+ """Pulls data from VirusTotal
342
+
343
+
344
+ :param analysis_id: (required)
345
+ :type analysis_id: int
346
+ :param authorization: API Key bearer token
347
+ :type authorization: str
348
+ :param _request_timeout: timeout setting for this request. If one
349
+ number provided, it will be total request
350
+ timeout. It can also be a pair (tuple) of
351
+ (connection, read) timeouts.
352
+ :type _request_timeout: int, tuple(int, int), optional
353
+ :param _request_auth: set to override the auth_settings for an a single
354
+ request; this effectively ignores the
355
+ authentication in the spec for a single request.
356
+ :type _request_auth: dict, optional
357
+ :param _content_type: force content-type for the request.
358
+ :type _content_type: str, Optional
359
+ :param _headers: set to override the headers for a single
360
+ request; this effectively ignores the headers
361
+ in the spec for a single request.
362
+ :type _headers: dict, optional
363
+ :param _host_index: set to override the host_index for a single
364
+ request; this effectively ignores the host_index
365
+ in the spec for a single request.
366
+ :type _host_index: int, optional
367
+ :return: Returns the result object.
368
+ """ # noqa: E501
369
+
370
+ _param = self._create_external_task_vt_serialize(
371
+ analysis_id=analysis_id,
372
+ authorization=authorization,
373
+ _request_auth=_request_auth,
374
+ _content_type=_content_type,
375
+ _headers=_headers,
376
+ _host_index=_host_index
377
+ )
378
+
379
+ _response_types_map: Dict[str, Optional[str]] = {
380
+ '202': "BaseResponseStr",
381
+ '422': "BaseResponse",
382
+ '409': "BaseResponse",
383
+ }
384
+ response_data = self.api_client.call_api(
385
+ *_param,
386
+ _request_timeout=_request_timeout
387
+ )
388
+ response_data.read()
389
+ return self.api_client.response_deserialize(
390
+ response_data=response_data,
391
+ response_types_map=_response_types_map,
392
+ ).data
393
+
394
+
395
+ @validate_call
396
+ def create_external_task_vt_with_http_info(
397
+ self,
398
+ analysis_id: StrictInt,
399
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
400
+ _request_timeout: Union[
401
+ None,
402
+ Annotated[StrictFloat, Field(gt=0)],
403
+ Tuple[
404
+ Annotated[StrictFloat, Field(gt=0)],
405
+ Annotated[StrictFloat, Field(gt=0)]
406
+ ]
407
+ ] = None,
408
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
409
+ _content_type: Optional[StrictStr] = None,
410
+ _headers: Optional[Dict[StrictStr, Any]] = None,
411
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
412
+ ) -> ApiResponse[BaseResponseStr]:
413
+ """Pulls data from VirusTotal
414
+
415
+
416
+ :param analysis_id: (required)
417
+ :type analysis_id: int
418
+ :param authorization: API Key bearer token
419
+ :type authorization: str
420
+ :param _request_timeout: timeout setting for this request. If one
421
+ number provided, it will be total request
422
+ timeout. It can also be a pair (tuple) of
423
+ (connection, read) timeouts.
424
+ :type _request_timeout: int, tuple(int, int), optional
425
+ :param _request_auth: set to override the auth_settings for an a single
426
+ request; this effectively ignores the
427
+ authentication in the spec for a single request.
428
+ :type _request_auth: dict, optional
429
+ :param _content_type: force content-type for the request.
430
+ :type _content_type: str, Optional
431
+ :param _headers: set to override the headers for a single
432
+ request; this effectively ignores the headers
433
+ in the spec for a single request.
434
+ :type _headers: dict, optional
435
+ :param _host_index: set to override the host_index for a single
436
+ request; this effectively ignores the host_index
437
+ in the spec for a single request.
438
+ :type _host_index: int, optional
439
+ :return: Returns the result object.
440
+ """ # noqa: E501
441
+
442
+ _param = self._create_external_task_vt_serialize(
443
+ analysis_id=analysis_id,
444
+ authorization=authorization,
445
+ _request_auth=_request_auth,
446
+ _content_type=_content_type,
447
+ _headers=_headers,
448
+ _host_index=_host_index
449
+ )
450
+
451
+ _response_types_map: Dict[str, Optional[str]] = {
452
+ '202': "BaseResponseStr",
453
+ '422': "BaseResponse",
454
+ '409': "BaseResponse",
455
+ }
456
+ response_data = self.api_client.call_api(
457
+ *_param,
458
+ _request_timeout=_request_timeout
459
+ )
460
+ response_data.read()
461
+ return self.api_client.response_deserialize(
462
+ response_data=response_data,
463
+ response_types_map=_response_types_map,
464
+ )
465
+
466
+
467
+ @validate_call
468
+ def create_external_task_vt_without_preload_content(
469
+ self,
470
+ analysis_id: StrictInt,
471
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
472
+ _request_timeout: Union[
473
+ None,
474
+ Annotated[StrictFloat, Field(gt=0)],
475
+ Tuple[
476
+ Annotated[StrictFloat, Field(gt=0)],
477
+ Annotated[StrictFloat, Field(gt=0)]
478
+ ]
479
+ ] = None,
480
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
481
+ _content_type: Optional[StrictStr] = None,
482
+ _headers: Optional[Dict[StrictStr, Any]] = None,
483
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
484
+ ) -> RESTResponseType:
485
+ """Pulls data from VirusTotal
486
+
487
+
488
+ :param analysis_id: (required)
489
+ :type analysis_id: int
490
+ :param authorization: API Key bearer token
491
+ :type authorization: str
492
+ :param _request_timeout: timeout setting for this request. If one
493
+ number provided, it will be total request
494
+ timeout. It can also be a pair (tuple) of
495
+ (connection, read) timeouts.
496
+ :type _request_timeout: int, tuple(int, int), optional
497
+ :param _request_auth: set to override the auth_settings for an a single
498
+ request; this effectively ignores the
499
+ authentication in the spec for a single request.
500
+ :type _request_auth: dict, optional
501
+ :param _content_type: force content-type for the request.
502
+ :type _content_type: str, Optional
503
+ :param _headers: set to override the headers for a single
504
+ request; this effectively ignores the headers
505
+ in the spec for a single request.
506
+ :type _headers: dict, optional
507
+ :param _host_index: set to override the host_index for a single
508
+ request; this effectively ignores the host_index
509
+ in the spec for a single request.
510
+ :type _host_index: int, optional
511
+ :return: Returns the result object.
512
+ """ # noqa: E501
513
+
514
+ _param = self._create_external_task_vt_serialize(
515
+ analysis_id=analysis_id,
516
+ authorization=authorization,
517
+ _request_auth=_request_auth,
518
+ _content_type=_content_type,
519
+ _headers=_headers,
520
+ _host_index=_host_index
521
+ )
522
+
523
+ _response_types_map: Dict[str, Optional[str]] = {
524
+ '202': "BaseResponseStr",
525
+ '422': "BaseResponse",
526
+ '409': "BaseResponse",
527
+ }
528
+ response_data = self.api_client.call_api(
529
+ *_param,
530
+ _request_timeout=_request_timeout
531
+ )
532
+ return response_data.response
533
+
534
+
535
+ def _create_external_task_vt_serialize(
536
+ self,
537
+ analysis_id,
538
+ authorization,
539
+ _request_auth,
540
+ _content_type,
541
+ _headers,
542
+ _host_index,
543
+ ) -> RequestSerialized:
544
+
545
+ _host = None
546
+
547
+ _collection_formats: Dict[str, str] = {
548
+ }
549
+
550
+ _path_params: Dict[str, str] = {}
551
+ _query_params: List[Tuple[str, str]] = []
552
+ _header_params: Dict[str, Optional[str]] = _headers or {}
553
+ _form_params: List[Tuple[str, str]] = []
554
+ _files: Dict[
555
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
556
+ ] = {}
557
+ _body_params: Optional[bytes] = None
558
+
559
+ # process the path parameters
560
+ if analysis_id is not None:
561
+ _path_params['analysis_id'] = analysis_id
562
+ # process the query parameters
563
+ # process the header parameters
564
+ if authorization is not None:
565
+ _header_params['authorization'] = authorization
566
+ # process the form parameters
567
+ # process the body parameter
568
+
569
+
570
+ # set the HTTP header `Accept`
571
+ if 'Accept' not in _header_params:
572
+ _header_params['Accept'] = self.api_client.select_header_accept(
573
+ [
574
+ 'application/json'
575
+ ]
576
+ )
577
+
578
+
579
+ # authentication setting
580
+ _auth_settings: List[str] = [
581
+ 'APIKey'
582
+ ]
583
+
584
+ return self.api_client.param_serialize(
585
+ method='POST',
586
+ resource_path='/v2/analysis/{analysis_id}/external/vt',
587
+ path_params=_path_params,
588
+ query_params=_query_params,
589
+ header_params=_header_params,
590
+ body=_body_params,
591
+ post_params=_form_params,
592
+ files=_files,
593
+ auth_settings=_auth_settings,
594
+ collection_formats=_collection_formats,
595
+ _host=_host,
596
+ _request_auth=_request_auth
597
+ )
598
+
599
+
600
+
601
+
602
+ @validate_call
603
+ def get_mb_data(
604
+ self,
605
+ analysis_id: StrictInt,
606
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
607
+ _request_timeout: Union[
608
+ None,
609
+ Annotated[StrictFloat, Field(gt=0)],
610
+ Tuple[
611
+ Annotated[StrictFloat, Field(gt=0)],
612
+ Annotated[StrictFloat, Field(gt=0)]
613
+ ]
614
+ ] = None,
615
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
616
+ _content_type: Optional[StrictStr] = None,
617
+ _headers: Optional[Dict[StrictStr, Any]] = None,
618
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
619
+ ) -> BaseResponseExternalResponse:
620
+ """Get MalwareBazaar data
621
+
622
+
623
+ :param analysis_id: (required)
624
+ :type analysis_id: int
625
+ :param authorization: API Key bearer token
626
+ :type authorization: str
627
+ :param _request_timeout: timeout setting for this request. If one
628
+ number provided, it will be total request
629
+ timeout. It can also be a pair (tuple) of
630
+ (connection, read) timeouts.
631
+ :type _request_timeout: int, tuple(int, int), optional
632
+ :param _request_auth: set to override the auth_settings for an a single
633
+ request; this effectively ignores the
634
+ authentication in the spec for a single request.
635
+ :type _request_auth: dict, optional
636
+ :param _content_type: force content-type for the request.
637
+ :type _content_type: str, Optional
638
+ :param _headers: set to override the headers for a single
639
+ request; this effectively ignores the headers
640
+ in the spec for a single request.
641
+ :type _headers: dict, optional
642
+ :param _host_index: set to override the host_index for a single
643
+ request; this effectively ignores the host_index
644
+ in the spec for a single request.
645
+ :type _host_index: int, optional
646
+ :return: Returns the result object.
647
+ """ # noqa: E501
648
+
649
+ _param = self._get_mb_data_serialize(
650
+ analysis_id=analysis_id,
651
+ authorization=authorization,
652
+ _request_auth=_request_auth,
653
+ _content_type=_content_type,
654
+ _headers=_headers,
655
+ _host_index=_host_index
656
+ )
657
+
658
+ _response_types_map: Dict[str, Optional[str]] = {
659
+ '200': "BaseResponseExternalResponse",
660
+ '422': "BaseResponse",
661
+ '404': "BaseResponse",
662
+ }
663
+ response_data = self.api_client.call_api(
664
+ *_param,
665
+ _request_timeout=_request_timeout
666
+ )
667
+ response_data.read()
668
+ return self.api_client.response_deserialize(
669
+ response_data=response_data,
670
+ response_types_map=_response_types_map,
671
+ ).data
672
+
673
+
674
+ @validate_call
675
+ def get_mb_data_with_http_info(
676
+ self,
677
+ analysis_id: StrictInt,
678
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
679
+ _request_timeout: Union[
680
+ None,
681
+ Annotated[StrictFloat, Field(gt=0)],
682
+ Tuple[
683
+ Annotated[StrictFloat, Field(gt=0)],
684
+ Annotated[StrictFloat, Field(gt=0)]
685
+ ]
686
+ ] = None,
687
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
688
+ _content_type: Optional[StrictStr] = None,
689
+ _headers: Optional[Dict[StrictStr, Any]] = None,
690
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
691
+ ) -> ApiResponse[BaseResponseExternalResponse]:
692
+ """Get MalwareBazaar data
693
+
694
+
695
+ :param analysis_id: (required)
696
+ :type analysis_id: int
697
+ :param authorization: API Key bearer token
698
+ :type authorization: str
699
+ :param _request_timeout: timeout setting for this request. If one
700
+ number provided, it will be total request
701
+ timeout. It can also be a pair (tuple) of
702
+ (connection, read) timeouts.
703
+ :type _request_timeout: int, tuple(int, int), optional
704
+ :param _request_auth: set to override the auth_settings for an a single
705
+ request; this effectively ignores the
706
+ authentication in the spec for a single request.
707
+ :type _request_auth: dict, optional
708
+ :param _content_type: force content-type for the request.
709
+ :type _content_type: str, Optional
710
+ :param _headers: set to override the headers for a single
711
+ request; this effectively ignores the headers
712
+ in the spec for a single request.
713
+ :type _headers: dict, optional
714
+ :param _host_index: set to override the host_index for a single
715
+ request; this effectively ignores the host_index
716
+ in the spec for a single request.
717
+ :type _host_index: int, optional
718
+ :return: Returns the result object.
719
+ """ # noqa: E501
720
+
721
+ _param = self._get_mb_data_serialize(
722
+ analysis_id=analysis_id,
723
+ authorization=authorization,
724
+ _request_auth=_request_auth,
725
+ _content_type=_content_type,
726
+ _headers=_headers,
727
+ _host_index=_host_index
728
+ )
729
+
730
+ _response_types_map: Dict[str, Optional[str]] = {
731
+ '200': "BaseResponseExternalResponse",
732
+ '422': "BaseResponse",
733
+ '404': "BaseResponse",
734
+ }
735
+ response_data = self.api_client.call_api(
736
+ *_param,
737
+ _request_timeout=_request_timeout
738
+ )
739
+ response_data.read()
740
+ return self.api_client.response_deserialize(
741
+ response_data=response_data,
742
+ response_types_map=_response_types_map,
743
+ )
744
+
745
+
746
+ @validate_call
747
+ def get_mb_data_without_preload_content(
748
+ self,
749
+ analysis_id: StrictInt,
750
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
751
+ _request_timeout: Union[
752
+ None,
753
+ Annotated[StrictFloat, Field(gt=0)],
754
+ Tuple[
755
+ Annotated[StrictFloat, Field(gt=0)],
756
+ Annotated[StrictFloat, Field(gt=0)]
757
+ ]
758
+ ] = None,
759
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
760
+ _content_type: Optional[StrictStr] = None,
761
+ _headers: Optional[Dict[StrictStr, Any]] = None,
762
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
763
+ ) -> RESTResponseType:
764
+ """Get MalwareBazaar data
765
+
766
+
767
+ :param analysis_id: (required)
768
+ :type analysis_id: int
769
+ :param authorization: API Key bearer token
770
+ :type authorization: str
771
+ :param _request_timeout: timeout setting for this request. If one
772
+ number provided, it will be total request
773
+ timeout. It can also be a pair (tuple) of
774
+ (connection, read) timeouts.
775
+ :type _request_timeout: int, tuple(int, int), optional
776
+ :param _request_auth: set to override the auth_settings for an a single
777
+ request; this effectively ignores the
778
+ authentication in the spec for a single request.
779
+ :type _request_auth: dict, optional
780
+ :param _content_type: force content-type for the request.
781
+ :type _content_type: str, Optional
782
+ :param _headers: set to override the headers for a single
783
+ request; this effectively ignores the headers
784
+ in the spec for a single request.
785
+ :type _headers: dict, optional
786
+ :param _host_index: set to override the host_index for a single
787
+ request; this effectively ignores the host_index
788
+ in the spec for a single request.
789
+ :type _host_index: int, optional
790
+ :return: Returns the result object.
791
+ """ # noqa: E501
792
+
793
+ _param = self._get_mb_data_serialize(
794
+ analysis_id=analysis_id,
795
+ authorization=authorization,
796
+ _request_auth=_request_auth,
797
+ _content_type=_content_type,
798
+ _headers=_headers,
799
+ _host_index=_host_index
800
+ )
801
+
802
+ _response_types_map: Dict[str, Optional[str]] = {
803
+ '200': "BaseResponseExternalResponse",
804
+ '422': "BaseResponse",
805
+ '404': "BaseResponse",
806
+ }
807
+ response_data = self.api_client.call_api(
808
+ *_param,
809
+ _request_timeout=_request_timeout
810
+ )
811
+ return response_data.response
812
+
813
+
814
+ def _get_mb_data_serialize(
815
+ self,
816
+ analysis_id,
817
+ authorization,
818
+ _request_auth,
819
+ _content_type,
820
+ _headers,
821
+ _host_index,
822
+ ) -> RequestSerialized:
823
+
824
+ _host = None
825
+
826
+ _collection_formats: Dict[str, str] = {
827
+ }
828
+
829
+ _path_params: Dict[str, str] = {}
830
+ _query_params: List[Tuple[str, str]] = []
831
+ _header_params: Dict[str, Optional[str]] = _headers or {}
832
+ _form_params: List[Tuple[str, str]] = []
833
+ _files: Dict[
834
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
835
+ ] = {}
836
+ _body_params: Optional[bytes] = None
837
+
838
+ # process the path parameters
839
+ if analysis_id is not None:
840
+ _path_params['analysis_id'] = analysis_id
841
+ # process the query parameters
842
+ # process the header parameters
843
+ if authorization is not None:
844
+ _header_params['authorization'] = authorization
845
+ # process the form parameters
846
+ # process the body parameter
847
+
848
+
849
+ # set the HTTP header `Accept`
850
+ if 'Accept' not in _header_params:
851
+ _header_params['Accept'] = self.api_client.select_header_accept(
852
+ [
853
+ 'application/json'
854
+ ]
855
+ )
856
+
857
+
858
+ # authentication setting
859
+ _auth_settings: List[str] = [
860
+ 'APIKey'
861
+ ]
862
+
863
+ return self.api_client.param_serialize(
864
+ method='GET',
865
+ resource_path='/v2/analysis/{analysis_id}/external/mb',
866
+ path_params=_path_params,
867
+ query_params=_query_params,
868
+ header_params=_header_params,
869
+ body=_body_params,
870
+ post_params=_form_params,
871
+ files=_files,
872
+ auth_settings=_auth_settings,
873
+ collection_formats=_collection_formats,
874
+ _host=_host,
875
+ _request_auth=_request_auth
876
+ )
877
+
878
+
879
+
880
+
881
+ @validate_call
882
+ def get_mb_task_status(
883
+ self,
884
+ analysis_id: StrictInt,
885
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
886
+ _request_timeout: Union[
887
+ None,
888
+ Annotated[StrictFloat, Field(gt=0)],
889
+ Tuple[
890
+ Annotated[StrictFloat, Field(gt=0)],
891
+ Annotated[StrictFloat, Field(gt=0)]
892
+ ]
893
+ ] = None,
894
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
895
+ _content_type: Optional[StrictStr] = None,
896
+ _headers: Optional[Dict[StrictStr, Any]] = None,
897
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
898
+ ) -> BaseResponseTaskResponse:
899
+ """Check the status of MalwareBazaar data retrieval
900
+
901
+
902
+ :param analysis_id: (required)
903
+ :type analysis_id: int
904
+ :param authorization: API Key bearer token
905
+ :type authorization: str
906
+ :param _request_timeout: timeout setting for this request. If one
907
+ number provided, it will be total request
908
+ timeout. It can also be a pair (tuple) of
909
+ (connection, read) timeouts.
910
+ :type _request_timeout: int, tuple(int, int), optional
911
+ :param _request_auth: set to override the auth_settings for an a single
912
+ request; this effectively ignores the
913
+ authentication in the spec for a single request.
914
+ :type _request_auth: dict, optional
915
+ :param _content_type: force content-type for the request.
916
+ :type _content_type: str, Optional
917
+ :param _headers: set to override the headers for a single
918
+ request; this effectively ignores the headers
919
+ in the spec for a single request.
920
+ :type _headers: dict, optional
921
+ :param _host_index: set to override the host_index for a single
922
+ request; this effectively ignores the host_index
923
+ in the spec for a single request.
924
+ :type _host_index: int, optional
925
+ :return: Returns the result object.
926
+ """ # noqa: E501
927
+
928
+ _param = self._get_mb_task_status_serialize(
929
+ analysis_id=analysis_id,
930
+ authorization=authorization,
931
+ _request_auth=_request_auth,
932
+ _content_type=_content_type,
933
+ _headers=_headers,
934
+ _host_index=_host_index
935
+ )
936
+
937
+ _response_types_map: Dict[str, Optional[str]] = {
938
+ '200': "BaseResponseTaskResponse",
939
+ '422': "BaseResponse",
940
+ }
941
+ response_data = self.api_client.call_api(
942
+ *_param,
943
+ _request_timeout=_request_timeout
944
+ )
945
+ response_data.read()
946
+ return self.api_client.response_deserialize(
947
+ response_data=response_data,
948
+ response_types_map=_response_types_map,
949
+ ).data
950
+
951
+
952
+ @validate_call
953
+ def get_mb_task_status_with_http_info(
954
+ self,
955
+ analysis_id: StrictInt,
956
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
957
+ _request_timeout: Union[
958
+ None,
959
+ Annotated[StrictFloat, Field(gt=0)],
960
+ Tuple[
961
+ Annotated[StrictFloat, Field(gt=0)],
962
+ Annotated[StrictFloat, Field(gt=0)]
963
+ ]
964
+ ] = None,
965
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
966
+ _content_type: Optional[StrictStr] = None,
967
+ _headers: Optional[Dict[StrictStr, Any]] = None,
968
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
969
+ ) -> ApiResponse[BaseResponseTaskResponse]:
970
+ """Check the status of MalwareBazaar data retrieval
971
+
972
+
973
+ :param analysis_id: (required)
974
+ :type analysis_id: int
975
+ :param authorization: API Key bearer token
976
+ :type authorization: str
977
+ :param _request_timeout: timeout setting for this request. If one
978
+ number provided, it will be total request
979
+ timeout. It can also be a pair (tuple) of
980
+ (connection, read) timeouts.
981
+ :type _request_timeout: int, tuple(int, int), optional
982
+ :param _request_auth: set to override the auth_settings for an a single
983
+ request; this effectively ignores the
984
+ authentication in the spec for a single request.
985
+ :type _request_auth: dict, optional
986
+ :param _content_type: force content-type for the request.
987
+ :type _content_type: str, Optional
988
+ :param _headers: set to override the headers for a single
989
+ request; this effectively ignores the headers
990
+ in the spec for a single request.
991
+ :type _headers: dict, optional
992
+ :param _host_index: set to override the host_index for a single
993
+ request; this effectively ignores the host_index
994
+ in the spec for a single request.
995
+ :type _host_index: int, optional
996
+ :return: Returns the result object.
997
+ """ # noqa: E501
998
+
999
+ _param = self._get_mb_task_status_serialize(
1000
+ analysis_id=analysis_id,
1001
+ authorization=authorization,
1002
+ _request_auth=_request_auth,
1003
+ _content_type=_content_type,
1004
+ _headers=_headers,
1005
+ _host_index=_host_index
1006
+ )
1007
+
1008
+ _response_types_map: Dict[str, Optional[str]] = {
1009
+ '200': "BaseResponseTaskResponse",
1010
+ '422': "BaseResponse",
1011
+ }
1012
+ response_data = self.api_client.call_api(
1013
+ *_param,
1014
+ _request_timeout=_request_timeout
1015
+ )
1016
+ response_data.read()
1017
+ return self.api_client.response_deserialize(
1018
+ response_data=response_data,
1019
+ response_types_map=_response_types_map,
1020
+ )
1021
+
1022
+
1023
+ @validate_call
1024
+ def get_mb_task_status_without_preload_content(
1025
+ self,
1026
+ analysis_id: StrictInt,
1027
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1028
+ _request_timeout: Union[
1029
+ None,
1030
+ Annotated[StrictFloat, Field(gt=0)],
1031
+ Tuple[
1032
+ Annotated[StrictFloat, Field(gt=0)],
1033
+ Annotated[StrictFloat, Field(gt=0)]
1034
+ ]
1035
+ ] = None,
1036
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1037
+ _content_type: Optional[StrictStr] = None,
1038
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1039
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1040
+ ) -> RESTResponseType:
1041
+ """Check the status of MalwareBazaar data retrieval
1042
+
1043
+
1044
+ :param analysis_id: (required)
1045
+ :type analysis_id: int
1046
+ :param authorization: API Key bearer token
1047
+ :type authorization: str
1048
+ :param _request_timeout: timeout setting for this request. If one
1049
+ number provided, it will be total request
1050
+ timeout. It can also be a pair (tuple) of
1051
+ (connection, read) timeouts.
1052
+ :type _request_timeout: int, tuple(int, int), optional
1053
+ :param _request_auth: set to override the auth_settings for an a single
1054
+ request; this effectively ignores the
1055
+ authentication in the spec for a single request.
1056
+ :type _request_auth: dict, optional
1057
+ :param _content_type: force content-type for the request.
1058
+ :type _content_type: str, Optional
1059
+ :param _headers: set to override the headers for a single
1060
+ request; this effectively ignores the headers
1061
+ in the spec for a single request.
1062
+ :type _headers: dict, optional
1063
+ :param _host_index: set to override the host_index for a single
1064
+ request; this effectively ignores the host_index
1065
+ in the spec for a single request.
1066
+ :type _host_index: int, optional
1067
+ :return: Returns the result object.
1068
+ """ # noqa: E501
1069
+
1070
+ _param = self._get_mb_task_status_serialize(
1071
+ analysis_id=analysis_id,
1072
+ authorization=authorization,
1073
+ _request_auth=_request_auth,
1074
+ _content_type=_content_type,
1075
+ _headers=_headers,
1076
+ _host_index=_host_index
1077
+ )
1078
+
1079
+ _response_types_map: Dict[str, Optional[str]] = {
1080
+ '200': "BaseResponseTaskResponse",
1081
+ '422': "BaseResponse",
1082
+ }
1083
+ response_data = self.api_client.call_api(
1084
+ *_param,
1085
+ _request_timeout=_request_timeout
1086
+ )
1087
+ return response_data.response
1088
+
1089
+
1090
+ def _get_mb_task_status_serialize(
1091
+ self,
1092
+ analysis_id,
1093
+ authorization,
1094
+ _request_auth,
1095
+ _content_type,
1096
+ _headers,
1097
+ _host_index,
1098
+ ) -> RequestSerialized:
1099
+
1100
+ _host = None
1101
+
1102
+ _collection_formats: Dict[str, str] = {
1103
+ }
1104
+
1105
+ _path_params: Dict[str, str] = {}
1106
+ _query_params: List[Tuple[str, str]] = []
1107
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1108
+ _form_params: List[Tuple[str, str]] = []
1109
+ _files: Dict[
1110
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1111
+ ] = {}
1112
+ _body_params: Optional[bytes] = None
1113
+
1114
+ # process the path parameters
1115
+ if analysis_id is not None:
1116
+ _path_params['analysis_id'] = analysis_id
1117
+ # process the query parameters
1118
+ # process the header parameters
1119
+ if authorization is not None:
1120
+ _header_params['authorization'] = authorization
1121
+ # process the form parameters
1122
+ # process the body parameter
1123
+
1124
+
1125
+ # set the HTTP header `Accept`
1126
+ if 'Accept' not in _header_params:
1127
+ _header_params['Accept'] = self.api_client.select_header_accept(
1128
+ [
1129
+ 'application/json'
1130
+ ]
1131
+ )
1132
+
1133
+
1134
+ # authentication setting
1135
+ _auth_settings: List[str] = [
1136
+ 'APIKey'
1137
+ ]
1138
+
1139
+ return self.api_client.param_serialize(
1140
+ method='GET',
1141
+ resource_path='/v2/analysis/{analysis_id}/external/mb/status',
1142
+ path_params=_path_params,
1143
+ query_params=_query_params,
1144
+ header_params=_header_params,
1145
+ body=_body_params,
1146
+ post_params=_form_params,
1147
+ files=_files,
1148
+ auth_settings=_auth_settings,
1149
+ collection_formats=_collection_formats,
1150
+ _host=_host,
1151
+ _request_auth=_request_auth
1152
+ )
1153
+
1154
+
1155
+
1156
+
1157
+ @validate_call
1158
+ def get_vt_data(
1159
+ self,
1160
+ analysis_id: StrictInt,
1161
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1162
+ _request_timeout: Union[
1163
+ None,
1164
+ Annotated[StrictFloat, Field(gt=0)],
1165
+ Tuple[
1166
+ Annotated[StrictFloat, Field(gt=0)],
1167
+ Annotated[StrictFloat, Field(gt=0)]
1168
+ ]
1169
+ ] = None,
1170
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1171
+ _content_type: Optional[StrictStr] = None,
1172
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1173
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1174
+ ) -> BaseResponseExternalResponse:
1175
+ """Get VirusTotal data
1176
+
1177
+
1178
+ :param analysis_id: (required)
1179
+ :type analysis_id: int
1180
+ :param authorization: API Key bearer token
1181
+ :type authorization: str
1182
+ :param _request_timeout: timeout setting for this request. If one
1183
+ number provided, it will be total request
1184
+ timeout. It can also be a pair (tuple) of
1185
+ (connection, read) timeouts.
1186
+ :type _request_timeout: int, tuple(int, int), optional
1187
+ :param _request_auth: set to override the auth_settings for an a single
1188
+ request; this effectively ignores the
1189
+ authentication in the spec for a single request.
1190
+ :type _request_auth: dict, optional
1191
+ :param _content_type: force content-type for the request.
1192
+ :type _content_type: str, Optional
1193
+ :param _headers: set to override the headers for a single
1194
+ request; this effectively ignores the headers
1195
+ in the spec for a single request.
1196
+ :type _headers: dict, optional
1197
+ :param _host_index: set to override the host_index for a single
1198
+ request; this effectively ignores the host_index
1199
+ in the spec for a single request.
1200
+ :type _host_index: int, optional
1201
+ :return: Returns the result object.
1202
+ """ # noqa: E501
1203
+
1204
+ _param = self._get_vt_data_serialize(
1205
+ analysis_id=analysis_id,
1206
+ authorization=authorization,
1207
+ _request_auth=_request_auth,
1208
+ _content_type=_content_type,
1209
+ _headers=_headers,
1210
+ _host_index=_host_index
1211
+ )
1212
+
1213
+ _response_types_map: Dict[str, Optional[str]] = {
1214
+ '200': "BaseResponseExternalResponse",
1215
+ '422': "BaseResponse",
1216
+ '404': "BaseResponse",
1217
+ }
1218
+ response_data = self.api_client.call_api(
1219
+ *_param,
1220
+ _request_timeout=_request_timeout
1221
+ )
1222
+ response_data.read()
1223
+ return self.api_client.response_deserialize(
1224
+ response_data=response_data,
1225
+ response_types_map=_response_types_map,
1226
+ ).data
1227
+
1228
+
1229
+ @validate_call
1230
+ def get_vt_data_with_http_info(
1231
+ self,
1232
+ analysis_id: StrictInt,
1233
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1234
+ _request_timeout: Union[
1235
+ None,
1236
+ Annotated[StrictFloat, Field(gt=0)],
1237
+ Tuple[
1238
+ Annotated[StrictFloat, Field(gt=0)],
1239
+ Annotated[StrictFloat, Field(gt=0)]
1240
+ ]
1241
+ ] = None,
1242
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1243
+ _content_type: Optional[StrictStr] = None,
1244
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1245
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1246
+ ) -> ApiResponse[BaseResponseExternalResponse]:
1247
+ """Get VirusTotal data
1248
+
1249
+
1250
+ :param analysis_id: (required)
1251
+ :type analysis_id: int
1252
+ :param authorization: API Key bearer token
1253
+ :type authorization: str
1254
+ :param _request_timeout: timeout setting for this request. If one
1255
+ number provided, it will be total request
1256
+ timeout. It can also be a pair (tuple) of
1257
+ (connection, read) timeouts.
1258
+ :type _request_timeout: int, tuple(int, int), optional
1259
+ :param _request_auth: set to override the auth_settings for an a single
1260
+ request; this effectively ignores the
1261
+ authentication in the spec for a single request.
1262
+ :type _request_auth: dict, optional
1263
+ :param _content_type: force content-type for the request.
1264
+ :type _content_type: str, Optional
1265
+ :param _headers: set to override the headers for a single
1266
+ request; this effectively ignores the headers
1267
+ in the spec for a single request.
1268
+ :type _headers: dict, optional
1269
+ :param _host_index: set to override the host_index for a single
1270
+ request; this effectively ignores the host_index
1271
+ in the spec for a single request.
1272
+ :type _host_index: int, optional
1273
+ :return: Returns the result object.
1274
+ """ # noqa: E501
1275
+
1276
+ _param = self._get_vt_data_serialize(
1277
+ analysis_id=analysis_id,
1278
+ authorization=authorization,
1279
+ _request_auth=_request_auth,
1280
+ _content_type=_content_type,
1281
+ _headers=_headers,
1282
+ _host_index=_host_index
1283
+ )
1284
+
1285
+ _response_types_map: Dict[str, Optional[str]] = {
1286
+ '200': "BaseResponseExternalResponse",
1287
+ '422': "BaseResponse",
1288
+ '404': "BaseResponse",
1289
+ }
1290
+ response_data = self.api_client.call_api(
1291
+ *_param,
1292
+ _request_timeout=_request_timeout
1293
+ )
1294
+ response_data.read()
1295
+ return self.api_client.response_deserialize(
1296
+ response_data=response_data,
1297
+ response_types_map=_response_types_map,
1298
+ )
1299
+
1300
+
1301
+ @validate_call
1302
+ def get_vt_data_without_preload_content(
1303
+ self,
1304
+ analysis_id: StrictInt,
1305
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1306
+ _request_timeout: Union[
1307
+ None,
1308
+ Annotated[StrictFloat, Field(gt=0)],
1309
+ Tuple[
1310
+ Annotated[StrictFloat, Field(gt=0)],
1311
+ Annotated[StrictFloat, Field(gt=0)]
1312
+ ]
1313
+ ] = None,
1314
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1315
+ _content_type: Optional[StrictStr] = None,
1316
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1317
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1318
+ ) -> RESTResponseType:
1319
+ """Get VirusTotal data
1320
+
1321
+
1322
+ :param analysis_id: (required)
1323
+ :type analysis_id: int
1324
+ :param authorization: API Key bearer token
1325
+ :type authorization: str
1326
+ :param _request_timeout: timeout setting for this request. If one
1327
+ number provided, it will be total request
1328
+ timeout. It can also be a pair (tuple) of
1329
+ (connection, read) timeouts.
1330
+ :type _request_timeout: int, tuple(int, int), optional
1331
+ :param _request_auth: set to override the auth_settings for an a single
1332
+ request; this effectively ignores the
1333
+ authentication in the spec for a single request.
1334
+ :type _request_auth: dict, optional
1335
+ :param _content_type: force content-type for the request.
1336
+ :type _content_type: str, Optional
1337
+ :param _headers: set to override the headers for a single
1338
+ request; this effectively ignores the headers
1339
+ in the spec for a single request.
1340
+ :type _headers: dict, optional
1341
+ :param _host_index: set to override the host_index for a single
1342
+ request; this effectively ignores the host_index
1343
+ in the spec for a single request.
1344
+ :type _host_index: int, optional
1345
+ :return: Returns the result object.
1346
+ """ # noqa: E501
1347
+
1348
+ _param = self._get_vt_data_serialize(
1349
+ analysis_id=analysis_id,
1350
+ authorization=authorization,
1351
+ _request_auth=_request_auth,
1352
+ _content_type=_content_type,
1353
+ _headers=_headers,
1354
+ _host_index=_host_index
1355
+ )
1356
+
1357
+ _response_types_map: Dict[str, Optional[str]] = {
1358
+ '200': "BaseResponseExternalResponse",
1359
+ '422': "BaseResponse",
1360
+ '404': "BaseResponse",
1361
+ }
1362
+ response_data = self.api_client.call_api(
1363
+ *_param,
1364
+ _request_timeout=_request_timeout
1365
+ )
1366
+ return response_data.response
1367
+
1368
+
1369
+ def _get_vt_data_serialize(
1370
+ self,
1371
+ analysis_id,
1372
+ authorization,
1373
+ _request_auth,
1374
+ _content_type,
1375
+ _headers,
1376
+ _host_index,
1377
+ ) -> RequestSerialized:
1378
+
1379
+ _host = None
1380
+
1381
+ _collection_formats: Dict[str, str] = {
1382
+ }
1383
+
1384
+ _path_params: Dict[str, str] = {}
1385
+ _query_params: List[Tuple[str, str]] = []
1386
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1387
+ _form_params: List[Tuple[str, str]] = []
1388
+ _files: Dict[
1389
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1390
+ ] = {}
1391
+ _body_params: Optional[bytes] = None
1392
+
1393
+ # process the path parameters
1394
+ if analysis_id is not None:
1395
+ _path_params['analysis_id'] = analysis_id
1396
+ # process the query parameters
1397
+ # process the header parameters
1398
+ if authorization is not None:
1399
+ _header_params['authorization'] = authorization
1400
+ # process the form parameters
1401
+ # process the body parameter
1402
+
1403
+
1404
+ # set the HTTP header `Accept`
1405
+ if 'Accept' not in _header_params:
1406
+ _header_params['Accept'] = self.api_client.select_header_accept(
1407
+ [
1408
+ 'application/json'
1409
+ ]
1410
+ )
1411
+
1412
+
1413
+ # authentication setting
1414
+ _auth_settings: List[str] = [
1415
+ 'APIKey'
1416
+ ]
1417
+
1418
+ return self.api_client.param_serialize(
1419
+ method='GET',
1420
+ resource_path='/v2/analysis/{analysis_id}/external/vt',
1421
+ path_params=_path_params,
1422
+ query_params=_query_params,
1423
+ header_params=_header_params,
1424
+ body=_body_params,
1425
+ post_params=_form_params,
1426
+ files=_files,
1427
+ auth_settings=_auth_settings,
1428
+ collection_formats=_collection_formats,
1429
+ _host=_host,
1430
+ _request_auth=_request_auth
1431
+ )
1432
+
1433
+
1434
+
1435
+
1436
+ @validate_call
1437
+ def get_vt_task_status(
1438
+ self,
1439
+ analysis_id: StrictInt,
1440
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1441
+ _request_timeout: Union[
1442
+ None,
1443
+ Annotated[StrictFloat, Field(gt=0)],
1444
+ Tuple[
1445
+ Annotated[StrictFloat, Field(gt=0)],
1446
+ Annotated[StrictFloat, Field(gt=0)]
1447
+ ]
1448
+ ] = None,
1449
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1450
+ _content_type: Optional[StrictStr] = None,
1451
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1452
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1453
+ ) -> BaseResponseTaskResponse:
1454
+ """Check the status of VirusTotal data retrieval
1455
+
1456
+
1457
+ :param analysis_id: (required)
1458
+ :type analysis_id: int
1459
+ :param authorization: API Key bearer token
1460
+ :type authorization: str
1461
+ :param _request_timeout: timeout setting for this request. If one
1462
+ number provided, it will be total request
1463
+ timeout. It can also be a pair (tuple) of
1464
+ (connection, read) timeouts.
1465
+ :type _request_timeout: int, tuple(int, int), optional
1466
+ :param _request_auth: set to override the auth_settings for an a single
1467
+ request; this effectively ignores the
1468
+ authentication in the spec for a single request.
1469
+ :type _request_auth: dict, optional
1470
+ :param _content_type: force content-type for the request.
1471
+ :type _content_type: str, Optional
1472
+ :param _headers: set to override the headers for a single
1473
+ request; this effectively ignores the headers
1474
+ in the spec for a single request.
1475
+ :type _headers: dict, optional
1476
+ :param _host_index: set to override the host_index for a single
1477
+ request; this effectively ignores the host_index
1478
+ in the spec for a single request.
1479
+ :type _host_index: int, optional
1480
+ :return: Returns the result object.
1481
+ """ # noqa: E501
1482
+
1483
+ _param = self._get_vt_task_status_serialize(
1484
+ analysis_id=analysis_id,
1485
+ authorization=authorization,
1486
+ _request_auth=_request_auth,
1487
+ _content_type=_content_type,
1488
+ _headers=_headers,
1489
+ _host_index=_host_index
1490
+ )
1491
+
1492
+ _response_types_map: Dict[str, Optional[str]] = {
1493
+ '200': "BaseResponseTaskResponse",
1494
+ '422': "BaseResponse",
1495
+ }
1496
+ response_data = self.api_client.call_api(
1497
+ *_param,
1498
+ _request_timeout=_request_timeout
1499
+ )
1500
+ response_data.read()
1501
+ return self.api_client.response_deserialize(
1502
+ response_data=response_data,
1503
+ response_types_map=_response_types_map,
1504
+ ).data
1505
+
1506
+
1507
+ @validate_call
1508
+ def get_vt_task_status_with_http_info(
1509
+ self,
1510
+ analysis_id: StrictInt,
1511
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1512
+ _request_timeout: Union[
1513
+ None,
1514
+ Annotated[StrictFloat, Field(gt=0)],
1515
+ Tuple[
1516
+ Annotated[StrictFloat, Field(gt=0)],
1517
+ Annotated[StrictFloat, Field(gt=0)]
1518
+ ]
1519
+ ] = None,
1520
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1521
+ _content_type: Optional[StrictStr] = None,
1522
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1523
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1524
+ ) -> ApiResponse[BaseResponseTaskResponse]:
1525
+ """Check the status of VirusTotal data retrieval
1526
+
1527
+
1528
+ :param analysis_id: (required)
1529
+ :type analysis_id: int
1530
+ :param authorization: API Key bearer token
1531
+ :type authorization: str
1532
+ :param _request_timeout: timeout setting for this request. If one
1533
+ number provided, it will be total request
1534
+ timeout. It can also be a pair (tuple) of
1535
+ (connection, read) timeouts.
1536
+ :type _request_timeout: int, tuple(int, int), optional
1537
+ :param _request_auth: set to override the auth_settings for an a single
1538
+ request; this effectively ignores the
1539
+ authentication in the spec for a single request.
1540
+ :type _request_auth: dict, optional
1541
+ :param _content_type: force content-type for the request.
1542
+ :type _content_type: str, Optional
1543
+ :param _headers: set to override the headers for a single
1544
+ request; this effectively ignores the headers
1545
+ in the spec for a single request.
1546
+ :type _headers: dict, optional
1547
+ :param _host_index: set to override the host_index for a single
1548
+ request; this effectively ignores the host_index
1549
+ in the spec for a single request.
1550
+ :type _host_index: int, optional
1551
+ :return: Returns the result object.
1552
+ """ # noqa: E501
1553
+
1554
+ _param = self._get_vt_task_status_serialize(
1555
+ analysis_id=analysis_id,
1556
+ authorization=authorization,
1557
+ _request_auth=_request_auth,
1558
+ _content_type=_content_type,
1559
+ _headers=_headers,
1560
+ _host_index=_host_index
1561
+ )
1562
+
1563
+ _response_types_map: Dict[str, Optional[str]] = {
1564
+ '200': "BaseResponseTaskResponse",
1565
+ '422': "BaseResponse",
1566
+ }
1567
+ response_data = self.api_client.call_api(
1568
+ *_param,
1569
+ _request_timeout=_request_timeout
1570
+ )
1571
+ response_data.read()
1572
+ return self.api_client.response_deserialize(
1573
+ response_data=response_data,
1574
+ response_types_map=_response_types_map,
1575
+ )
1576
+
1577
+
1578
+ @validate_call
1579
+ def get_vt_task_status_without_preload_content(
1580
+ self,
1581
+ analysis_id: StrictInt,
1582
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1583
+ _request_timeout: Union[
1584
+ None,
1585
+ Annotated[StrictFloat, Field(gt=0)],
1586
+ Tuple[
1587
+ Annotated[StrictFloat, Field(gt=0)],
1588
+ Annotated[StrictFloat, Field(gt=0)]
1589
+ ]
1590
+ ] = None,
1591
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1592
+ _content_type: Optional[StrictStr] = None,
1593
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1594
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1595
+ ) -> RESTResponseType:
1596
+ """Check the status of VirusTotal data retrieval
1597
+
1598
+
1599
+ :param analysis_id: (required)
1600
+ :type analysis_id: int
1601
+ :param authorization: API Key bearer token
1602
+ :type authorization: str
1603
+ :param _request_timeout: timeout setting for this request. If one
1604
+ number provided, it will be total request
1605
+ timeout. It can also be a pair (tuple) of
1606
+ (connection, read) timeouts.
1607
+ :type _request_timeout: int, tuple(int, int), optional
1608
+ :param _request_auth: set to override the auth_settings for an a single
1609
+ request; this effectively ignores the
1610
+ authentication in the spec for a single request.
1611
+ :type _request_auth: dict, optional
1612
+ :param _content_type: force content-type for the request.
1613
+ :type _content_type: str, Optional
1614
+ :param _headers: set to override the headers for a single
1615
+ request; this effectively ignores the headers
1616
+ in the spec for a single request.
1617
+ :type _headers: dict, optional
1618
+ :param _host_index: set to override the host_index for a single
1619
+ request; this effectively ignores the host_index
1620
+ in the spec for a single request.
1621
+ :type _host_index: int, optional
1622
+ :return: Returns the result object.
1623
+ """ # noqa: E501
1624
+
1625
+ _param = self._get_vt_task_status_serialize(
1626
+ analysis_id=analysis_id,
1627
+ authorization=authorization,
1628
+ _request_auth=_request_auth,
1629
+ _content_type=_content_type,
1630
+ _headers=_headers,
1631
+ _host_index=_host_index
1632
+ )
1633
+
1634
+ _response_types_map: Dict[str, Optional[str]] = {
1635
+ '200': "BaseResponseTaskResponse",
1636
+ '422': "BaseResponse",
1637
+ }
1638
+ response_data = self.api_client.call_api(
1639
+ *_param,
1640
+ _request_timeout=_request_timeout
1641
+ )
1642
+ return response_data.response
1643
+
1644
+
1645
+ def _get_vt_task_status_serialize(
1646
+ self,
1647
+ analysis_id,
1648
+ authorization,
1649
+ _request_auth,
1650
+ _content_type,
1651
+ _headers,
1652
+ _host_index,
1653
+ ) -> RequestSerialized:
1654
+
1655
+ _host = None
1656
+
1657
+ _collection_formats: Dict[str, str] = {
1658
+ }
1659
+
1660
+ _path_params: Dict[str, str] = {}
1661
+ _query_params: List[Tuple[str, str]] = []
1662
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1663
+ _form_params: List[Tuple[str, str]] = []
1664
+ _files: Dict[
1665
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1666
+ ] = {}
1667
+ _body_params: Optional[bytes] = None
1668
+
1669
+ # process the path parameters
1670
+ if analysis_id is not None:
1671
+ _path_params['analysis_id'] = analysis_id
1672
+ # process the query parameters
1673
+ # process the header parameters
1674
+ if authorization is not None:
1675
+ _header_params['authorization'] = authorization
1676
+ # process the form parameters
1677
+ # process the body parameter
1678
+
1679
+
1680
+ # set the HTTP header `Accept`
1681
+ if 'Accept' not in _header_params:
1682
+ _header_params['Accept'] = self.api_client.select_header_accept(
1683
+ [
1684
+ 'application/json'
1685
+ ]
1686
+ )
1687
+
1688
+
1689
+ # authentication setting
1690
+ _auth_settings: List[str] = [
1691
+ 'APIKey'
1692
+ ]
1693
+
1694
+ return self.api_client.param_serialize(
1695
+ method='GET',
1696
+ resource_path='/v2/analysis/{analysis_id}/external/vt/status',
1697
+ path_params=_path_params,
1698
+ query_params=_query_params,
1699
+ header_params=_header_params,
1700
+ body=_body_params,
1701
+ post_params=_form_params,
1702
+ files=_files,
1703
+ auth_settings=_auth_settings,
1704
+ collection_formats=_collection_formats,
1705
+ _host=_host,
1706
+ _request_auth=_request_auth
1707
+ )
1708
+
1709
+