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,2216 @@
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, StrictBool, StrictInt, StrictStr, field_validator
20
+ from typing import List, Optional, Union
21
+ from typing_extensions import Annotated
22
+ from revengai.models.base_response_analysis_strings_response import BaseResponseAnalysisStringsResponse
23
+ from revengai.models.base_response_callees_caller_functions_response import BaseResponseCalleesCallerFunctionsResponse
24
+ from revengai.models.base_response_function_blocks_response import BaseResponseFunctionBlocksResponse
25
+ from revengai.models.base_response_function_capability_response import BaseResponseFunctionCapabilityResponse
26
+ from revengai.models.base_response_function_strings_response import BaseResponseFunctionStringsResponse
27
+ from revengai.models.base_response_functions_detail_response import BaseResponseFunctionsDetailResponse
28
+ from revengai.models.base_response_list_similar_functions_response import BaseResponseListSimilarFunctionsResponse
29
+
30
+ from revengai.api_client import ApiClient, RequestSerialized
31
+ from revengai.api_response import ApiResponse
32
+ from revengai.rest import RESTResponseType
33
+
34
+
35
+ class FunctionsCoreApi:
36
+ """NOTE: This class is auto generated by OpenAPI Generator
37
+ Ref: https://openapi-generator.tech
38
+
39
+ Do not edit the class manually.
40
+ """
41
+
42
+ def __init__(self, api_client=None) -> None:
43
+ if api_client is None:
44
+ api_client = ApiClient.get_default()
45
+ self.api_client = api_client
46
+
47
+
48
+ @validate_call
49
+ def get_analysis_strings(
50
+ self,
51
+ analysis_id: StrictInt,
52
+ page: Annotated[Optional[Annotated[int, Field(le=100000, strict=True, ge=1)]], Field(description="The page number to retrieve.")] = None,
53
+ page_size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="Number of items per page.")] = None,
54
+ search: Annotated[Optional[StrictStr], Field(description="Search is applied to string value")] = None,
55
+ function_search: Annotated[Optional[StrictStr], Field(description="Search is applied to function names")] = None,
56
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
57
+ _request_timeout: Union[
58
+ None,
59
+ Annotated[StrictFloat, Field(gt=0)],
60
+ Tuple[
61
+ Annotated[StrictFloat, Field(gt=0)],
62
+ Annotated[StrictFloat, Field(gt=0)]
63
+ ]
64
+ ] = None,
65
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
66
+ _content_type: Optional[StrictStr] = None,
67
+ _headers: Optional[Dict[StrictStr, Any]] = None,
68
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
69
+ ) -> BaseResponseAnalysisStringsResponse:
70
+ """Get string information found in the Analysis
71
+
72
+ Get string information found in the analysis
73
+
74
+ :param analysis_id: (required)
75
+ :type analysis_id: int
76
+ :param page: The page number to retrieve.
77
+ :type page: int
78
+ :param page_size: Number of items per page.
79
+ :type page_size: int
80
+ :param search: Search is applied to string value
81
+ :type search: str
82
+ :param function_search: Search is applied to function names
83
+ :type function_search: str
84
+ :param authorization: API Key bearer token
85
+ :type authorization: str
86
+ :param _request_timeout: timeout setting for this request. If one
87
+ number provided, it will be total request
88
+ timeout. It can also be a pair (tuple) of
89
+ (connection, read) timeouts.
90
+ :type _request_timeout: int, tuple(int, int), optional
91
+ :param _request_auth: set to override the auth_settings for an a single
92
+ request; this effectively ignores the
93
+ authentication in the spec for a single request.
94
+ :type _request_auth: dict, optional
95
+ :param _content_type: force content-type for the request.
96
+ :type _content_type: str, Optional
97
+ :param _headers: set to override the headers for a single
98
+ request; this effectively ignores the headers
99
+ in the spec for a single request.
100
+ :type _headers: dict, optional
101
+ :param _host_index: set to override the host_index for a single
102
+ request; this effectively ignores the host_index
103
+ in the spec for a single request.
104
+ :type _host_index: int, optional
105
+ :return: Returns the result object.
106
+ """ # noqa: E501
107
+
108
+ _param = self._get_analysis_strings_serialize(
109
+ analysis_id=analysis_id,
110
+ page=page,
111
+ page_size=page_size,
112
+ search=search,
113
+ function_search=function_search,
114
+ authorization=authorization,
115
+ _request_auth=_request_auth,
116
+ _content_type=_content_type,
117
+ _headers=_headers,
118
+ _host_index=_host_index
119
+ )
120
+
121
+ _response_types_map: Dict[str, Optional[str]] = {
122
+ '200': "BaseResponseAnalysisStringsResponse",
123
+ '422': "BaseResponse",
124
+ }
125
+ response_data = self.api_client.call_api(
126
+ *_param,
127
+ _request_timeout=_request_timeout
128
+ )
129
+ response_data.read()
130
+ return self.api_client.response_deserialize(
131
+ response_data=response_data,
132
+ response_types_map=_response_types_map,
133
+ ).data
134
+
135
+
136
+ @validate_call
137
+ def get_analysis_strings_with_http_info(
138
+ self,
139
+ analysis_id: StrictInt,
140
+ page: Annotated[Optional[Annotated[int, Field(le=100000, strict=True, ge=1)]], Field(description="The page number to retrieve.")] = None,
141
+ page_size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="Number of items per page.")] = None,
142
+ search: Annotated[Optional[StrictStr], Field(description="Search is applied to string value")] = None,
143
+ function_search: Annotated[Optional[StrictStr], Field(description="Search is applied to function names")] = None,
144
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
145
+ _request_timeout: Union[
146
+ None,
147
+ Annotated[StrictFloat, Field(gt=0)],
148
+ Tuple[
149
+ Annotated[StrictFloat, Field(gt=0)],
150
+ Annotated[StrictFloat, Field(gt=0)]
151
+ ]
152
+ ] = None,
153
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
154
+ _content_type: Optional[StrictStr] = None,
155
+ _headers: Optional[Dict[StrictStr, Any]] = None,
156
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
157
+ ) -> ApiResponse[BaseResponseAnalysisStringsResponse]:
158
+ """Get string information found in the Analysis
159
+
160
+ Get string information found in the analysis
161
+
162
+ :param analysis_id: (required)
163
+ :type analysis_id: int
164
+ :param page: The page number to retrieve.
165
+ :type page: int
166
+ :param page_size: Number of items per page.
167
+ :type page_size: int
168
+ :param search: Search is applied to string value
169
+ :type search: str
170
+ :param function_search: Search is applied to function names
171
+ :type function_search: str
172
+ :param authorization: API Key bearer token
173
+ :type authorization: str
174
+ :param _request_timeout: timeout setting for this request. If one
175
+ number provided, it will be total request
176
+ timeout. It can also be a pair (tuple) of
177
+ (connection, read) timeouts.
178
+ :type _request_timeout: int, tuple(int, int), optional
179
+ :param _request_auth: set to override the auth_settings for an a single
180
+ request; this effectively ignores the
181
+ authentication in the spec for a single request.
182
+ :type _request_auth: dict, optional
183
+ :param _content_type: force content-type for the request.
184
+ :type _content_type: str, Optional
185
+ :param _headers: set to override the headers for a single
186
+ request; this effectively ignores the headers
187
+ in the spec for a single request.
188
+ :type _headers: dict, optional
189
+ :param _host_index: set to override the host_index for a single
190
+ request; this effectively ignores the host_index
191
+ in the spec for a single request.
192
+ :type _host_index: int, optional
193
+ :return: Returns the result object.
194
+ """ # noqa: E501
195
+
196
+ _param = self._get_analysis_strings_serialize(
197
+ analysis_id=analysis_id,
198
+ page=page,
199
+ page_size=page_size,
200
+ search=search,
201
+ function_search=function_search,
202
+ authorization=authorization,
203
+ _request_auth=_request_auth,
204
+ _content_type=_content_type,
205
+ _headers=_headers,
206
+ _host_index=_host_index
207
+ )
208
+
209
+ _response_types_map: Dict[str, Optional[str]] = {
210
+ '200': "BaseResponseAnalysisStringsResponse",
211
+ '422': "BaseResponse",
212
+ }
213
+ response_data = self.api_client.call_api(
214
+ *_param,
215
+ _request_timeout=_request_timeout
216
+ )
217
+ response_data.read()
218
+ return self.api_client.response_deserialize(
219
+ response_data=response_data,
220
+ response_types_map=_response_types_map,
221
+ )
222
+
223
+
224
+ @validate_call
225
+ def get_analysis_strings_without_preload_content(
226
+ self,
227
+ analysis_id: StrictInt,
228
+ page: Annotated[Optional[Annotated[int, Field(le=100000, strict=True, ge=1)]], Field(description="The page number to retrieve.")] = None,
229
+ page_size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="Number of items per page.")] = None,
230
+ search: Annotated[Optional[StrictStr], Field(description="Search is applied to string value")] = None,
231
+ function_search: Annotated[Optional[StrictStr], Field(description="Search is applied to function names")] = None,
232
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
233
+ _request_timeout: Union[
234
+ None,
235
+ Annotated[StrictFloat, Field(gt=0)],
236
+ Tuple[
237
+ Annotated[StrictFloat, Field(gt=0)],
238
+ Annotated[StrictFloat, Field(gt=0)]
239
+ ]
240
+ ] = None,
241
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
242
+ _content_type: Optional[StrictStr] = None,
243
+ _headers: Optional[Dict[StrictStr, Any]] = None,
244
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
245
+ ) -> RESTResponseType:
246
+ """Get string information found in the Analysis
247
+
248
+ Get string information found in the analysis
249
+
250
+ :param analysis_id: (required)
251
+ :type analysis_id: int
252
+ :param page: The page number to retrieve.
253
+ :type page: int
254
+ :param page_size: Number of items per page.
255
+ :type page_size: int
256
+ :param search: Search is applied to string value
257
+ :type search: str
258
+ :param function_search: Search is applied to function names
259
+ :type function_search: str
260
+ :param authorization: API Key bearer token
261
+ :type authorization: str
262
+ :param _request_timeout: timeout setting for this request. If one
263
+ number provided, it will be total request
264
+ timeout. It can also be a pair (tuple) of
265
+ (connection, read) timeouts.
266
+ :type _request_timeout: int, tuple(int, int), optional
267
+ :param _request_auth: set to override the auth_settings for an a single
268
+ request; this effectively ignores the
269
+ authentication in the spec for a single request.
270
+ :type _request_auth: dict, optional
271
+ :param _content_type: force content-type for the request.
272
+ :type _content_type: str, Optional
273
+ :param _headers: set to override the headers for a single
274
+ request; this effectively ignores the headers
275
+ in the spec for a single request.
276
+ :type _headers: dict, optional
277
+ :param _host_index: set to override the host_index for a single
278
+ request; this effectively ignores the host_index
279
+ in the spec for a single request.
280
+ :type _host_index: int, optional
281
+ :return: Returns the result object.
282
+ """ # noqa: E501
283
+
284
+ _param = self._get_analysis_strings_serialize(
285
+ analysis_id=analysis_id,
286
+ page=page,
287
+ page_size=page_size,
288
+ search=search,
289
+ function_search=function_search,
290
+ authorization=authorization,
291
+ _request_auth=_request_auth,
292
+ _content_type=_content_type,
293
+ _headers=_headers,
294
+ _host_index=_host_index
295
+ )
296
+
297
+ _response_types_map: Dict[str, Optional[str]] = {
298
+ '200': "BaseResponseAnalysisStringsResponse",
299
+ '422': "BaseResponse",
300
+ }
301
+ response_data = self.api_client.call_api(
302
+ *_param,
303
+ _request_timeout=_request_timeout
304
+ )
305
+ return response_data.response
306
+
307
+
308
+ def _get_analysis_strings_serialize(
309
+ self,
310
+ analysis_id,
311
+ page,
312
+ page_size,
313
+ search,
314
+ function_search,
315
+ authorization,
316
+ _request_auth,
317
+ _content_type,
318
+ _headers,
319
+ _host_index,
320
+ ) -> RequestSerialized:
321
+
322
+ _host = None
323
+
324
+ _collection_formats: Dict[str, str] = {
325
+ }
326
+
327
+ _path_params: Dict[str, str] = {}
328
+ _query_params: List[Tuple[str, str]] = []
329
+ _header_params: Dict[str, Optional[str]] = _headers or {}
330
+ _form_params: List[Tuple[str, str]] = []
331
+ _files: Dict[
332
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
333
+ ] = {}
334
+ _body_params: Optional[bytes] = None
335
+
336
+ # process the path parameters
337
+ if analysis_id is not None:
338
+ _path_params['analysis_id'] = analysis_id
339
+ # process the query parameters
340
+ if page is not None:
341
+
342
+ _query_params.append(('page', page))
343
+
344
+ if page_size is not None:
345
+
346
+ _query_params.append(('page_size', page_size))
347
+
348
+ if search is not None:
349
+
350
+ _query_params.append(('search', search))
351
+
352
+ if function_search is not None:
353
+
354
+ _query_params.append(('function_search', function_search))
355
+
356
+ # process the header parameters
357
+ if authorization is not None:
358
+ _header_params['authorization'] = authorization
359
+ # process the form parameters
360
+ # process the body parameter
361
+
362
+
363
+ # set the HTTP header `Accept`
364
+ if 'Accept' not in _header_params:
365
+ _header_params['Accept'] = self.api_client.select_header_accept(
366
+ [
367
+ 'application/json'
368
+ ]
369
+ )
370
+
371
+
372
+ # authentication setting
373
+ _auth_settings: List[str] = [
374
+ 'APIKey'
375
+ ]
376
+
377
+ return self.api_client.param_serialize(
378
+ method='GET',
379
+ resource_path='/v2/analyses/{analysis_id}/functions/strings',
380
+ path_params=_path_params,
381
+ query_params=_query_params,
382
+ header_params=_header_params,
383
+ body=_body_params,
384
+ post_params=_form_params,
385
+ files=_files,
386
+ auth_settings=_auth_settings,
387
+ collection_formats=_collection_formats,
388
+ _host=_host,
389
+ _request_auth=_request_auth
390
+ )
391
+
392
+
393
+
394
+
395
+ @validate_call
396
+ def get_function_blocks(
397
+ self,
398
+ function_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
+ ) -> BaseResponseFunctionBlocksResponse:
413
+ """Get disassembly blocks related to the function
414
+
415
+ Get disassembly blocks related to the function
416
+
417
+ :param function_id: (required)
418
+ :type function_id: int
419
+ :param authorization: API Key bearer token
420
+ :type authorization: str
421
+ :param _request_timeout: timeout setting for this request. If one
422
+ number provided, it will be total request
423
+ timeout. It can also be a pair (tuple) of
424
+ (connection, read) timeouts.
425
+ :type _request_timeout: int, tuple(int, int), optional
426
+ :param _request_auth: set to override the auth_settings for an a single
427
+ request; this effectively ignores the
428
+ authentication in the spec for a single request.
429
+ :type _request_auth: dict, optional
430
+ :param _content_type: force content-type for the request.
431
+ :type _content_type: str, Optional
432
+ :param _headers: set to override the headers for a single
433
+ request; this effectively ignores the headers
434
+ in the spec for a single request.
435
+ :type _headers: dict, optional
436
+ :param _host_index: set to override the host_index for a single
437
+ request; this effectively ignores the host_index
438
+ in the spec for a single request.
439
+ :type _host_index: int, optional
440
+ :return: Returns the result object.
441
+ """ # noqa: E501
442
+
443
+ _param = self._get_function_blocks_serialize(
444
+ function_id=function_id,
445
+ authorization=authorization,
446
+ _request_auth=_request_auth,
447
+ _content_type=_content_type,
448
+ _headers=_headers,
449
+ _host_index=_host_index
450
+ )
451
+
452
+ _response_types_map: Dict[str, Optional[str]] = {
453
+ '200': "BaseResponseFunctionBlocksResponse",
454
+ '422': "BaseResponse",
455
+ '404': "BaseResponse",
456
+ }
457
+ response_data = self.api_client.call_api(
458
+ *_param,
459
+ _request_timeout=_request_timeout
460
+ )
461
+ response_data.read()
462
+ return self.api_client.response_deserialize(
463
+ response_data=response_data,
464
+ response_types_map=_response_types_map,
465
+ ).data
466
+
467
+
468
+ @validate_call
469
+ def get_function_blocks_with_http_info(
470
+ self,
471
+ function_id: StrictInt,
472
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
473
+ _request_timeout: Union[
474
+ None,
475
+ Annotated[StrictFloat, Field(gt=0)],
476
+ Tuple[
477
+ Annotated[StrictFloat, Field(gt=0)],
478
+ Annotated[StrictFloat, Field(gt=0)]
479
+ ]
480
+ ] = None,
481
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
482
+ _content_type: Optional[StrictStr] = None,
483
+ _headers: Optional[Dict[StrictStr, Any]] = None,
484
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
485
+ ) -> ApiResponse[BaseResponseFunctionBlocksResponse]:
486
+ """Get disassembly blocks related to the function
487
+
488
+ Get disassembly blocks related to the function
489
+
490
+ :param function_id: (required)
491
+ :type function_id: int
492
+ :param authorization: API Key bearer token
493
+ :type authorization: str
494
+ :param _request_timeout: timeout setting for this request. If one
495
+ number provided, it will be total request
496
+ timeout. It can also be a pair (tuple) of
497
+ (connection, read) timeouts.
498
+ :type _request_timeout: int, tuple(int, int), optional
499
+ :param _request_auth: set to override the auth_settings for an a single
500
+ request; this effectively ignores the
501
+ authentication in the spec for a single request.
502
+ :type _request_auth: dict, optional
503
+ :param _content_type: force content-type for the request.
504
+ :type _content_type: str, Optional
505
+ :param _headers: set to override the headers for a single
506
+ request; this effectively ignores the headers
507
+ in the spec for a single request.
508
+ :type _headers: dict, optional
509
+ :param _host_index: set to override the host_index for a single
510
+ request; this effectively ignores the host_index
511
+ in the spec for a single request.
512
+ :type _host_index: int, optional
513
+ :return: Returns the result object.
514
+ """ # noqa: E501
515
+
516
+ _param = self._get_function_blocks_serialize(
517
+ function_id=function_id,
518
+ authorization=authorization,
519
+ _request_auth=_request_auth,
520
+ _content_type=_content_type,
521
+ _headers=_headers,
522
+ _host_index=_host_index
523
+ )
524
+
525
+ _response_types_map: Dict[str, Optional[str]] = {
526
+ '200': "BaseResponseFunctionBlocksResponse",
527
+ '422': "BaseResponse",
528
+ '404': "BaseResponse",
529
+ }
530
+ response_data = self.api_client.call_api(
531
+ *_param,
532
+ _request_timeout=_request_timeout
533
+ )
534
+ response_data.read()
535
+ return self.api_client.response_deserialize(
536
+ response_data=response_data,
537
+ response_types_map=_response_types_map,
538
+ )
539
+
540
+
541
+ @validate_call
542
+ def get_function_blocks_without_preload_content(
543
+ self,
544
+ function_id: StrictInt,
545
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
546
+ _request_timeout: Union[
547
+ None,
548
+ Annotated[StrictFloat, Field(gt=0)],
549
+ Tuple[
550
+ Annotated[StrictFloat, Field(gt=0)],
551
+ Annotated[StrictFloat, Field(gt=0)]
552
+ ]
553
+ ] = None,
554
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
555
+ _content_type: Optional[StrictStr] = None,
556
+ _headers: Optional[Dict[StrictStr, Any]] = None,
557
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
558
+ ) -> RESTResponseType:
559
+ """Get disassembly blocks related to the function
560
+
561
+ Get disassembly blocks related to the function
562
+
563
+ :param function_id: (required)
564
+ :type function_id: int
565
+ :param authorization: API Key bearer token
566
+ :type authorization: str
567
+ :param _request_timeout: timeout setting for this request. If one
568
+ number provided, it will be total request
569
+ timeout. It can also be a pair (tuple) of
570
+ (connection, read) timeouts.
571
+ :type _request_timeout: int, tuple(int, int), optional
572
+ :param _request_auth: set to override the auth_settings for an a single
573
+ request; this effectively ignores the
574
+ authentication in the spec for a single request.
575
+ :type _request_auth: dict, optional
576
+ :param _content_type: force content-type for the request.
577
+ :type _content_type: str, Optional
578
+ :param _headers: set to override the headers for a single
579
+ request; this effectively ignores the headers
580
+ in the spec for a single request.
581
+ :type _headers: dict, optional
582
+ :param _host_index: set to override the host_index for a single
583
+ request; this effectively ignores the host_index
584
+ in the spec for a single request.
585
+ :type _host_index: int, optional
586
+ :return: Returns the result object.
587
+ """ # noqa: E501
588
+
589
+ _param = self._get_function_blocks_serialize(
590
+ function_id=function_id,
591
+ authorization=authorization,
592
+ _request_auth=_request_auth,
593
+ _content_type=_content_type,
594
+ _headers=_headers,
595
+ _host_index=_host_index
596
+ )
597
+
598
+ _response_types_map: Dict[str, Optional[str]] = {
599
+ '200': "BaseResponseFunctionBlocksResponse",
600
+ '422': "BaseResponse",
601
+ '404': "BaseResponse",
602
+ }
603
+ response_data = self.api_client.call_api(
604
+ *_param,
605
+ _request_timeout=_request_timeout
606
+ )
607
+ return response_data.response
608
+
609
+
610
+ def _get_function_blocks_serialize(
611
+ self,
612
+ function_id,
613
+ authorization,
614
+ _request_auth,
615
+ _content_type,
616
+ _headers,
617
+ _host_index,
618
+ ) -> RequestSerialized:
619
+
620
+ _host = None
621
+
622
+ _collection_formats: Dict[str, str] = {
623
+ }
624
+
625
+ _path_params: Dict[str, str] = {}
626
+ _query_params: List[Tuple[str, str]] = []
627
+ _header_params: Dict[str, Optional[str]] = _headers or {}
628
+ _form_params: List[Tuple[str, str]] = []
629
+ _files: Dict[
630
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
631
+ ] = {}
632
+ _body_params: Optional[bytes] = None
633
+
634
+ # process the path parameters
635
+ if function_id is not None:
636
+ _path_params['function_id'] = function_id
637
+ # process the query parameters
638
+ # process the header parameters
639
+ if authorization is not None:
640
+ _header_params['authorization'] = authorization
641
+ # process the form parameters
642
+ # process the body parameter
643
+
644
+
645
+ # set the HTTP header `Accept`
646
+ if 'Accept' not in _header_params:
647
+ _header_params['Accept'] = self.api_client.select_header_accept(
648
+ [
649
+ 'application/json'
650
+ ]
651
+ )
652
+
653
+
654
+ # authentication setting
655
+ _auth_settings: List[str] = [
656
+ 'APIKey'
657
+ ]
658
+
659
+ return self.api_client.param_serialize(
660
+ method='GET',
661
+ resource_path='/v2/functions/{function_id}/blocks',
662
+ path_params=_path_params,
663
+ query_params=_query_params,
664
+ header_params=_header_params,
665
+ body=_body_params,
666
+ post_params=_form_params,
667
+ files=_files,
668
+ auth_settings=_auth_settings,
669
+ collection_formats=_collection_formats,
670
+ _host=_host,
671
+ _request_auth=_request_auth
672
+ )
673
+
674
+
675
+
676
+
677
+ @validate_call
678
+ def get_function_callees_callers(
679
+ self,
680
+ function_id: StrictInt,
681
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
682
+ _request_timeout: Union[
683
+ None,
684
+ Annotated[StrictFloat, Field(gt=0)],
685
+ Tuple[
686
+ Annotated[StrictFloat, Field(gt=0)],
687
+ Annotated[StrictFloat, Field(gt=0)]
688
+ ]
689
+ ] = None,
690
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
691
+ _content_type: Optional[StrictStr] = None,
692
+ _headers: Optional[Dict[StrictStr, Any]] = None,
693
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
694
+ ) -> BaseResponseCalleesCallerFunctionsResponse:
695
+ """Get list of functions that call or are called by the specified function
696
+
697
+
698
+ :param function_id: (required)
699
+ :type function_id: int
700
+ :param authorization: API Key bearer token
701
+ :type authorization: str
702
+ :param _request_timeout: timeout setting for this request. If one
703
+ number provided, it will be total request
704
+ timeout. It can also be a pair (tuple) of
705
+ (connection, read) timeouts.
706
+ :type _request_timeout: int, tuple(int, int), optional
707
+ :param _request_auth: set to override the auth_settings for an a single
708
+ request; this effectively ignores the
709
+ authentication in the spec for a single request.
710
+ :type _request_auth: dict, optional
711
+ :param _content_type: force content-type for the request.
712
+ :type _content_type: str, Optional
713
+ :param _headers: set to override the headers for a single
714
+ request; this effectively ignores the headers
715
+ in the spec for a single request.
716
+ :type _headers: dict, optional
717
+ :param _host_index: set to override the host_index for a single
718
+ request; this effectively ignores the host_index
719
+ in the spec for a single request.
720
+ :type _host_index: int, optional
721
+ :return: Returns the result object.
722
+ """ # noqa: E501
723
+
724
+ _param = self._get_function_callees_callers_serialize(
725
+ function_id=function_id,
726
+ authorization=authorization,
727
+ _request_auth=_request_auth,
728
+ _content_type=_content_type,
729
+ _headers=_headers,
730
+ _host_index=_host_index
731
+ )
732
+
733
+ _response_types_map: Dict[str, Optional[str]] = {
734
+ '200': "BaseResponseCalleesCallerFunctionsResponse",
735
+ '422': "BaseResponse",
736
+ }
737
+ response_data = self.api_client.call_api(
738
+ *_param,
739
+ _request_timeout=_request_timeout
740
+ )
741
+ response_data.read()
742
+ return self.api_client.response_deserialize(
743
+ response_data=response_data,
744
+ response_types_map=_response_types_map,
745
+ ).data
746
+
747
+
748
+ @validate_call
749
+ def get_function_callees_callers_with_http_info(
750
+ self,
751
+ function_id: StrictInt,
752
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
753
+ _request_timeout: Union[
754
+ None,
755
+ Annotated[StrictFloat, Field(gt=0)],
756
+ Tuple[
757
+ Annotated[StrictFloat, Field(gt=0)],
758
+ Annotated[StrictFloat, Field(gt=0)]
759
+ ]
760
+ ] = None,
761
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
762
+ _content_type: Optional[StrictStr] = None,
763
+ _headers: Optional[Dict[StrictStr, Any]] = None,
764
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
765
+ ) -> ApiResponse[BaseResponseCalleesCallerFunctionsResponse]:
766
+ """Get list of functions that call or are called by the specified function
767
+
768
+
769
+ :param function_id: (required)
770
+ :type function_id: int
771
+ :param authorization: API Key bearer token
772
+ :type authorization: str
773
+ :param _request_timeout: timeout setting for this request. If one
774
+ number provided, it will be total request
775
+ timeout. It can also be a pair (tuple) of
776
+ (connection, read) timeouts.
777
+ :type _request_timeout: int, tuple(int, int), optional
778
+ :param _request_auth: set to override the auth_settings for an a single
779
+ request; this effectively ignores the
780
+ authentication in the spec for a single request.
781
+ :type _request_auth: dict, optional
782
+ :param _content_type: force content-type for the request.
783
+ :type _content_type: str, Optional
784
+ :param _headers: set to override the headers for a single
785
+ request; this effectively ignores the headers
786
+ in the spec for a single request.
787
+ :type _headers: dict, optional
788
+ :param _host_index: set to override the host_index for a single
789
+ request; this effectively ignores the host_index
790
+ in the spec for a single request.
791
+ :type _host_index: int, optional
792
+ :return: Returns the result object.
793
+ """ # noqa: E501
794
+
795
+ _param = self._get_function_callees_callers_serialize(
796
+ function_id=function_id,
797
+ authorization=authorization,
798
+ _request_auth=_request_auth,
799
+ _content_type=_content_type,
800
+ _headers=_headers,
801
+ _host_index=_host_index
802
+ )
803
+
804
+ _response_types_map: Dict[str, Optional[str]] = {
805
+ '200': "BaseResponseCalleesCallerFunctionsResponse",
806
+ '422': "BaseResponse",
807
+ }
808
+ response_data = self.api_client.call_api(
809
+ *_param,
810
+ _request_timeout=_request_timeout
811
+ )
812
+ response_data.read()
813
+ return self.api_client.response_deserialize(
814
+ response_data=response_data,
815
+ response_types_map=_response_types_map,
816
+ )
817
+
818
+
819
+ @validate_call
820
+ def get_function_callees_callers_without_preload_content(
821
+ self,
822
+ function_id: StrictInt,
823
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
824
+ _request_timeout: Union[
825
+ None,
826
+ Annotated[StrictFloat, Field(gt=0)],
827
+ Tuple[
828
+ Annotated[StrictFloat, Field(gt=0)],
829
+ Annotated[StrictFloat, Field(gt=0)]
830
+ ]
831
+ ] = None,
832
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
833
+ _content_type: Optional[StrictStr] = None,
834
+ _headers: Optional[Dict[StrictStr, Any]] = None,
835
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
836
+ ) -> RESTResponseType:
837
+ """Get list of functions that call or are called by the specified function
838
+
839
+
840
+ :param function_id: (required)
841
+ :type function_id: int
842
+ :param authorization: API Key bearer token
843
+ :type authorization: str
844
+ :param _request_timeout: timeout setting for this request. If one
845
+ number provided, it will be total request
846
+ timeout. It can also be a pair (tuple) of
847
+ (connection, read) timeouts.
848
+ :type _request_timeout: int, tuple(int, int), optional
849
+ :param _request_auth: set to override the auth_settings for an a single
850
+ request; this effectively ignores the
851
+ authentication in the spec for a single request.
852
+ :type _request_auth: dict, optional
853
+ :param _content_type: force content-type for the request.
854
+ :type _content_type: str, Optional
855
+ :param _headers: set to override the headers for a single
856
+ request; this effectively ignores the headers
857
+ in the spec for a single request.
858
+ :type _headers: dict, optional
859
+ :param _host_index: set to override the host_index for a single
860
+ request; this effectively ignores the host_index
861
+ in the spec for a single request.
862
+ :type _host_index: int, optional
863
+ :return: Returns the result object.
864
+ """ # noqa: E501
865
+
866
+ _param = self._get_function_callees_callers_serialize(
867
+ function_id=function_id,
868
+ authorization=authorization,
869
+ _request_auth=_request_auth,
870
+ _content_type=_content_type,
871
+ _headers=_headers,
872
+ _host_index=_host_index
873
+ )
874
+
875
+ _response_types_map: Dict[str, Optional[str]] = {
876
+ '200': "BaseResponseCalleesCallerFunctionsResponse",
877
+ '422': "BaseResponse",
878
+ }
879
+ response_data = self.api_client.call_api(
880
+ *_param,
881
+ _request_timeout=_request_timeout
882
+ )
883
+ return response_data.response
884
+
885
+
886
+ def _get_function_callees_callers_serialize(
887
+ self,
888
+ function_id,
889
+ authorization,
890
+ _request_auth,
891
+ _content_type,
892
+ _headers,
893
+ _host_index,
894
+ ) -> RequestSerialized:
895
+
896
+ _host = None
897
+
898
+ _collection_formats: Dict[str, str] = {
899
+ }
900
+
901
+ _path_params: Dict[str, str] = {}
902
+ _query_params: List[Tuple[str, str]] = []
903
+ _header_params: Dict[str, Optional[str]] = _headers or {}
904
+ _form_params: List[Tuple[str, str]] = []
905
+ _files: Dict[
906
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
907
+ ] = {}
908
+ _body_params: Optional[bytes] = None
909
+
910
+ # process the path parameters
911
+ if function_id is not None:
912
+ _path_params['function_id'] = function_id
913
+ # process the query parameters
914
+ # process the header parameters
915
+ if authorization is not None:
916
+ _header_params['authorization'] = authorization
917
+ # process the form parameters
918
+ # process the body parameter
919
+
920
+
921
+ # set the HTTP header `Accept`
922
+ if 'Accept' not in _header_params:
923
+ _header_params['Accept'] = self.api_client.select_header_accept(
924
+ [
925
+ 'application/json'
926
+ ]
927
+ )
928
+
929
+
930
+ # authentication setting
931
+ _auth_settings: List[str] = [
932
+ 'APIKey'
933
+ ]
934
+
935
+ return self.api_client.param_serialize(
936
+ method='GET',
937
+ resource_path='/v2/functions/{function_id}/callees_callers',
938
+ path_params=_path_params,
939
+ query_params=_query_params,
940
+ header_params=_header_params,
941
+ body=_body_params,
942
+ post_params=_form_params,
943
+ files=_files,
944
+ auth_settings=_auth_settings,
945
+ collection_formats=_collection_formats,
946
+ _host=_host,
947
+ _request_auth=_request_auth
948
+ )
949
+
950
+
951
+
952
+
953
+ @validate_call
954
+ def get_function_capabilities(
955
+ self,
956
+ function_id: StrictInt,
957
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
958
+ _request_timeout: Union[
959
+ None,
960
+ Annotated[StrictFloat, Field(gt=0)],
961
+ Tuple[
962
+ Annotated[StrictFloat, Field(gt=0)],
963
+ Annotated[StrictFloat, Field(gt=0)]
964
+ ]
965
+ ] = None,
966
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
967
+ _content_type: Optional[StrictStr] = None,
968
+ _headers: Optional[Dict[StrictStr, Any]] = None,
969
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
970
+ ) -> BaseResponseFunctionCapabilityResponse:
971
+ """Retrieve a functions capabilities
972
+
973
+
974
+ :param function_id: (required)
975
+ :type function_id: int
976
+ :param authorization: API Key bearer token
977
+ :type authorization: str
978
+ :param _request_timeout: timeout setting for this request. If one
979
+ number provided, it will be total request
980
+ timeout. It can also be a pair (tuple) of
981
+ (connection, read) timeouts.
982
+ :type _request_timeout: int, tuple(int, int), optional
983
+ :param _request_auth: set to override the auth_settings for an a single
984
+ request; this effectively ignores the
985
+ authentication in the spec for a single request.
986
+ :type _request_auth: dict, optional
987
+ :param _content_type: force content-type for the request.
988
+ :type _content_type: str, Optional
989
+ :param _headers: set to override the headers for a single
990
+ request; this effectively ignores the headers
991
+ in the spec for a single request.
992
+ :type _headers: dict, optional
993
+ :param _host_index: set to override the host_index for a single
994
+ request; this effectively ignores the host_index
995
+ in the spec for a single request.
996
+ :type _host_index: int, optional
997
+ :return: Returns the result object.
998
+ """ # noqa: E501
999
+
1000
+ _param = self._get_function_capabilities_serialize(
1001
+ function_id=function_id,
1002
+ authorization=authorization,
1003
+ _request_auth=_request_auth,
1004
+ _content_type=_content_type,
1005
+ _headers=_headers,
1006
+ _host_index=_host_index
1007
+ )
1008
+
1009
+ _response_types_map: Dict[str, Optional[str]] = {
1010
+ '200': "BaseResponseFunctionCapabilityResponse",
1011
+ '422': "BaseResponse",
1012
+ '404': "BaseResponse",
1013
+ }
1014
+ response_data = self.api_client.call_api(
1015
+ *_param,
1016
+ _request_timeout=_request_timeout
1017
+ )
1018
+ response_data.read()
1019
+ return self.api_client.response_deserialize(
1020
+ response_data=response_data,
1021
+ response_types_map=_response_types_map,
1022
+ ).data
1023
+
1024
+
1025
+ @validate_call
1026
+ def get_function_capabilities_with_http_info(
1027
+ self,
1028
+ function_id: StrictInt,
1029
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1030
+ _request_timeout: Union[
1031
+ None,
1032
+ Annotated[StrictFloat, Field(gt=0)],
1033
+ Tuple[
1034
+ Annotated[StrictFloat, Field(gt=0)],
1035
+ Annotated[StrictFloat, Field(gt=0)]
1036
+ ]
1037
+ ] = None,
1038
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1039
+ _content_type: Optional[StrictStr] = None,
1040
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1041
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1042
+ ) -> ApiResponse[BaseResponseFunctionCapabilityResponse]:
1043
+ """Retrieve a functions capabilities
1044
+
1045
+
1046
+ :param function_id: (required)
1047
+ :type function_id: int
1048
+ :param authorization: API Key bearer token
1049
+ :type authorization: str
1050
+ :param _request_timeout: timeout setting for this request. If one
1051
+ number provided, it will be total request
1052
+ timeout. It can also be a pair (tuple) of
1053
+ (connection, read) timeouts.
1054
+ :type _request_timeout: int, tuple(int, int), optional
1055
+ :param _request_auth: set to override the auth_settings for an a single
1056
+ request; this effectively ignores the
1057
+ authentication in the spec for a single request.
1058
+ :type _request_auth: dict, optional
1059
+ :param _content_type: force content-type for the request.
1060
+ :type _content_type: str, Optional
1061
+ :param _headers: set to override the headers for a single
1062
+ request; this effectively ignores the headers
1063
+ in the spec for a single request.
1064
+ :type _headers: dict, optional
1065
+ :param _host_index: set to override the host_index for a single
1066
+ request; this effectively ignores the host_index
1067
+ in the spec for a single request.
1068
+ :type _host_index: int, optional
1069
+ :return: Returns the result object.
1070
+ """ # noqa: E501
1071
+
1072
+ _param = self._get_function_capabilities_serialize(
1073
+ function_id=function_id,
1074
+ authorization=authorization,
1075
+ _request_auth=_request_auth,
1076
+ _content_type=_content_type,
1077
+ _headers=_headers,
1078
+ _host_index=_host_index
1079
+ )
1080
+
1081
+ _response_types_map: Dict[str, Optional[str]] = {
1082
+ '200': "BaseResponseFunctionCapabilityResponse",
1083
+ '422': "BaseResponse",
1084
+ '404': "BaseResponse",
1085
+ }
1086
+ response_data = self.api_client.call_api(
1087
+ *_param,
1088
+ _request_timeout=_request_timeout
1089
+ )
1090
+ response_data.read()
1091
+ return self.api_client.response_deserialize(
1092
+ response_data=response_data,
1093
+ response_types_map=_response_types_map,
1094
+ )
1095
+
1096
+
1097
+ @validate_call
1098
+ def get_function_capabilities_without_preload_content(
1099
+ self,
1100
+ function_id: StrictInt,
1101
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1102
+ _request_timeout: Union[
1103
+ None,
1104
+ Annotated[StrictFloat, Field(gt=0)],
1105
+ Tuple[
1106
+ Annotated[StrictFloat, Field(gt=0)],
1107
+ Annotated[StrictFloat, Field(gt=0)]
1108
+ ]
1109
+ ] = None,
1110
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1111
+ _content_type: Optional[StrictStr] = None,
1112
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1113
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1114
+ ) -> RESTResponseType:
1115
+ """Retrieve a functions capabilities
1116
+
1117
+
1118
+ :param function_id: (required)
1119
+ :type function_id: int
1120
+ :param authorization: API Key bearer token
1121
+ :type authorization: str
1122
+ :param _request_timeout: timeout setting for this request. If one
1123
+ number provided, it will be total request
1124
+ timeout. It can also be a pair (tuple) of
1125
+ (connection, read) timeouts.
1126
+ :type _request_timeout: int, tuple(int, int), optional
1127
+ :param _request_auth: set to override the auth_settings for an a single
1128
+ request; this effectively ignores the
1129
+ authentication in the spec for a single request.
1130
+ :type _request_auth: dict, optional
1131
+ :param _content_type: force content-type for the request.
1132
+ :type _content_type: str, Optional
1133
+ :param _headers: set to override the headers for a single
1134
+ request; this effectively ignores the headers
1135
+ in the spec for a single request.
1136
+ :type _headers: dict, optional
1137
+ :param _host_index: set to override the host_index for a single
1138
+ request; this effectively ignores the host_index
1139
+ in the spec for a single request.
1140
+ :type _host_index: int, optional
1141
+ :return: Returns the result object.
1142
+ """ # noqa: E501
1143
+
1144
+ _param = self._get_function_capabilities_serialize(
1145
+ function_id=function_id,
1146
+ authorization=authorization,
1147
+ _request_auth=_request_auth,
1148
+ _content_type=_content_type,
1149
+ _headers=_headers,
1150
+ _host_index=_host_index
1151
+ )
1152
+
1153
+ _response_types_map: Dict[str, Optional[str]] = {
1154
+ '200': "BaseResponseFunctionCapabilityResponse",
1155
+ '422': "BaseResponse",
1156
+ '404': "BaseResponse",
1157
+ }
1158
+ response_data = self.api_client.call_api(
1159
+ *_param,
1160
+ _request_timeout=_request_timeout
1161
+ )
1162
+ return response_data.response
1163
+
1164
+
1165
+ def _get_function_capabilities_serialize(
1166
+ self,
1167
+ function_id,
1168
+ authorization,
1169
+ _request_auth,
1170
+ _content_type,
1171
+ _headers,
1172
+ _host_index,
1173
+ ) -> RequestSerialized:
1174
+
1175
+ _host = None
1176
+
1177
+ _collection_formats: Dict[str, str] = {
1178
+ }
1179
+
1180
+ _path_params: Dict[str, str] = {}
1181
+ _query_params: List[Tuple[str, str]] = []
1182
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1183
+ _form_params: List[Tuple[str, str]] = []
1184
+ _files: Dict[
1185
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1186
+ ] = {}
1187
+ _body_params: Optional[bytes] = None
1188
+
1189
+ # process the path parameters
1190
+ if function_id is not None:
1191
+ _path_params['function_id'] = function_id
1192
+ # process the query parameters
1193
+ # process the header parameters
1194
+ if authorization is not None:
1195
+ _header_params['authorization'] = authorization
1196
+ # process the form parameters
1197
+ # process the body parameter
1198
+
1199
+
1200
+ # set the HTTP header `Accept`
1201
+ if 'Accept' not in _header_params:
1202
+ _header_params['Accept'] = self.api_client.select_header_accept(
1203
+ [
1204
+ 'application/json'
1205
+ ]
1206
+ )
1207
+
1208
+
1209
+ # authentication setting
1210
+ _auth_settings: List[str] = [
1211
+ 'APIKey'
1212
+ ]
1213
+
1214
+ return self.api_client.param_serialize(
1215
+ method='GET',
1216
+ resource_path='/v2/functions/{function_id}/capabilities',
1217
+ path_params=_path_params,
1218
+ query_params=_query_params,
1219
+ header_params=_header_params,
1220
+ body=_body_params,
1221
+ post_params=_form_params,
1222
+ files=_files,
1223
+ auth_settings=_auth_settings,
1224
+ collection_formats=_collection_formats,
1225
+ _host=_host,
1226
+ _request_auth=_request_auth
1227
+ )
1228
+
1229
+
1230
+
1231
+
1232
+ @validate_call
1233
+ def get_function_details(
1234
+ self,
1235
+ function_id: StrictInt,
1236
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1237
+ _request_timeout: Union[
1238
+ None,
1239
+ Annotated[StrictFloat, Field(gt=0)],
1240
+ Tuple[
1241
+ Annotated[StrictFloat, Field(gt=0)],
1242
+ Annotated[StrictFloat, Field(gt=0)]
1243
+ ]
1244
+ ] = None,
1245
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1246
+ _content_type: Optional[StrictStr] = None,
1247
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1248
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1249
+ ) -> BaseResponseFunctionsDetailResponse:
1250
+ """Get function details
1251
+
1252
+
1253
+ :param function_id: (required)
1254
+ :type function_id: int
1255
+ :param authorization: API Key bearer token
1256
+ :type authorization: str
1257
+ :param _request_timeout: timeout setting for this request. If one
1258
+ number provided, it will be total request
1259
+ timeout. It can also be a pair (tuple) of
1260
+ (connection, read) timeouts.
1261
+ :type _request_timeout: int, tuple(int, int), optional
1262
+ :param _request_auth: set to override the auth_settings for an a single
1263
+ request; this effectively ignores the
1264
+ authentication in the spec for a single request.
1265
+ :type _request_auth: dict, optional
1266
+ :param _content_type: force content-type for the request.
1267
+ :type _content_type: str, Optional
1268
+ :param _headers: set to override the headers for a single
1269
+ request; this effectively ignores the headers
1270
+ in the spec for a single request.
1271
+ :type _headers: dict, optional
1272
+ :param _host_index: set to override the host_index for a single
1273
+ request; this effectively ignores the host_index
1274
+ in the spec for a single request.
1275
+ :type _host_index: int, optional
1276
+ :return: Returns the result object.
1277
+ """ # noqa: E501
1278
+
1279
+ _param = self._get_function_details_serialize(
1280
+ function_id=function_id,
1281
+ authorization=authorization,
1282
+ _request_auth=_request_auth,
1283
+ _content_type=_content_type,
1284
+ _headers=_headers,
1285
+ _host_index=_host_index
1286
+ )
1287
+
1288
+ _response_types_map: Dict[str, Optional[str]] = {
1289
+ '200': "BaseResponseFunctionsDetailResponse",
1290
+ '422': "BaseResponse",
1291
+ }
1292
+ response_data = self.api_client.call_api(
1293
+ *_param,
1294
+ _request_timeout=_request_timeout
1295
+ )
1296
+ response_data.read()
1297
+ return self.api_client.response_deserialize(
1298
+ response_data=response_data,
1299
+ response_types_map=_response_types_map,
1300
+ ).data
1301
+
1302
+
1303
+ @validate_call
1304
+ def get_function_details_with_http_info(
1305
+ self,
1306
+ function_id: StrictInt,
1307
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1308
+ _request_timeout: Union[
1309
+ None,
1310
+ Annotated[StrictFloat, Field(gt=0)],
1311
+ Tuple[
1312
+ Annotated[StrictFloat, Field(gt=0)],
1313
+ Annotated[StrictFloat, Field(gt=0)]
1314
+ ]
1315
+ ] = None,
1316
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1317
+ _content_type: Optional[StrictStr] = None,
1318
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1319
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1320
+ ) -> ApiResponse[BaseResponseFunctionsDetailResponse]:
1321
+ """Get function details
1322
+
1323
+
1324
+ :param function_id: (required)
1325
+ :type function_id: int
1326
+ :param authorization: API Key bearer token
1327
+ :type authorization: str
1328
+ :param _request_timeout: timeout setting for this request. If one
1329
+ number provided, it will be total request
1330
+ timeout. It can also be a pair (tuple) of
1331
+ (connection, read) timeouts.
1332
+ :type _request_timeout: int, tuple(int, int), optional
1333
+ :param _request_auth: set to override the auth_settings for an a single
1334
+ request; this effectively ignores the
1335
+ authentication in the spec for a single request.
1336
+ :type _request_auth: dict, optional
1337
+ :param _content_type: force content-type for the request.
1338
+ :type _content_type: str, Optional
1339
+ :param _headers: set to override the headers for a single
1340
+ request; this effectively ignores the headers
1341
+ in the spec for a single request.
1342
+ :type _headers: dict, optional
1343
+ :param _host_index: set to override the host_index for a single
1344
+ request; this effectively ignores the host_index
1345
+ in the spec for a single request.
1346
+ :type _host_index: int, optional
1347
+ :return: Returns the result object.
1348
+ """ # noqa: E501
1349
+
1350
+ _param = self._get_function_details_serialize(
1351
+ function_id=function_id,
1352
+ authorization=authorization,
1353
+ _request_auth=_request_auth,
1354
+ _content_type=_content_type,
1355
+ _headers=_headers,
1356
+ _host_index=_host_index
1357
+ )
1358
+
1359
+ _response_types_map: Dict[str, Optional[str]] = {
1360
+ '200': "BaseResponseFunctionsDetailResponse",
1361
+ '422': "BaseResponse",
1362
+ }
1363
+ response_data = self.api_client.call_api(
1364
+ *_param,
1365
+ _request_timeout=_request_timeout
1366
+ )
1367
+ response_data.read()
1368
+ return self.api_client.response_deserialize(
1369
+ response_data=response_data,
1370
+ response_types_map=_response_types_map,
1371
+ )
1372
+
1373
+
1374
+ @validate_call
1375
+ def get_function_details_without_preload_content(
1376
+ self,
1377
+ function_id: StrictInt,
1378
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1379
+ _request_timeout: Union[
1380
+ None,
1381
+ Annotated[StrictFloat, Field(gt=0)],
1382
+ Tuple[
1383
+ Annotated[StrictFloat, Field(gt=0)],
1384
+ Annotated[StrictFloat, Field(gt=0)]
1385
+ ]
1386
+ ] = None,
1387
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1388
+ _content_type: Optional[StrictStr] = None,
1389
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1390
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1391
+ ) -> RESTResponseType:
1392
+ """Get function details
1393
+
1394
+
1395
+ :param function_id: (required)
1396
+ :type function_id: int
1397
+ :param authorization: API Key bearer token
1398
+ :type authorization: str
1399
+ :param _request_timeout: timeout setting for this request. If one
1400
+ number provided, it will be total request
1401
+ timeout. It can also be a pair (tuple) of
1402
+ (connection, read) timeouts.
1403
+ :type _request_timeout: int, tuple(int, int), optional
1404
+ :param _request_auth: set to override the auth_settings for an a single
1405
+ request; this effectively ignores the
1406
+ authentication in the spec for a single request.
1407
+ :type _request_auth: dict, optional
1408
+ :param _content_type: force content-type for the request.
1409
+ :type _content_type: str, Optional
1410
+ :param _headers: set to override the headers for a single
1411
+ request; this effectively ignores the headers
1412
+ in the spec for a single request.
1413
+ :type _headers: dict, optional
1414
+ :param _host_index: set to override the host_index for a single
1415
+ request; this effectively ignores the host_index
1416
+ in the spec for a single request.
1417
+ :type _host_index: int, optional
1418
+ :return: Returns the result object.
1419
+ """ # noqa: E501
1420
+
1421
+ _param = self._get_function_details_serialize(
1422
+ function_id=function_id,
1423
+ authorization=authorization,
1424
+ _request_auth=_request_auth,
1425
+ _content_type=_content_type,
1426
+ _headers=_headers,
1427
+ _host_index=_host_index
1428
+ )
1429
+
1430
+ _response_types_map: Dict[str, Optional[str]] = {
1431
+ '200': "BaseResponseFunctionsDetailResponse",
1432
+ '422': "BaseResponse",
1433
+ }
1434
+ response_data = self.api_client.call_api(
1435
+ *_param,
1436
+ _request_timeout=_request_timeout
1437
+ )
1438
+ return response_data.response
1439
+
1440
+
1441
+ def _get_function_details_serialize(
1442
+ self,
1443
+ function_id,
1444
+ authorization,
1445
+ _request_auth,
1446
+ _content_type,
1447
+ _headers,
1448
+ _host_index,
1449
+ ) -> RequestSerialized:
1450
+
1451
+ _host = None
1452
+
1453
+ _collection_formats: Dict[str, str] = {
1454
+ }
1455
+
1456
+ _path_params: Dict[str, str] = {}
1457
+ _query_params: List[Tuple[str, str]] = []
1458
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1459
+ _form_params: List[Tuple[str, str]] = []
1460
+ _files: Dict[
1461
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1462
+ ] = {}
1463
+ _body_params: Optional[bytes] = None
1464
+
1465
+ # process the path parameters
1466
+ if function_id is not None:
1467
+ _path_params['function_id'] = function_id
1468
+ # process the query parameters
1469
+ # process the header parameters
1470
+ if authorization is not None:
1471
+ _header_params['authorization'] = authorization
1472
+ # process the form parameters
1473
+ # process the body parameter
1474
+
1475
+
1476
+ # set the HTTP header `Accept`
1477
+ if 'Accept' not in _header_params:
1478
+ _header_params['Accept'] = self.api_client.select_header_accept(
1479
+ [
1480
+ 'application/json'
1481
+ ]
1482
+ )
1483
+
1484
+
1485
+ # authentication setting
1486
+ _auth_settings: List[str] = [
1487
+ 'APIKey'
1488
+ ]
1489
+
1490
+ return self.api_client.param_serialize(
1491
+ method='GET',
1492
+ resource_path='/v2/functions/{function_id}',
1493
+ path_params=_path_params,
1494
+ query_params=_query_params,
1495
+ header_params=_header_params,
1496
+ body=_body_params,
1497
+ post_params=_form_params,
1498
+ files=_files,
1499
+ auth_settings=_auth_settings,
1500
+ collection_formats=_collection_formats,
1501
+ _host=_host,
1502
+ _request_auth=_request_auth
1503
+ )
1504
+
1505
+
1506
+
1507
+
1508
+ @validate_call
1509
+ def get_function_strings(
1510
+ self,
1511
+ function_id: StrictInt,
1512
+ page: Annotated[Optional[Annotated[int, Field(le=100000, strict=True, ge=1)]], Field(description="The page number to retrieve.")] = None,
1513
+ page_size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="Number of items per page.")] = None,
1514
+ search: Annotated[Optional[StrictStr], Field(description="Search is applied to string value")] = None,
1515
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1516
+ _request_timeout: Union[
1517
+ None,
1518
+ Annotated[StrictFloat, Field(gt=0)],
1519
+ Tuple[
1520
+ Annotated[StrictFloat, Field(gt=0)],
1521
+ Annotated[StrictFloat, Field(gt=0)]
1522
+ ]
1523
+ ] = None,
1524
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1525
+ _content_type: Optional[StrictStr] = None,
1526
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1527
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1528
+ ) -> BaseResponseFunctionStringsResponse:
1529
+ """Get string information found in the function
1530
+
1531
+ Get string information found in the function
1532
+
1533
+ :param function_id: (required)
1534
+ :type function_id: int
1535
+ :param page: The page number to retrieve.
1536
+ :type page: int
1537
+ :param page_size: Number of items per page.
1538
+ :type page_size: int
1539
+ :param search: Search is applied to string value
1540
+ :type search: str
1541
+ :param authorization: API Key bearer token
1542
+ :type authorization: str
1543
+ :param _request_timeout: timeout setting for this request. If one
1544
+ number provided, it will be total request
1545
+ timeout. It can also be a pair (tuple) of
1546
+ (connection, read) timeouts.
1547
+ :type _request_timeout: int, tuple(int, int), optional
1548
+ :param _request_auth: set to override the auth_settings for an a single
1549
+ request; this effectively ignores the
1550
+ authentication in the spec for a single request.
1551
+ :type _request_auth: dict, optional
1552
+ :param _content_type: force content-type for the request.
1553
+ :type _content_type: str, Optional
1554
+ :param _headers: set to override the headers for a single
1555
+ request; this effectively ignores the headers
1556
+ in the spec for a single request.
1557
+ :type _headers: dict, optional
1558
+ :param _host_index: set to override the host_index for a single
1559
+ request; this effectively ignores the host_index
1560
+ in the spec for a single request.
1561
+ :type _host_index: int, optional
1562
+ :return: Returns the result object.
1563
+ """ # noqa: E501
1564
+
1565
+ _param = self._get_function_strings_serialize(
1566
+ function_id=function_id,
1567
+ page=page,
1568
+ page_size=page_size,
1569
+ search=search,
1570
+ authorization=authorization,
1571
+ _request_auth=_request_auth,
1572
+ _content_type=_content_type,
1573
+ _headers=_headers,
1574
+ _host_index=_host_index
1575
+ )
1576
+
1577
+ _response_types_map: Dict[str, Optional[str]] = {
1578
+ '200': "BaseResponseFunctionStringsResponse",
1579
+ '422': "BaseResponse",
1580
+ }
1581
+ response_data = self.api_client.call_api(
1582
+ *_param,
1583
+ _request_timeout=_request_timeout
1584
+ )
1585
+ response_data.read()
1586
+ return self.api_client.response_deserialize(
1587
+ response_data=response_data,
1588
+ response_types_map=_response_types_map,
1589
+ ).data
1590
+
1591
+
1592
+ @validate_call
1593
+ def get_function_strings_with_http_info(
1594
+ self,
1595
+ function_id: StrictInt,
1596
+ page: Annotated[Optional[Annotated[int, Field(le=100000, strict=True, ge=1)]], Field(description="The page number to retrieve.")] = None,
1597
+ page_size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="Number of items per page.")] = None,
1598
+ search: Annotated[Optional[StrictStr], Field(description="Search is applied to string value")] = None,
1599
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1600
+ _request_timeout: Union[
1601
+ None,
1602
+ Annotated[StrictFloat, Field(gt=0)],
1603
+ Tuple[
1604
+ Annotated[StrictFloat, Field(gt=0)],
1605
+ Annotated[StrictFloat, Field(gt=0)]
1606
+ ]
1607
+ ] = None,
1608
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1609
+ _content_type: Optional[StrictStr] = None,
1610
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1611
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1612
+ ) -> ApiResponse[BaseResponseFunctionStringsResponse]:
1613
+ """Get string information found in the function
1614
+
1615
+ Get string information found in the function
1616
+
1617
+ :param function_id: (required)
1618
+ :type function_id: int
1619
+ :param page: The page number to retrieve.
1620
+ :type page: int
1621
+ :param page_size: Number of items per page.
1622
+ :type page_size: int
1623
+ :param search: Search is applied to string value
1624
+ :type search: str
1625
+ :param authorization: API Key bearer token
1626
+ :type authorization: str
1627
+ :param _request_timeout: timeout setting for this request. If one
1628
+ number provided, it will be total request
1629
+ timeout. It can also be a pair (tuple) of
1630
+ (connection, read) timeouts.
1631
+ :type _request_timeout: int, tuple(int, int), optional
1632
+ :param _request_auth: set to override the auth_settings for an a single
1633
+ request; this effectively ignores the
1634
+ authentication in the spec for a single request.
1635
+ :type _request_auth: dict, optional
1636
+ :param _content_type: force content-type for the request.
1637
+ :type _content_type: str, Optional
1638
+ :param _headers: set to override the headers for a single
1639
+ request; this effectively ignores the headers
1640
+ in the spec for a single request.
1641
+ :type _headers: dict, optional
1642
+ :param _host_index: set to override the host_index for a single
1643
+ request; this effectively ignores the host_index
1644
+ in the spec for a single request.
1645
+ :type _host_index: int, optional
1646
+ :return: Returns the result object.
1647
+ """ # noqa: E501
1648
+
1649
+ _param = self._get_function_strings_serialize(
1650
+ function_id=function_id,
1651
+ page=page,
1652
+ page_size=page_size,
1653
+ search=search,
1654
+ authorization=authorization,
1655
+ _request_auth=_request_auth,
1656
+ _content_type=_content_type,
1657
+ _headers=_headers,
1658
+ _host_index=_host_index
1659
+ )
1660
+
1661
+ _response_types_map: Dict[str, Optional[str]] = {
1662
+ '200': "BaseResponseFunctionStringsResponse",
1663
+ '422': "BaseResponse",
1664
+ }
1665
+ response_data = self.api_client.call_api(
1666
+ *_param,
1667
+ _request_timeout=_request_timeout
1668
+ )
1669
+ response_data.read()
1670
+ return self.api_client.response_deserialize(
1671
+ response_data=response_data,
1672
+ response_types_map=_response_types_map,
1673
+ )
1674
+
1675
+
1676
+ @validate_call
1677
+ def get_function_strings_without_preload_content(
1678
+ self,
1679
+ function_id: StrictInt,
1680
+ page: Annotated[Optional[Annotated[int, Field(le=100000, strict=True, ge=1)]], Field(description="The page number to retrieve.")] = None,
1681
+ page_size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="Number of items per page.")] = None,
1682
+ search: Annotated[Optional[StrictStr], Field(description="Search is applied to string value")] = None,
1683
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1684
+ _request_timeout: Union[
1685
+ None,
1686
+ Annotated[StrictFloat, Field(gt=0)],
1687
+ Tuple[
1688
+ Annotated[StrictFloat, Field(gt=0)],
1689
+ Annotated[StrictFloat, Field(gt=0)]
1690
+ ]
1691
+ ] = None,
1692
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1693
+ _content_type: Optional[StrictStr] = None,
1694
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1695
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1696
+ ) -> RESTResponseType:
1697
+ """Get string information found in the function
1698
+
1699
+ Get string information found in the function
1700
+
1701
+ :param function_id: (required)
1702
+ :type function_id: int
1703
+ :param page: The page number to retrieve.
1704
+ :type page: int
1705
+ :param page_size: Number of items per page.
1706
+ :type page_size: int
1707
+ :param search: Search is applied to string value
1708
+ :type search: str
1709
+ :param authorization: API Key bearer token
1710
+ :type authorization: str
1711
+ :param _request_timeout: timeout setting for this request. If one
1712
+ number provided, it will be total request
1713
+ timeout. It can also be a pair (tuple) of
1714
+ (connection, read) timeouts.
1715
+ :type _request_timeout: int, tuple(int, int), optional
1716
+ :param _request_auth: set to override the auth_settings for an a single
1717
+ request; this effectively ignores the
1718
+ authentication in the spec for a single request.
1719
+ :type _request_auth: dict, optional
1720
+ :param _content_type: force content-type for the request.
1721
+ :type _content_type: str, Optional
1722
+ :param _headers: set to override the headers for a single
1723
+ request; this effectively ignores the headers
1724
+ in the spec for a single request.
1725
+ :type _headers: dict, optional
1726
+ :param _host_index: set to override the host_index for a single
1727
+ request; this effectively ignores the host_index
1728
+ in the spec for a single request.
1729
+ :type _host_index: int, optional
1730
+ :return: Returns the result object.
1731
+ """ # noqa: E501
1732
+
1733
+ _param = self._get_function_strings_serialize(
1734
+ function_id=function_id,
1735
+ page=page,
1736
+ page_size=page_size,
1737
+ search=search,
1738
+ authorization=authorization,
1739
+ _request_auth=_request_auth,
1740
+ _content_type=_content_type,
1741
+ _headers=_headers,
1742
+ _host_index=_host_index
1743
+ )
1744
+
1745
+ _response_types_map: Dict[str, Optional[str]] = {
1746
+ '200': "BaseResponseFunctionStringsResponse",
1747
+ '422': "BaseResponse",
1748
+ }
1749
+ response_data = self.api_client.call_api(
1750
+ *_param,
1751
+ _request_timeout=_request_timeout
1752
+ )
1753
+ return response_data.response
1754
+
1755
+
1756
+ def _get_function_strings_serialize(
1757
+ self,
1758
+ function_id,
1759
+ page,
1760
+ page_size,
1761
+ search,
1762
+ authorization,
1763
+ _request_auth,
1764
+ _content_type,
1765
+ _headers,
1766
+ _host_index,
1767
+ ) -> RequestSerialized:
1768
+
1769
+ _host = None
1770
+
1771
+ _collection_formats: Dict[str, str] = {
1772
+ }
1773
+
1774
+ _path_params: Dict[str, str] = {}
1775
+ _query_params: List[Tuple[str, str]] = []
1776
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1777
+ _form_params: List[Tuple[str, str]] = []
1778
+ _files: Dict[
1779
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1780
+ ] = {}
1781
+ _body_params: Optional[bytes] = None
1782
+
1783
+ # process the path parameters
1784
+ if function_id is not None:
1785
+ _path_params['function_id'] = function_id
1786
+ # process the query parameters
1787
+ if page is not None:
1788
+
1789
+ _query_params.append(('page', page))
1790
+
1791
+ if page_size is not None:
1792
+
1793
+ _query_params.append(('page_size', page_size))
1794
+
1795
+ if search is not None:
1796
+
1797
+ _query_params.append(('search', search))
1798
+
1799
+ # process the header parameters
1800
+ if authorization is not None:
1801
+ _header_params['authorization'] = authorization
1802
+ # process the form parameters
1803
+ # process the body parameter
1804
+
1805
+
1806
+ # set the HTTP header `Accept`
1807
+ if 'Accept' not in _header_params:
1808
+ _header_params['Accept'] = self.api_client.select_header_accept(
1809
+ [
1810
+ 'application/json'
1811
+ ]
1812
+ )
1813
+
1814
+
1815
+ # authentication setting
1816
+ _auth_settings: List[str] = [
1817
+ 'APIKey'
1818
+ ]
1819
+
1820
+ return self.api_client.param_serialize(
1821
+ method='GET',
1822
+ resource_path='/v2/functions/{function_id}/strings',
1823
+ path_params=_path_params,
1824
+ query_params=_query_params,
1825
+ header_params=_header_params,
1826
+ body=_body_params,
1827
+ post_params=_form_params,
1828
+ files=_files,
1829
+ auth_settings=_auth_settings,
1830
+ collection_formats=_collection_formats,
1831
+ _host=_host,
1832
+ _request_auth=_request_auth
1833
+ )
1834
+
1835
+
1836
+
1837
+
1838
+ @validate_call
1839
+ def get_similar_functions(
1840
+ self,
1841
+ function_id: StrictInt,
1842
+ limit: Annotated[Optional[StrictInt], Field(description="Number of similar functions to return")] = None,
1843
+ distance: Annotated[Optional[Union[Annotated[float, Field(le=1.0, strict=True, ge=0.0)], Annotated[int, Field(le=1, strict=True, ge=0)]]], Field(description="Maximum cosine distance")] = None,
1844
+ collection_ids: Annotated[Optional[List[Optional[StrictInt]]], Field(description="Collection filtering by IDs")] = None,
1845
+ debug: Annotated[Optional[StrictBool], Field(description="Only return matching debug functions")] = None,
1846
+ debug_types: Annotated[Optional[List[StrictStr]], Field(description="If limiting results to functions with debug names, which type of debug names to include?")] = None,
1847
+ binary_ids: Annotated[Optional[List[Optional[StrictInt]]], Field(description="Limit similar functions to specific binaries")] = None,
1848
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1849
+ _request_timeout: Union[
1850
+ None,
1851
+ Annotated[StrictFloat, Field(gt=0)],
1852
+ Tuple[
1853
+ Annotated[StrictFloat, Field(gt=0)],
1854
+ Annotated[StrictFloat, Field(gt=0)]
1855
+ ]
1856
+ ] = None,
1857
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1858
+ _content_type: Optional[StrictStr] = None,
1859
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1860
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1861
+ ) -> BaseResponseListSimilarFunctionsResponse:
1862
+ """Get list of similar functions
1863
+
1864
+
1865
+ :param function_id: (required)
1866
+ :type function_id: int
1867
+ :param limit: Number of similar functions to return
1868
+ :type limit: int
1869
+ :param distance: Maximum cosine distance
1870
+ :type distance: float
1871
+ :param collection_ids: Collection filtering by IDs
1872
+ :type collection_ids: List[Optional[int]]
1873
+ :param debug: Only return matching debug functions
1874
+ :type debug: bool
1875
+ :param debug_types: If limiting results to functions with debug names, which type of debug names to include?
1876
+ :type debug_types: List[str]
1877
+ :param binary_ids: Limit similar functions to specific binaries
1878
+ :type binary_ids: List[Optional[int]]
1879
+ :param authorization: API Key bearer token
1880
+ :type authorization: str
1881
+ :param _request_timeout: timeout setting for this request. If one
1882
+ number provided, it will be total request
1883
+ timeout. It can also be a pair (tuple) of
1884
+ (connection, read) timeouts.
1885
+ :type _request_timeout: int, tuple(int, int), optional
1886
+ :param _request_auth: set to override the auth_settings for an a single
1887
+ request; this effectively ignores the
1888
+ authentication in the spec for a single request.
1889
+ :type _request_auth: dict, optional
1890
+ :param _content_type: force content-type for the request.
1891
+ :type _content_type: str, Optional
1892
+ :param _headers: set to override the headers for a single
1893
+ request; this effectively ignores the headers
1894
+ in the spec for a single request.
1895
+ :type _headers: dict, optional
1896
+ :param _host_index: set to override the host_index for a single
1897
+ request; this effectively ignores the host_index
1898
+ in the spec for a single request.
1899
+ :type _host_index: int, optional
1900
+ :return: Returns the result object.
1901
+ """ # noqa: E501
1902
+
1903
+ _param = self._get_similar_functions_serialize(
1904
+ function_id=function_id,
1905
+ limit=limit,
1906
+ distance=distance,
1907
+ collection_ids=collection_ids,
1908
+ debug=debug,
1909
+ debug_types=debug_types,
1910
+ binary_ids=binary_ids,
1911
+ authorization=authorization,
1912
+ _request_auth=_request_auth,
1913
+ _content_type=_content_type,
1914
+ _headers=_headers,
1915
+ _host_index=_host_index
1916
+ )
1917
+
1918
+ _response_types_map: Dict[str, Optional[str]] = {
1919
+ '200': "BaseResponseListSimilarFunctionsResponse",
1920
+ '422': "BaseResponse",
1921
+ }
1922
+ response_data = self.api_client.call_api(
1923
+ *_param,
1924
+ _request_timeout=_request_timeout
1925
+ )
1926
+ response_data.read()
1927
+ return self.api_client.response_deserialize(
1928
+ response_data=response_data,
1929
+ response_types_map=_response_types_map,
1930
+ ).data
1931
+
1932
+
1933
+ @validate_call
1934
+ def get_similar_functions_with_http_info(
1935
+ self,
1936
+ function_id: StrictInt,
1937
+ limit: Annotated[Optional[StrictInt], Field(description="Number of similar functions to return")] = None,
1938
+ distance: Annotated[Optional[Union[Annotated[float, Field(le=1.0, strict=True, ge=0.0)], Annotated[int, Field(le=1, strict=True, ge=0)]]], Field(description="Maximum cosine distance")] = None,
1939
+ collection_ids: Annotated[Optional[List[Optional[StrictInt]]], Field(description="Collection filtering by IDs")] = None,
1940
+ debug: Annotated[Optional[StrictBool], Field(description="Only return matching debug functions")] = None,
1941
+ debug_types: Annotated[Optional[List[StrictStr]], Field(description="If limiting results to functions with debug names, which type of debug names to include?")] = None,
1942
+ binary_ids: Annotated[Optional[List[Optional[StrictInt]]], Field(description="Limit similar functions to specific binaries")] = None,
1943
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
1944
+ _request_timeout: Union[
1945
+ None,
1946
+ Annotated[StrictFloat, Field(gt=0)],
1947
+ Tuple[
1948
+ Annotated[StrictFloat, Field(gt=0)],
1949
+ Annotated[StrictFloat, Field(gt=0)]
1950
+ ]
1951
+ ] = None,
1952
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1953
+ _content_type: Optional[StrictStr] = None,
1954
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1955
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1956
+ ) -> ApiResponse[BaseResponseListSimilarFunctionsResponse]:
1957
+ """Get list of similar functions
1958
+
1959
+
1960
+ :param function_id: (required)
1961
+ :type function_id: int
1962
+ :param limit: Number of similar functions to return
1963
+ :type limit: int
1964
+ :param distance: Maximum cosine distance
1965
+ :type distance: float
1966
+ :param collection_ids: Collection filtering by IDs
1967
+ :type collection_ids: List[Optional[int]]
1968
+ :param debug: Only return matching debug functions
1969
+ :type debug: bool
1970
+ :param debug_types: If limiting results to functions with debug names, which type of debug names to include?
1971
+ :type debug_types: List[str]
1972
+ :param binary_ids: Limit similar functions to specific binaries
1973
+ :type binary_ids: List[Optional[int]]
1974
+ :param authorization: API Key bearer token
1975
+ :type authorization: str
1976
+ :param _request_timeout: timeout setting for this request. If one
1977
+ number provided, it will be total request
1978
+ timeout. It can also be a pair (tuple) of
1979
+ (connection, read) timeouts.
1980
+ :type _request_timeout: int, tuple(int, int), optional
1981
+ :param _request_auth: set to override the auth_settings for an a single
1982
+ request; this effectively ignores the
1983
+ authentication in the spec for a single request.
1984
+ :type _request_auth: dict, optional
1985
+ :param _content_type: force content-type for the request.
1986
+ :type _content_type: str, Optional
1987
+ :param _headers: set to override the headers for a single
1988
+ request; this effectively ignores the headers
1989
+ in the spec for a single request.
1990
+ :type _headers: dict, optional
1991
+ :param _host_index: set to override the host_index for a single
1992
+ request; this effectively ignores the host_index
1993
+ in the spec for a single request.
1994
+ :type _host_index: int, optional
1995
+ :return: Returns the result object.
1996
+ """ # noqa: E501
1997
+
1998
+ _param = self._get_similar_functions_serialize(
1999
+ function_id=function_id,
2000
+ limit=limit,
2001
+ distance=distance,
2002
+ collection_ids=collection_ids,
2003
+ debug=debug,
2004
+ debug_types=debug_types,
2005
+ binary_ids=binary_ids,
2006
+ authorization=authorization,
2007
+ _request_auth=_request_auth,
2008
+ _content_type=_content_type,
2009
+ _headers=_headers,
2010
+ _host_index=_host_index
2011
+ )
2012
+
2013
+ _response_types_map: Dict[str, Optional[str]] = {
2014
+ '200': "BaseResponseListSimilarFunctionsResponse",
2015
+ '422': "BaseResponse",
2016
+ }
2017
+ response_data = self.api_client.call_api(
2018
+ *_param,
2019
+ _request_timeout=_request_timeout
2020
+ )
2021
+ response_data.read()
2022
+ return self.api_client.response_deserialize(
2023
+ response_data=response_data,
2024
+ response_types_map=_response_types_map,
2025
+ )
2026
+
2027
+
2028
+ @validate_call
2029
+ def get_similar_functions_without_preload_content(
2030
+ self,
2031
+ function_id: StrictInt,
2032
+ limit: Annotated[Optional[StrictInt], Field(description="Number of similar functions to return")] = None,
2033
+ distance: Annotated[Optional[Union[Annotated[float, Field(le=1.0, strict=True, ge=0.0)], Annotated[int, Field(le=1, strict=True, ge=0)]]], Field(description="Maximum cosine distance")] = None,
2034
+ collection_ids: Annotated[Optional[List[Optional[StrictInt]]], Field(description="Collection filtering by IDs")] = None,
2035
+ debug: Annotated[Optional[StrictBool], Field(description="Only return matching debug functions")] = None,
2036
+ debug_types: Annotated[Optional[List[StrictStr]], Field(description="If limiting results to functions with debug names, which type of debug names to include?")] = None,
2037
+ binary_ids: Annotated[Optional[List[Optional[StrictInt]]], Field(description="Limit similar functions to specific binaries")] = None,
2038
+ authorization: Annotated[Optional[StrictStr], Field(description="API Key bearer token")] = None,
2039
+ _request_timeout: Union[
2040
+ None,
2041
+ Annotated[StrictFloat, Field(gt=0)],
2042
+ Tuple[
2043
+ Annotated[StrictFloat, Field(gt=0)],
2044
+ Annotated[StrictFloat, Field(gt=0)]
2045
+ ]
2046
+ ] = None,
2047
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2048
+ _content_type: Optional[StrictStr] = None,
2049
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2050
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2051
+ ) -> RESTResponseType:
2052
+ """Get list of similar functions
2053
+
2054
+
2055
+ :param function_id: (required)
2056
+ :type function_id: int
2057
+ :param limit: Number of similar functions to return
2058
+ :type limit: int
2059
+ :param distance: Maximum cosine distance
2060
+ :type distance: float
2061
+ :param collection_ids: Collection filtering by IDs
2062
+ :type collection_ids: List[Optional[int]]
2063
+ :param debug: Only return matching debug functions
2064
+ :type debug: bool
2065
+ :param debug_types: If limiting results to functions with debug names, which type of debug names to include?
2066
+ :type debug_types: List[str]
2067
+ :param binary_ids: Limit similar functions to specific binaries
2068
+ :type binary_ids: List[Optional[int]]
2069
+ :param authorization: API Key bearer token
2070
+ :type authorization: str
2071
+ :param _request_timeout: timeout setting for this request. If one
2072
+ number provided, it will be total request
2073
+ timeout. It can also be a pair (tuple) of
2074
+ (connection, read) timeouts.
2075
+ :type _request_timeout: int, tuple(int, int), optional
2076
+ :param _request_auth: set to override the auth_settings for an a single
2077
+ request; this effectively ignores the
2078
+ authentication in the spec for a single request.
2079
+ :type _request_auth: dict, optional
2080
+ :param _content_type: force content-type for the request.
2081
+ :type _content_type: str, Optional
2082
+ :param _headers: set to override the headers for a single
2083
+ request; this effectively ignores the headers
2084
+ in the spec for a single request.
2085
+ :type _headers: dict, optional
2086
+ :param _host_index: set to override the host_index for a single
2087
+ request; this effectively ignores the host_index
2088
+ in the spec for a single request.
2089
+ :type _host_index: int, optional
2090
+ :return: Returns the result object.
2091
+ """ # noqa: E501
2092
+
2093
+ _param = self._get_similar_functions_serialize(
2094
+ function_id=function_id,
2095
+ limit=limit,
2096
+ distance=distance,
2097
+ collection_ids=collection_ids,
2098
+ debug=debug,
2099
+ debug_types=debug_types,
2100
+ binary_ids=binary_ids,
2101
+ authorization=authorization,
2102
+ _request_auth=_request_auth,
2103
+ _content_type=_content_type,
2104
+ _headers=_headers,
2105
+ _host_index=_host_index
2106
+ )
2107
+
2108
+ _response_types_map: Dict[str, Optional[str]] = {
2109
+ '200': "BaseResponseListSimilarFunctionsResponse",
2110
+ '422': "BaseResponse",
2111
+ }
2112
+ response_data = self.api_client.call_api(
2113
+ *_param,
2114
+ _request_timeout=_request_timeout
2115
+ )
2116
+ return response_data.response
2117
+
2118
+
2119
+ def _get_similar_functions_serialize(
2120
+ self,
2121
+ function_id,
2122
+ limit,
2123
+ distance,
2124
+ collection_ids,
2125
+ debug,
2126
+ debug_types,
2127
+ binary_ids,
2128
+ authorization,
2129
+ _request_auth,
2130
+ _content_type,
2131
+ _headers,
2132
+ _host_index,
2133
+ ) -> RequestSerialized:
2134
+
2135
+ _host = None
2136
+
2137
+ _collection_formats: Dict[str, str] = {
2138
+ 'collection_ids': 'multi',
2139
+ 'debug_types': 'multi',
2140
+ 'binary_ids': 'multi',
2141
+ }
2142
+
2143
+ _path_params: Dict[str, str] = {}
2144
+ _query_params: List[Tuple[str, str]] = []
2145
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2146
+ _form_params: List[Tuple[str, str]] = []
2147
+ _files: Dict[
2148
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
2149
+ ] = {}
2150
+ _body_params: Optional[bytes] = None
2151
+
2152
+ # process the path parameters
2153
+ if function_id is not None:
2154
+ _path_params['function_id'] = function_id
2155
+ # process the query parameters
2156
+ if limit is not None:
2157
+
2158
+ _query_params.append(('limit', limit))
2159
+
2160
+ if distance is not None:
2161
+
2162
+ _query_params.append(('distance', distance))
2163
+
2164
+ if collection_ids is not None:
2165
+
2166
+ _query_params.append(('collection_ids', collection_ids))
2167
+
2168
+ if debug is not None:
2169
+
2170
+ _query_params.append(('debug', debug))
2171
+
2172
+ if debug_types is not None:
2173
+
2174
+ _query_params.append(('debug_types', debug_types))
2175
+
2176
+ if binary_ids is not None:
2177
+
2178
+ _query_params.append(('binary_ids', binary_ids))
2179
+
2180
+ # process the header parameters
2181
+ if authorization is not None:
2182
+ _header_params['authorization'] = authorization
2183
+ # process the form parameters
2184
+ # process the body parameter
2185
+
2186
+
2187
+ # set the HTTP header `Accept`
2188
+ if 'Accept' not in _header_params:
2189
+ _header_params['Accept'] = self.api_client.select_header_accept(
2190
+ [
2191
+ 'application/json'
2192
+ ]
2193
+ )
2194
+
2195
+
2196
+ # authentication setting
2197
+ _auth_settings: List[str] = [
2198
+ 'APIKey'
2199
+ ]
2200
+
2201
+ return self.api_client.param_serialize(
2202
+ method='GET',
2203
+ resource_path='/v2/functions/{function_id}/similar-functions',
2204
+ path_params=_path_params,
2205
+ query_params=_query_params,
2206
+ header_params=_header_params,
2207
+ body=_body_params,
2208
+ post_params=_form_params,
2209
+ files=_files,
2210
+ auth_settings=_auth_settings,
2211
+ collection_formats=_collection_formats,
2212
+ _host=_host,
2213
+ _request_auth=_request_auth
2214
+ )
2215
+
2216
+