crowdstrike-falconpy-dev 1.3.0.dev10__tar.gz → 1.3.1__tar.gz

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 (271) hide show
  1. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/AUTHORS.md +3 -1
  2. {crowdstrike-falconpy-dev-1.3.0.dev10/src/crowdstrike_falconpy_dev.egg-info → crowdstrike-falconpy-dev-1.3.1}/PKG-INFO +3 -4
  3. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/README.md +2 -3
  4. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1/src/crowdstrike_falconpy_dev.egg-info}/PKG-INFO +3 -4
  5. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/crowdstrike_falconpy_dev.egg-info/SOURCES.txt +65 -1
  6. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/__init__.py +6 -3
  7. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_api_request/_request.py +9 -12
  8. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_api_request/_request_behavior.py +24 -24
  9. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_api_request/_request_connection.py +6 -13
  10. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_api_request/_request_meta.py +6 -12
  11. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_api_request/_request_payloads.py +4 -13
  12. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_api_request/_request_validator.py +8 -15
  13. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_auth_object/_bearer_token.py +17 -21
  14. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_auth_object/_falcon_interface.py +35 -37
  15. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_auth_object/_interface_config.py +8 -22
  16. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_constant/__init__.py +1 -1
  17. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/__init__.py +2 -0
  18. crowdstrike-falconpy-dev-1.3.0.dev10/src/falconpydev/_endpoint/_identity_protection.py → crowdstrike-falconpy-dev-1.3.1/src/falconpydev/_endpoint/_cloud_snapshots.py +29 -11
  19. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_falcon_complete_dashboard.py +50 -0
  20. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_falcon_container.py +35 -0
  21. crowdstrike-falconpy-dev-1.3.1/src/falconpydev/_endpoint/_filevantage.py +773 -0
  22. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_firewall_policies.py +3 -1
  23. crowdstrike-falconpy-dev-1.3.1/src/falconpydev/_endpoint/_identity_protection.py +119 -0
  24. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_incidents.py +2 -0
  25. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_intel.py +35 -5
  26. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_mssp.py +32 -2
  27. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_error/__init__.py +3 -2
  28. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_error/_warnings.py +7 -0
  29. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_log/_facility.py +5 -10
  30. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_payload/__init__.py +10 -1
  31. crowdstrike-falconpy-dev-1.3.1/src/falconpydev/_payload/_cloud_snapshots.py +145 -0
  32. crowdstrike-falconpy-dev-1.3.1/src/falconpydev/_payload/_filevantage.py +166 -0
  33. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_payload/_incidents.py +2 -1
  34. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_result/__base_resource.py +4 -8
  35. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_result/_base_dictionary.py +11 -10
  36. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_result/_response_component.py +4 -9
  37. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_result/_result.py +18 -17
  38. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_service_class/_base_service_class.py +23 -34
  39. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_service_class/_service_class.py +50 -25
  40. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_util/__init__.py +2 -1
  41. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_util/_functions.py +34 -6
  42. crowdstrike-falconpy-dev-1.3.1/src/falconpydev/_util/_service.py +69 -0
  43. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_util/_uber.py +7 -1
  44. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_version.py +1 -1
  45. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/api_complete.py +8 -1
  46. crowdstrike-falconpy-dev-1.3.1/src/falconpydev/cloud_snapshots.py +219 -0
  47. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/debug.py +0 -24
  48. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/falcon_complete_dashboard.py +108 -0
  49. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/falcon_container.py +44 -0
  50. crowdstrike-falconpy-dev-1.3.1/src/falconpydev/filevantage.py +1152 -0
  51. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/firewall_policies.py +2 -2
  52. crowdstrike-falconpy-dev-1.3.1/src/falconpydev/identity_protection.py +260 -0
  53. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/incidents.py +1 -0
  54. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/intel.py +19 -4
  55. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/mssp.py +47 -1
  56. crowdstrike-falconpy-dev-1.3.1/tests/test_alerts.py +70 -0
  57. crowdstrike-falconpy-dev-1.3.1/tests/test_api_request.py +144 -0
  58. crowdstrike-falconpy-dev-1.3.1/tests/test_authentications.py +321 -0
  59. crowdstrike-falconpy-dev-1.3.1/tests/test_authorization.py +298 -0
  60. crowdstrike-falconpy-dev-1.3.1/tests/test_cloud_connect_aws.py +217 -0
  61. crowdstrike-falconpy-dev-1.3.1/tests/test_cloud_snapshots.py +47 -0
  62. crowdstrike-falconpy-dev-1.3.1/tests/test_cspm_registration.py +133 -0
  63. crowdstrike-falconpy-dev-1.3.1/tests/test_custom_ioa.py +92 -0
  64. crowdstrike-falconpy-dev-1.3.1/tests/test_d4c_registration.py +155 -0
  65. crowdstrike-falconpy-dev-1.3.1/tests/test_detects.py +145 -0
  66. crowdstrike-falconpy-dev-1.3.1/tests/test_device_control_policies.py +145 -0
  67. crowdstrike-falconpy-dev-1.3.1/tests/test_discover.py +77 -0
  68. crowdstrike-falconpy-dev-1.3.1/tests/test_event_streams.py +111 -0
  69. crowdstrike-falconpy-dev-1.3.1/tests/test_falcon_complete_dashboard.py +121 -0
  70. crowdstrike-falconpy-dev-1.3.1/tests/test_falcon_container.py +64 -0
  71. crowdstrike-falconpy-dev-1.3.1/tests/test_falconx_sandbox.py +85 -0
  72. crowdstrike-falconpy-dev-1.3.1/tests/test_fdr.py +36 -0
  73. crowdstrike-falconpy-dev-1.3.1/tests/test_filevantage.py +90 -0
  74. crowdstrike-falconpy-dev-1.3.1/tests/test_firewall_management.py +253 -0
  75. crowdstrike-falconpy-dev-1.3.1/tests/test_firewall_policies.py +68 -0
  76. crowdstrike-falconpy-dev-1.3.1/tests/test_host_group.py +141 -0
  77. crowdstrike-falconpy-dev-1.3.1/tests/test_hosts.py +284 -0
  78. crowdstrike-falconpy-dev-1.3.1/tests/test_identity_protection.py +89 -0
  79. crowdstrike-falconpy-dev-1.3.1/tests/test_incidents.py +113 -0
  80. crowdstrike-falconpy-dev-1.3.1/tests/test_installation_tokens.py +103 -0
  81. crowdstrike-falconpy-dev-1.3.1/tests/test_intel.py +63 -0
  82. crowdstrike-falconpy-dev-1.3.1/tests/test_ioa_exclusions.py +71 -0
  83. crowdstrike-falconpy-dev-1.3.1/tests/test_ioc.py +83 -0
  84. crowdstrike-falconpy-dev-1.3.1/tests/test_iocs.py +63 -0
  85. crowdstrike-falconpy-dev-1.3.1/tests/test_kubernetes_protection.py +55 -0
  86. crowdstrike-falconpy-dev-1.3.1/tests/test_malquery.py +90 -0
  87. crowdstrike-falconpy-dev-1.3.1/tests/test_message_center.py +100 -0
  88. crowdstrike-falconpy-dev-1.3.1/tests/test_ml_exclusions.py +59 -0
  89. crowdstrike-falconpy-dev-1.3.1/tests/test_mobile_enrollment.py +30 -0
  90. crowdstrike-falconpy-dev-1.3.1/tests/test_mssp.py +65 -0
  91. crowdstrike-falconpy-dev-1.3.1/tests/test_ods.py +126 -0
  92. crowdstrike-falconpy-dev-1.3.1/tests/test_overwatch_dashboard.py +64 -0
  93. crowdstrike-falconpy-dev-1.3.1/tests/test_prevention_policy.py +144 -0
  94. crowdstrike-falconpy-dev-1.3.1/tests/test_quarantine.py +43 -0
  95. crowdstrike-falconpy-dev-1.3.1/tests/test_quick_scan.py +78 -0
  96. crowdstrike-falconpy-dev-1.3.1/tests/test_real_time_response.py +144 -0
  97. crowdstrike-falconpy-dev-1.3.1/tests/test_real_time_response_admin.py +161 -0
  98. crowdstrike-falconpy-dev-1.3.1/tests/test_recon.py +114 -0
  99. crowdstrike-falconpy-dev-1.3.1/tests/test_report_executions.py +44 -0
  100. crowdstrike-falconpy-dev-1.3.1/tests/test_response_policies.py +76 -0
  101. crowdstrike-falconpy-dev-1.3.1/tests/test_result_object.py +746 -0
  102. crowdstrike-falconpy-dev-1.3.1/tests/test_sample_uploads.py +156 -0
  103. crowdstrike-falconpy-dev-1.3.1/tests/test_scheduled_reports.py +43 -0
  104. crowdstrike-falconpy-dev-1.3.1/tests/test_sensor_download.py +106 -0
  105. crowdstrike-falconpy-dev-1.3.1/tests/test_sensor_update_policy.py +195 -0
  106. crowdstrike-falconpy-dev-1.3.1/tests/test_sensor_visibility_exclusions.py +56 -0
  107. crowdstrike-falconpy-dev-1.3.1/tests/test_service_class.py +378 -0
  108. crowdstrike-falconpy-dev-1.3.1/tests/test_spotlight_evaluation_logic.py +77 -0
  109. crowdstrike-falconpy-dev-1.3.1/tests/test_spotlight_vulnerabilities.py +87 -0
  110. crowdstrike-falconpy-dev-1.3.1/tests/test_tailored_intelligence.py +48 -0
  111. crowdstrike-falconpy-dev-1.3.1/tests/test_timeout.py +124 -0
  112. crowdstrike-falconpy-dev-1.3.1/tests/test_uber_api_complete.py +383 -0
  113. crowdstrike-falconpy-dev-1.3.1/tests/test_user_management.py +204 -0
  114. crowdstrike-falconpy-dev-1.3.1/tests/test_zero_trust_assessment.py +50 -0
  115. crowdstrike-falconpy-dev-1.3.0.dev10/src/falconpydev/_endpoint/_filevantage.py +0 -104
  116. crowdstrike-falconpy-dev-1.3.0.dev10/src/falconpydev/filevantage.py +0 -126
  117. crowdstrike-falconpy-dev-1.3.0.dev10/src/falconpydev/identity_protection.py +0 -109
  118. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/LICENSE +0 -0
  119. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/dev_setup.py +0 -0
  120. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/setup.cfg +0 -0
  121. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/setup.py +0 -0
  122. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/crowdstrike_falconpy_dev.egg-info/dependency_links.txt +0 -0
  123. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/crowdstrike_falconpy_dev.egg-info/requires.txt +0 -0
  124. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/crowdstrike_falconpy_dev.egg-info/top_level.txt +0 -0
  125. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_api_request/__init__.py +0 -0
  126. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_auth_object/__init__.py +0 -0
  127. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_auth_object/_base_falcon_auth.py +0 -0
  128. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_auth_object/_uber_interface.py +0 -0
  129. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_alerts.py +0 -0
  130. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_cloud_connect_aws.py +0 -0
  131. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_cspm_registration.py +0 -0
  132. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_custom_ioa.py +0 -0
  133. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_d4c_registration.py +0 -0
  134. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_detects.py +0 -0
  135. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_device_control_policies.py +0 -0
  136. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_discover.py +0 -0
  137. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_event_streams.py +0 -0
  138. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_falconx_sandbox.py +0 -0
  139. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_fdr.py +0 -0
  140. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_firewall_management.py +0 -0
  141. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_host_group.py +0 -0
  142. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_hosts.py +0 -0
  143. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_installation_tokens.py +0 -0
  144. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_ioa_exclusions.py +0 -0
  145. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_ioc.py +0 -0
  146. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_iocs.py +0 -0
  147. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_kubernetes_protection.py +0 -0
  148. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_malquery.py +0 -0
  149. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_message_center.py +0 -0
  150. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_ml_exclusions.py +0 -0
  151. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_mobile_enrollment.py +0 -0
  152. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_oauth2.py +0 -0
  153. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_ods.py +0 -0
  154. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_overwatch_dashboard.py +0 -0
  155. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_prevention_policies.py +0 -0
  156. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_quarantine.py +0 -0
  157. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_quick_scan.py +0 -0
  158. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_real_time_response.py +0 -0
  159. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_real_time_response_admin.py +0 -0
  160. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_recon.py +0 -0
  161. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_report_executions.py +0 -0
  162. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_response_policies.py +0 -0
  163. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_sample_uploads.py +0 -0
  164. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_scheduled_reports.py +0 -0
  165. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_sensor_download.py +0 -0
  166. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_sensor_update_policies.py +0 -0
  167. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_sensor_visibility_exclusions.py +0 -0
  168. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_spotlight_evaluation_logic.py +0 -0
  169. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_spotlight_vulnerabilities.py +0 -0
  170. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_tailored_intelligence.py +0 -0
  171. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_user_management.py +0 -0
  172. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/_zero_trust_assessment.py +0 -0
  173. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/deprecated/__init__.py +0 -0
  174. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/deprecated/_custom_ioa.py +0 -0
  175. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/deprecated/_d4c_registration.py +0 -0
  176. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/deprecated/_discover.py +0 -0
  177. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/deprecated/_fdr.py +0 -0
  178. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/deprecated/_firewall_management.py +0 -0
  179. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/deprecated/_hosts.py +0 -0
  180. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/deprecated/_identity_protection.py +0 -0
  181. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/deprecated/_installation_tokens.py +0 -0
  182. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/deprecated/_ioc.py +0 -0
  183. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/deprecated/_iocs.py +0 -0
  184. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/deprecated/_ods.py +0 -0
  185. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/deprecated/_real_time_response.py +0 -0
  186. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/deprecated/_real_time_response_admin.py +0 -0
  187. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/deprecated/_report_executions.py +0 -0
  188. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/deprecated/_scheduled_reports.py +0 -0
  189. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_endpoint/deprecated/_zero_trust_assessment.py +0 -0
  190. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_enum/__init__.py +0 -0
  191. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_enum/_base_url.py +0 -0
  192. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_enum/_container_base_url.py +0 -0
  193. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_enum/_token_fail_reason.py +0 -0
  194. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_error/_exceptions.py +0 -0
  195. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_log/__init__.py +0 -0
  196. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_payload/_alerts.py +0 -0
  197. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_payload/_cloud_connect_aws.py +0 -0
  198. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_payload/_container.py +0 -0
  199. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_payload/_cspm_registration.py +0 -0
  200. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_payload/_d4c_registration.py +0 -0
  201. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_payload/_detects.py +0 -0
  202. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_payload/_device_control_policy.py +0 -0
  203. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_payload/_falconx.py +0 -0
  204. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_payload/_firewall.py +0 -0
  205. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_payload/_generic.py +0 -0
  206. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_payload/_host_group.py +0 -0
  207. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_payload/_ioa.py +0 -0
  208. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_payload/_ioc.py +0 -0
  209. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_payload/_malquery.py +0 -0
  210. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_payload/_message_center.py +0 -0
  211. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_payload/_mssp.py +0 -0
  212. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_payload/_ods.py +0 -0
  213. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_payload/_prevention_policy.py +0 -0
  214. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_payload/_real_time_response.py +0 -0
  215. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_payload/_recon.py +0 -0
  216. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_payload/_reports.py +0 -0
  217. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_payload/_response_policy.py +0 -0
  218. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_payload/_sample_uploads.py +0 -0
  219. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_payload/_sensor_update_policy.py +0 -0
  220. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_result/__init__.py +0 -0
  221. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_result/_errors.py +0 -0
  222. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_result/_expanded_result.py +0 -0
  223. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_result/_headers.py +0 -0
  224. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_result/_meta.py +0 -0
  225. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_result/_resources.py +0 -0
  226. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_service_class/__init__.py +0 -0
  227. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/_util/_auth.py +0 -0
  228. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/alerts.py +0 -0
  229. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/cloud_connect_aws.py +0 -0
  230. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/cspm_registration.py +0 -0
  231. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/custom_ioa.py +0 -0
  232. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/d4c_registration.py +0 -0
  233. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/detects.py +0 -0
  234. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/device_control_policies.py +0 -0
  235. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/discover.py +0 -0
  236. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/event_streams.py +0 -0
  237. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/falconx_sandbox.py +0 -0
  238. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/fdr.py +0 -0
  239. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/firewall_management.py +0 -0
  240. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/host_group.py +0 -0
  241. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/hosts.py +0 -0
  242. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/installation_tokens.py +0 -0
  243. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/ioa_exclusions.py +0 -0
  244. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/ioc.py +0 -0
  245. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/iocs.py +0 -0
  246. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/kubernetes_protection.py +0 -0
  247. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/malquery.py +0 -0
  248. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/message_center.py +0 -0
  249. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/ml_exclusions.py +0 -0
  250. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/mobile_enrollment.py +0 -0
  251. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/oauth2.py +0 -0
  252. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/ods.py +0 -0
  253. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/overwatch_dashboard.py +0 -0
  254. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/prevention_policy.py +0 -0
  255. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/quarantine.py +0 -0
  256. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/quick_scan.py +0 -0
  257. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/real_time_response.py +0 -0
  258. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/real_time_response_admin.py +0 -0
  259. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/recon.py +0 -0
  260. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/report_executions.py +0 -0
  261. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/response_policies.py +0 -0
  262. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/sample_uploads.py +0 -0
  263. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/scheduled_reports.py +0 -0
  264. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/sensor_download.py +0 -0
  265. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/sensor_update_policy.py +0 -0
  266. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/sensor_visibility_exclusions.py +0 -0
  267. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/spotlight_evaluation_logic.py +0 -0
  268. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/spotlight_vulnerabilities.py +0 -0
  269. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/tailored_intelligence.py +0 -0
  270. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/user_management.py +0 -0
  271. {crowdstrike-falconpy-dev-1.3.0.dev10 → crowdstrike-falconpy-dev-1.3.1}/src/falconpydev/zero_trust_assessment.py +0 -0
@@ -1,6 +1,7 @@
1
1
  ![CrowdStrike FalconPy](https://raw.githubusercontent.com/CrowdStrike/falconpy/main/docs/asset/cs-logo.png)
2
2
 
3
- [![Twitter URL](https://img.shields.io/twitter/url?label=Follow%20%40CrowdStrike&style=social&url=https%3A%2F%2Ftwitter.com%2FCrowdStrike)](https://twitter.com/CrowdStrike)
3
+ [![CrowdStrike Subreddit](https://img.shields.io/badge/-r%2Fcrowdstrike-white?logo=reddit&labelColor=gray&link=https%3A%2F%2Freddit.com%2Fr%2Fcrowdstrike)](https://reddit.com/r/crowdstrike)
4
+
4
5
 
5
6
  # FalconPy Project Authors
6
7
  The FalconPy project exists to enable developer interactions with the CrowdStrike Falcon API. Designed to be easy to integrate and use within your Python projects, the library is released under the [Unlicense](LICENSE) license. Developed and maintained by a diverse group of security architects, engineers and specialists, FalconPy has received multiple contributions from the community at large.
@@ -88,6 +89,7 @@ This has been a critical element in the development of the FalconPy project.
88
89
  + Alex, `@khyberspache`
89
90
  + Phil Massyn, `@massyn`
90
91
  + Russell Snyder, `@rusnyder`
92
+ + `@PeroSoy`
91
93
 
92
94
 
93
95
  ## Sponsors
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: crowdstrike-falconpy-dev
3
- Version: 1.3.0.dev10
3
+ Version: 1.3.1
4
4
  Summary: The CrowdStrike Falcon SDK for Python 3
5
5
  Home-page: https://github.com/CrowdStrike/falconpy
6
6
  Author: CrowdStrike
@@ -42,7 +42,7 @@ License-File: AUTHORS.md
42
42
 
43
43
  ![CrowdStrike FalconPy](https://raw.githubusercontent.com/CrowdStrike/falconpy/main/docs/asset/cs-logo.png)
44
44
 
45
- [![Twitter URL](https://img.shields.io/twitter/url?label=Follow%20%40CrowdStrike&style=social&url=https%3A%2F%2Ftwitter.com%2FCrowdStrike)](https://twitter.com/CrowdStrike)<br/>
45
+ [![CrowdStrike Subreddit](https://img.shields.io/badge/-r%2Fcrowdstrike-white?logo=reddit&labelColor=gray&link=https%3A%2F%2Freddit.com%2Fr%2Fcrowdstrike)](https://reddit.com/r/crowdstrike)<br/>
46
46
 
47
47
  # FalconPy - The CrowdStrike Falcon SDK for Python
48
48
 
@@ -80,8 +80,6 @@ The CrowdStrike Falcon SDK for Python completely abstracts token management, whi
80
80
  #### Supported versions of Python
81
81
  The CrowdStrike Falcon SDK for Python was developed for Python 3, and does not support versions of Python below 3.6. Every commit to the FalconPy code base is unit tested for functionality using all versions of Python the library currently supports.
82
82
 
83
- > While Python 3.5 should not have problems running FalconPy, as of February 2021 this version is no longer analyzed as part of our unit testing.
84
-
85
83
  [![PyPI - Implementation](https://img.shields.io/pypi/implementation/crowdstrike-falconpy)](https://pypi.org/project/crowdstrike-falconpy/#files)
86
84
  [![PyPI - Wheel](https://img.shields.io/pypi/wheel/crowdstrike-falconpy)](https://pypi.org/project/crowdstrike-falconpy/#files)
87
85
  [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/crowdstrike-falconpy?label=supported%20versions)](https://github.com/CrowdStrike/falconpy/actions/workflows/unit_testing_ubuntu.yml)
@@ -138,6 +136,7 @@ For each CrowdStrike Falcon API service collection, a matching Service Class is
138
136
  | Firewall Management | [firewall_management.py](https://github.com/CrowdStrike/falconpy/blob/main/src/falconpy/firewall_management.py) | [FirewallManagement](https://www.falconpy.io/Service-Collections/Firewall-Management.html) |
139
137
  | Firewall Policy Management | [firewall_policies.py](https://github.com/CrowdStrike/falconpy/blob/main/src/falconpy/firewall_policies.py) | [FirewallPolicies](https://www.falconpy.io/Service-Collections/Firewall-Policies.html) |
140
138
  | Falcon Complete Dashboard | [falcon_complete_dashboard.py](https://github.com/CrowdStrike/falconpy/blob/main/src/falconpy/falcon_complete_dashboard.py) | [FalconCompleteDashboard](https://www.falconpy.io/Service-Collections/Falcon-Complete-Dashboard.html) |
139
+ | Falcon Data Replicator | [fdr.py](https://github.com/CrowdStrike/falconpy/blob/main/src/falconpy/fdr.py) | [FDR](https://www.falconpy.io/Service-Collections/FDR.html) |
141
140
  | Falcon Flight Control | [mssp.py](https://github.com/CrowdStrike/falconpy/blob/main/src/falconpy/mssp.py) | [FlightControl](https://www.falconpy.io/Service-Collections/MSSP.html) |
142
141
  | Host Groups | [host_group.py](https://github.com/CrowdStrike/falconpy/blob/main/src/falconpy/host_group.py) | [HostGroup](https://www.falconpy.io/Service-Collections/Host-Group.html) |
143
142
  | Hosts | [hosts.py](https://github.com/CrowdStrike/falconpy/blob/main/src/falconpy/hosts.py) | [Hosts](https://www.falconpy.io/Service-Collections/Hosts.html) |
@@ -1,6 +1,6 @@
1
1
  ![CrowdStrike FalconPy](https://raw.githubusercontent.com/CrowdStrike/falconpy/main/docs/asset/cs-logo.png)
2
2
 
3
- [![Twitter URL](https://img.shields.io/twitter/url?label=Follow%20%40CrowdStrike&style=social&url=https%3A%2F%2Ftwitter.com%2FCrowdStrike)](https://twitter.com/CrowdStrike)<br/>
3
+ [![CrowdStrike Subreddit](https://img.shields.io/badge/-r%2Fcrowdstrike-white?logo=reddit&labelColor=gray&link=https%3A%2F%2Freddit.com%2Fr%2Fcrowdstrike)](https://reddit.com/r/crowdstrike)<br/>
4
4
 
5
5
  # FalconPy - The CrowdStrike Falcon SDK for Python
6
6
 
@@ -33,8 +33,6 @@ The CrowdStrike Falcon SDK for Python completely abstracts token management, whi
33
33
  #### Supported versions of Python
34
34
  The CrowdStrike Falcon SDK for Python was developed for Python 3, and does not support versions of Python below 3.6. Every commit to the FalconPy code base is unit tested for functionality using all versions of Python the library currently supports.
35
35
 
36
- > While Python 3.5 should not have problems running FalconPy, as of February 2021 this version is no longer analyzed as part of our unit testing.
37
-
38
36
  [![PyPI - Implementation](https://img.shields.io/pypi/implementation/crowdstrike-falconpy)](https://pypi.org/project/crowdstrike-falconpy/#files)
39
37
  [![PyPI - Wheel](https://img.shields.io/pypi/wheel/crowdstrike-falconpy)](https://pypi.org/project/crowdstrike-falconpy/#files)
40
38
  [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/crowdstrike-falconpy?label=supported%20versions)](https://github.com/CrowdStrike/falconpy/actions/workflows/unit_testing_ubuntu.yml)
@@ -91,6 +89,7 @@ For each CrowdStrike Falcon API service collection, a matching Service Class is
91
89
  | Firewall Management | [firewall_management.py](https://github.com/CrowdStrike/falconpy/blob/main/src/falconpy/firewall_management.py) | [FirewallManagement](https://www.falconpy.io/Service-Collections/Firewall-Management.html) |
92
90
  | Firewall Policy Management | [firewall_policies.py](https://github.com/CrowdStrike/falconpy/blob/main/src/falconpy/firewall_policies.py) | [FirewallPolicies](https://www.falconpy.io/Service-Collections/Firewall-Policies.html) |
93
91
  | Falcon Complete Dashboard | [falcon_complete_dashboard.py](https://github.com/CrowdStrike/falconpy/blob/main/src/falconpy/falcon_complete_dashboard.py) | [FalconCompleteDashboard](https://www.falconpy.io/Service-Collections/Falcon-Complete-Dashboard.html) |
92
+ | Falcon Data Replicator | [fdr.py](https://github.com/CrowdStrike/falconpy/blob/main/src/falconpy/fdr.py) | [FDR](https://www.falconpy.io/Service-Collections/FDR.html) |
94
93
  | Falcon Flight Control | [mssp.py](https://github.com/CrowdStrike/falconpy/blob/main/src/falconpy/mssp.py) | [FlightControl](https://www.falconpy.io/Service-Collections/MSSP.html) |
95
94
  | Host Groups | [host_group.py](https://github.com/CrowdStrike/falconpy/blob/main/src/falconpy/host_group.py) | [HostGroup](https://www.falconpy.io/Service-Collections/Host-Group.html) |
96
95
  | Hosts | [hosts.py](https://github.com/CrowdStrike/falconpy/blob/main/src/falconpy/hosts.py) | [Hosts](https://www.falconpy.io/Service-Collections/Hosts.html) |
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: crowdstrike-falconpy-dev
3
- Version: 1.3.0.dev10
3
+ Version: 1.3.1
4
4
  Summary: The CrowdStrike Falcon SDK for Python 3
5
5
  Home-page: https://github.com/CrowdStrike/falconpy
6
6
  Author: CrowdStrike
@@ -42,7 +42,7 @@ License-File: AUTHORS.md
42
42
 
43
43
  ![CrowdStrike FalconPy](https://raw.githubusercontent.com/CrowdStrike/falconpy/main/docs/asset/cs-logo.png)
44
44
 
45
- [![Twitter URL](https://img.shields.io/twitter/url?label=Follow%20%40CrowdStrike&style=social&url=https%3A%2F%2Ftwitter.com%2FCrowdStrike)](https://twitter.com/CrowdStrike)<br/>
45
+ [![CrowdStrike Subreddit](https://img.shields.io/badge/-r%2Fcrowdstrike-white?logo=reddit&labelColor=gray&link=https%3A%2F%2Freddit.com%2Fr%2Fcrowdstrike)](https://reddit.com/r/crowdstrike)<br/>
46
46
 
47
47
  # FalconPy - The CrowdStrike Falcon SDK for Python
48
48
 
@@ -80,8 +80,6 @@ The CrowdStrike Falcon SDK for Python completely abstracts token management, whi
80
80
  #### Supported versions of Python
81
81
  The CrowdStrike Falcon SDK for Python was developed for Python 3, and does not support versions of Python below 3.6. Every commit to the FalconPy code base is unit tested for functionality using all versions of Python the library currently supports.
82
82
 
83
- > While Python 3.5 should not have problems running FalconPy, as of February 2021 this version is no longer analyzed as part of our unit testing.
84
-
85
83
  [![PyPI - Implementation](https://img.shields.io/pypi/implementation/crowdstrike-falconpy)](https://pypi.org/project/crowdstrike-falconpy/#files)
86
84
  [![PyPI - Wheel](https://img.shields.io/pypi/wheel/crowdstrike-falconpy)](https://pypi.org/project/crowdstrike-falconpy/#files)
87
85
  [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/crowdstrike-falconpy?label=supported%20versions)](https://github.com/CrowdStrike/falconpy/actions/workflows/unit_testing_ubuntu.yml)
@@ -138,6 +136,7 @@ For each CrowdStrike Falcon API service collection, a matching Service Class is
138
136
  | Firewall Management | [firewall_management.py](https://github.com/CrowdStrike/falconpy/blob/main/src/falconpy/firewall_management.py) | [FirewallManagement](https://www.falconpy.io/Service-Collections/Firewall-Management.html) |
139
137
  | Firewall Policy Management | [firewall_policies.py](https://github.com/CrowdStrike/falconpy/blob/main/src/falconpy/firewall_policies.py) | [FirewallPolicies](https://www.falconpy.io/Service-Collections/Firewall-Policies.html) |
140
138
  | Falcon Complete Dashboard | [falcon_complete_dashboard.py](https://github.com/CrowdStrike/falconpy/blob/main/src/falconpy/falcon_complete_dashboard.py) | [FalconCompleteDashboard](https://www.falconpy.io/Service-Collections/Falcon-Complete-Dashboard.html) |
139
+ | Falcon Data Replicator | [fdr.py](https://github.com/CrowdStrike/falconpy/blob/main/src/falconpy/fdr.py) | [FDR](https://www.falconpy.io/Service-Collections/FDR.html) |
141
140
  | Falcon Flight Control | [mssp.py](https://github.com/CrowdStrike/falconpy/blob/main/src/falconpy/mssp.py) | [FlightControl](https://www.falconpy.io/Service-Collections/MSSP.html) |
142
141
  | Host Groups | [host_group.py](https://github.com/CrowdStrike/falconpy/blob/main/src/falconpy/host_group.py) | [HostGroup](https://www.falconpy.io/Service-Collections/Host-Group.html) |
143
142
  | Hosts | [hosts.py](https://github.com/CrowdStrike/falconpy/blob/main/src/falconpy/hosts.py) | [Hosts](https://www.falconpy.io/Service-Collections/Hosts.html) |
@@ -13,6 +13,7 @@ src/falconpydev/_version.py
13
13
  src/falconpydev/alerts.py
14
14
  src/falconpydev/api_complete.py
15
15
  src/falconpydev/cloud_connect_aws.py
16
+ src/falconpydev/cloud_snapshots.py
16
17
  src/falconpydev/cspm_registration.py
17
18
  src/falconpydev/custom_ioa.py
18
19
  src/falconpydev/d4c_registration.py
@@ -81,6 +82,7 @@ src/falconpydev/_constant/__init__.py
81
82
  src/falconpydev/_endpoint/__init__.py
82
83
  src/falconpydev/_endpoint/_alerts.py
83
84
  src/falconpydev/_endpoint/_cloud_connect_aws.py
85
+ src/falconpydev/_endpoint/_cloud_snapshots.py
84
86
  src/falconpydev/_endpoint/_cspm_registration.py
85
87
  src/falconpydev/_endpoint/_custom_ioa.py
86
88
  src/falconpydev/_endpoint/_d4c_registration.py
@@ -160,12 +162,14 @@ src/falconpydev/_log/_facility.py
160
162
  src/falconpydev/_payload/__init__.py
161
163
  src/falconpydev/_payload/_alerts.py
162
164
  src/falconpydev/_payload/_cloud_connect_aws.py
165
+ src/falconpydev/_payload/_cloud_snapshots.py
163
166
  src/falconpydev/_payload/_container.py
164
167
  src/falconpydev/_payload/_cspm_registration.py
165
168
  src/falconpydev/_payload/_d4c_registration.py
166
169
  src/falconpydev/_payload/_detects.py
167
170
  src/falconpydev/_payload/_device_control_policy.py
168
171
  src/falconpydev/_payload/_falconx.py
172
+ src/falconpydev/_payload/_filevantage.py
169
173
  src/falconpydev/_payload/_firewall.py
170
174
  src/falconpydev/_payload/_generic.py
171
175
  src/falconpydev/_payload/_host_group.py
@@ -199,4 +203,64 @@ src/falconpydev/_service_class/_service_class.py
199
203
  src/falconpydev/_util/__init__.py
200
204
  src/falconpydev/_util/_auth.py
201
205
  src/falconpydev/_util/_functions.py
202
- src/falconpydev/_util/_uber.py
206
+ src/falconpydev/_util/_service.py
207
+ src/falconpydev/_util/_uber.py
208
+ tests/test_alerts.py
209
+ tests/test_api_request.py
210
+ tests/test_authentications.py
211
+ tests/test_authorization.py
212
+ tests/test_cloud_connect_aws.py
213
+ tests/test_cloud_snapshots.py
214
+ tests/test_cspm_registration.py
215
+ tests/test_custom_ioa.py
216
+ tests/test_d4c_registration.py
217
+ tests/test_detects.py
218
+ tests/test_device_control_policies.py
219
+ tests/test_discover.py
220
+ tests/test_event_streams.py
221
+ tests/test_falcon_complete_dashboard.py
222
+ tests/test_falcon_container.py
223
+ tests/test_falconx_sandbox.py
224
+ tests/test_fdr.py
225
+ tests/test_filevantage.py
226
+ tests/test_firewall_management.py
227
+ tests/test_firewall_policies.py
228
+ tests/test_host_group.py
229
+ tests/test_hosts.py
230
+ tests/test_identity_protection.py
231
+ tests/test_incidents.py
232
+ tests/test_installation_tokens.py
233
+ tests/test_intel.py
234
+ tests/test_ioa_exclusions.py
235
+ tests/test_ioc.py
236
+ tests/test_iocs.py
237
+ tests/test_kubernetes_protection.py
238
+ tests/test_malquery.py
239
+ tests/test_message_center.py
240
+ tests/test_ml_exclusions.py
241
+ tests/test_mobile_enrollment.py
242
+ tests/test_mssp.py
243
+ tests/test_ods.py
244
+ tests/test_overwatch_dashboard.py
245
+ tests/test_prevention_policy.py
246
+ tests/test_quarantine.py
247
+ tests/test_quick_scan.py
248
+ tests/test_real_time_response.py
249
+ tests/test_real_time_response_admin.py
250
+ tests/test_recon.py
251
+ tests/test_report_executions.py
252
+ tests/test_response_policies.py
253
+ tests/test_result_object.py
254
+ tests/test_sample_uploads.py
255
+ tests/test_scheduled_reports.py
256
+ tests/test_sensor_download.py
257
+ tests/test_sensor_update_policy.py
258
+ tests/test_sensor_visibility_exclusions.py
259
+ tests/test_service_class.py
260
+ tests/test_spotlight_evaluation_logic.py
261
+ tests/test_spotlight_vulnerabilities.py
262
+ tests/test_tailored_intelligence.py
263
+ tests/test_timeout.py
264
+ tests/test_uber_api_complete.py
265
+ tests/test_user_management.py
266
+ tests/test_zero_trust_assessment.py
@@ -60,7 +60,8 @@ from ._error import (
60
60
  PayloadValidationError,
61
61
  NoAuthenticationMechanism,
62
62
  InvalidIndex,
63
- InvalidCredentialFormat
63
+ InvalidCredentialFormat,
64
+ UnnecessaryEncodingUsed
64
65
  )
65
66
  from ._result import (
66
67
  Result,
@@ -85,6 +86,7 @@ from ._api_request import (
85
86
  )
86
87
  from .alerts import Alerts
87
88
  from .api_complete import APIHarness
89
+ from .cloud_snapshots import CloudSnapshots
88
90
  from .cloud_connect_aws import CloudConnectAWS
89
91
  from .cspm_registration import CSPMRegistration
90
92
  from .custom_ioa import CustomIOA
@@ -169,8 +171,9 @@ __all__ = [
169
171
  "FunctionalityNotImplemented", "BearerToken", "LogFacility", "InvalidBaseURL",
170
172
  "InterfaceConfiguration", "RequestBehavior", "RequestConnection", "RequestMeta",
171
173
  "RequestPayloads", "RequestValidator", "PayloadValidationError", "MIN_TOKEN_RENEW_WINDOW",
172
- "MAX_TOKEN_RENEW_WINDOW", "GLOBAL_API_MAX_RETURN", "MOCK_OPERATIONS",
173
- "NoAuthenticationMechanism", "InvalidIndex", "version", "InvalidCredentialFormat"
174
+ "MAX_TOKEN_RENEW_WINDOW", "GLOBAL_API_MAX_RETURN", "MOCK_OPERATIONS", "CloudSnapshots",
175
+ "NoAuthenticationMechanism", "InvalidIndex", "version", "InvalidCredentialFormat",
176
+ "UnnecessaryEncodingUsed"
174
177
  ]
175
178
  """
176
179
  This is free and unencumbered software released into the public domain.
@@ -35,7 +35,7 @@ OTHER DEALINGS IN THE SOFTWARE.
35
35
 
36
36
  For more information, please refer to <https://unlicense.org>
37
37
  """
38
- from typing import Union, Dict, Optional, List, Type, Any
38
+ from typing import Union, Dict, Optional, List, Any
39
39
  from logging import Logger
40
40
  from ._request_behavior import RequestBehavior
41
41
  from ._request_connection import RequestConnection
@@ -47,16 +47,6 @@ from .._log import LogFacility
47
47
  class APIRequest:
48
48
  """This class represents a request made to the CrowdStrike API."""
49
49
 
50
- # ____ ___ ___ ____ _ ___ _ _ ___ ____ ____
51
- # |__| | | |__/ | |__] | | | |___ [__
52
- # | | | | | \ | |__] |__| | |___ ___]
53
- #
54
- _meta: RequestMeta = RequestMeta()
55
- _payloads: RequestPayloads = RequestPayloads()
56
- _connection: RequestConnection = RequestConnection()
57
- _behavior = RequestBehavior()
58
- _request_log: Optional[LogFacility] = None
59
-
60
50
  # ____ ____ _ _ ____ ___ ____ _ _ ____ ___ ____ ____
61
51
  # | | | |\ | [__ | |__/ | | | | | | |__/
62
52
  # |___ |__| | \| ___] | | \ |__| |___ | |__| | \
@@ -95,6 +85,13 @@ class APIRequest:
95
85
  sanitize_log=initializer.get("sanitize", None)
96
86
  )
97
87
 
88
+ else:
89
+ self._meta = RequestMeta()
90
+ self._payloads = RequestPayloads()
91
+ self._connection = RequestConnection()
92
+ self._behavior = RequestBehavior()
93
+ self._request_log: Optional[LogFacility] = None
94
+
98
95
  # _ _ ____ ___ _ _ ____ ___ ____
99
96
  # |\/| |___ | |__| | | | \ [__
100
97
  # | | |___ | | | |__| |__/ ___]
@@ -212,7 +209,7 @@ class APIRequest:
212
209
  self.behavior.perform = value
213
210
 
214
211
  @property
215
- def body_validator(self) -> Optional[Dict[str, Type]]:
212
+ def body_validator(self) -> Optional[Dict[str, Any]]:
216
213
  """Return the body payload validator from the behavior object."""
217
214
  return self.behavior.body_validator
218
215
 
@@ -35,48 +35,48 @@ OTHER DEALINGS IN THE SOFTWARE.
35
35
 
36
36
  For more information, please refer to <https://unlicense.org>
37
37
  """
38
- from typing import Optional, Dict, List, Type
38
+ from typing import Optional, Any, Dict, List
39
39
  from ._request_validator import RequestValidator
40
40
 
41
41
 
42
42
  class RequestBehavior:
43
43
  """This class represents specified behaviors for an API request."""
44
44
 
45
- # ____ ___ ___ ____ _ ___ _ _ ___ ____ ____
46
- # |__| | | |__/ | |__] | | | |___ [__
47
- # | | | | | \ | |__] |__| | |___ ___]
48
- #
49
- _expand_result: bool = False
50
- _container: bool = False
51
- _authenticating: bool = False
52
- _perform: bool = True
53
- _validator = RequestValidator()
54
-
55
45
  # ____ ____ _ _ ____ ___ ____ _ _ ____ ___ ____ ____
56
46
  # | | | |\ | [__ | |__/ | | | | | | |__/
57
47
  # |___ |__| | \| ___] | | \ |__| |___ | |__| | \
58
48
  #
59
49
  def __init__(self,
60
- expand_result: Optional[bool] = None,
61
- container: Optional[bool] = None,
62
- authenticating: Optional[bool] = None,
63
- perform: Optional[bool] = None,
64
- body_validator: Optional[Dict[str, Type]] = None,
50
+ expand_result: Optional[bool] = False,
51
+ container: Optional[bool] = False,
52
+ authenticating: Optional[bool] = False,
53
+ perform: Optional[bool] = True,
54
+ body_validator: Optional[Dict[str, Any]] = None,
65
55
  body_required: Optional[List[str]] = None
66
56
  ):
67
57
  """Construct an instance of RequestBehavior class."""
58
+ self._expand_result = False
68
59
  if isinstance(expand_result, bool):
69
- self.expand_result = expand_result
60
+ self._expand_result = expand_result
61
+
62
+ self._container = False
70
63
  if isinstance(container, bool):
71
- self.container = container
64
+ self._container = container
65
+
66
+ self._authenticating = False
72
67
  if isinstance(authenticating, bool):
73
- self.authenticating = authenticating
68
+ self._authenticating = authenticating
69
+
70
+ self._perform = True
74
71
  if isinstance(perform, bool):
75
- self.perform = perform
72
+ self._perform = perform
73
+
76
74
  if isinstance(body_validator, dict) or isinstance(body_required, list):
77
- self.validator = RequestValidator(validator=body_validator,
78
- required=body_required
79
- )
75
+ self._validator = RequestValidator(validator=body_validator,
76
+ required=body_required
77
+ )
78
+ else:
79
+ self._validator = RequestValidator()
80
80
 
81
81
  # ___ ____ ____ ___ ____ ____ ___ _ ____ ____
82
82
  # |__] |__/ | | |__] |___ |__/ | | |___ [__
@@ -133,7 +133,7 @@ class RequestBehavior:
133
133
  self._validator = value
134
134
 
135
135
  @property
136
- def body_validator(self) -> Optional[Dict[str, Type]]:
136
+ def body_validator(self) -> Optional[Dict[str, Any]]:
137
137
  """Reflection into the validator object for the body payload validator."""
138
138
  return self.validator.validator
139
139
 
@@ -41,15 +41,6 @@ from typing import Optional, Dict, Union
41
41
  class RequestConnection:
42
42
  """This class represents connection details related to an API request."""
43
43
 
44
- # ____ ___ ___ ____ _ ___ _ _ ___ ____ ____
45
- # |__| | | |__/ | |__] | | | |___ [__
46
- # | | | | | \ | |__] |__| | |___ ___]
47
- #
48
- _user_agent: Optional[str] = None
49
- _verify: bool = True
50
- _timeout: Optional[Union[int, tuple]] = None
51
- _proxy: Optional[Dict[str, str]] = None
52
-
53
44
  # ____ ____ _ _ ____ ___ ____ _ _ ____ ___ ____ ____
54
45
  # | | | |\ | [__ | |__/ | | | | | | |__/
55
46
  # |___ |__| | \| ___] | | \ |__| |___ | |__| | \
@@ -58,12 +49,14 @@ class RequestConnection:
58
49
  user_agent: Optional[str] = None,
59
50
  proxy: Optional[Dict[str, str]] = None,
60
51
  timeout: Optional[Union[int, tuple]] = None,
61
- verify: Optional[bool] = None
52
+ verify: Optional[bool] = True
62
53
  ):
63
54
  """Construct an instance of RequestConnection class."""
64
- self.user_agent: Optional[str] = user_agent
65
- self.proxy: Optional[Dict[str, str]] = proxy
66
- self.timeout: Optional[Union[int, tuple]] = timeout
55
+ self._user_agent: Optional[str] = user_agent
56
+ self._proxy: Optional[Dict[str, str]] = proxy
57
+ self._timeout: Optional[Union[int, tuple]] = timeout
58
+
59
+ self._verify = True
67
60
  if isinstance(verify, bool):
68
61
  self.verify: bool = verify
69
62
 
@@ -41,15 +41,6 @@ from typing import Dict, Union, Optional
41
41
  class RequestMeta:
42
42
  """This class contains the relevant metadata for the API request being performed."""
43
43
 
44
- # ____ ___ ___ ____ _ ___ _ _ ___ ____ ____
45
- # |__| | | |__/ | |__] | | | |___ [__
46
- # | | | | | \ | |__] |__| | |___ ___]
47
- #
48
- _method: str = "GET"
49
- _endpoint: Optional[str] = None
50
- # These are set during the processing of the request
51
- _debug_headers: Optional[Dict[str, Optional[Union[str, int, float]]]] = {}
52
-
53
44
  # ____ ____ _ _ ____ ___ ____ _ _ ____ ___ ____ ____
54
45
  # | | | |\ | [__ | |__/ | | | | | | |__/
55
46
  # |___ |__| | \| ___] | | \ |__| |___ | |__| | \
@@ -60,9 +51,12 @@ class RequestMeta:
60
51
  debug_headers: Optional[Dict[str, Optional[Union[str, int, float]]]] = None
61
52
  ):
62
53
  """Construct an instance of RequestMeta class."""
63
- self.endpoint = endpoint
64
- self.method = method
65
- self.debug_headers = debug_headers
54
+ self._endpoint: Optional[str] = endpoint
55
+ self._method: str = method
56
+
57
+ self._debug_headers: Optional[Dict[str, Optional[Union[str, int, float]]]] = debug_headers
58
+ if debug_headers is None:
59
+ self._debug_headers = {}
66
60
 
67
61
  # ___ ____ ____ ___ ____ ____ ___ _ ____ ____
68
62
  # |__] |__/ | | |__] |___ |__/ | | |___ [__
@@ -41,15 +41,6 @@ from typing import Optional, Dict, List, Union
41
41
  class RequestPayloads:
42
42
  """This class contains all of the payloads sent as part of the API request."""
43
43
 
44
- # ____ ___ ___ ____ _ ___ _ _ ___ ____ ____
45
- # |__| | | |__/ | |__] | | | |___ [__
46
- # | | | | | \ | |__] |__| | |___ ___]
47
- #
48
- _params: Optional[Dict[str, Optional[Union[str, int, float, list, dict]]]] = None
49
- _body: Optional[Union[bytes, Dict[str, Union[str, int, dict, list, bytes]]]] = None
50
- _data: Optional[Union[bytes, Dict[str, Union[str, int, dict, list, bytes]]]] = None
51
- _files: Optional[List[tuple]] = None
52
-
53
44
  # ____ ____ _ _ ____ ___ ____ _ _ ____ ___ ____ ____
54
45
  # | | | |\ | [__ | |__/ | | | | | | |__/
55
46
  # |___ |__| | \| ___] | | \ |__| |___ | |__| | \
@@ -61,10 +52,10 @@ class RequestPayloads:
61
52
  files: Optional[List[tuple]] = None
62
53
  ):
63
54
  """Construct an instance of RequestPayloads class."""
64
- self.params = params
65
- self.body = body
66
- self.data = data
67
- self.files = files
55
+ self._params = params
56
+ self._body = body
57
+ self._data = data
58
+ self._files = files
68
59
 
69
60
  # ___ ____ ____ ___ ____ ____ ___ _ ____ ____
70
61
  # |__] |__/ | | |__] |___ |__/ | | |___ [__
@@ -35,42 +35,35 @@ OTHER DEALINGS IN THE SOFTWARE.
35
35
 
36
36
  For more information, please refer to <https://unlicense.org>
37
37
  """
38
- from typing import Type, Dict, Optional, List
38
+ from typing import Any, Dict, Optional, List
39
39
 
40
40
 
41
41
  class RequestValidator:
42
42
  """This class represents a request payload validator."""
43
43
 
44
- # ____ ___ ___ ____ _ ___ _ _ ___ ____ ____
45
- # |__| | | |__/ | |__] | | | |___ [__
46
- # | | | | | \ | |__] |__| | |___ ___]
47
- #
48
- _validator: Optional[Dict[str, Type]] = None
49
- _required: Optional[List[str]] = None
50
-
51
44
  # ____ ____ _ _ ____ ___ ____ _ _ ____ ___ ____ ____
52
45
  # | | | |\ | [__ | |__/ | | | | | | |__/
53
46
  # |___ |__| | \| ___] | | \ |__| |___ | |__| | \
54
47
  #
55
48
  def __init__(self,
56
- validator: Optional[Dict[str, Type]] = None,
49
+ validator: Optional[Dict[str, Any]] = None,
57
50
  required: Optional[List[str]] = None
58
51
  ):
59
52
  """Construct an instance of RequestValidator class."""
60
- self.validator = validator
61
- self.required = required
53
+ self._validator: Optional[Dict[str, Any]] = validator
54
+ self._required: Optional[List[str]] = required
62
55
 
63
56
  # ___ ____ ____ ___ ____ ____ ___ _ ____ ____
64
57
  # |__] |__/ | | |__] |___ |__/ | | |___ [__
65
58
  # | | \ |__| | |___ | \ | | |___ ___]
66
59
  #
67
60
  @property
68
- def validator(self) -> Optional[Dict[str, Type]]:
61
+ def validator(self) -> Optional[Dict[str, Any]]:
69
62
  """Return the validator dictionary."""
70
63
  return self._validator
71
64
 
72
65
  @validator.setter
73
- def validator(self, value: Optional[Dict[str, Type]]):
66
+ def validator(self, value: Optional[Dict[str, Any]]):
74
67
  """Set the validator dictionary."""
75
68
  self._validator = value
76
69
 
@@ -88,7 +81,7 @@ class RequestValidator:
88
81
  # This code will be updated to the following once Python 3.6 support is dropped.
89
82
  #
90
83
  # from dataclasses import dataclass
91
- # from typing import Type, Dict, Optional, List
84
+ # from typing import Any, Dict, Optional, List
92
85
 
93
86
 
94
87
  # @dataclass
@@ -99,5 +92,5 @@ class RequestValidator:
99
92
  # # |__| | | |__/ | |__] | | | |___ [__
100
93
  # # | | | | | \ | |__] |__| | |___ ___]
101
94
  # #
102
- # validator: Optional[Dict[str, Type]] = None
95
+ # validator: Optional[Dict[str, Any]] = None
103
96
  # required: Optional[List[str]] = None
@@ -43,23 +43,6 @@ from .._constant import MIN_TOKEN_RENEW_WINDOW, MAX_TOKEN_RENEW_WINDOW
43
43
  class BearerToken:
44
44
  """This class represents a bearer token received from the API."""
45
45
 
46
- # ____ ___ ___ ____ _ ___ _ _ ___ ____ ____
47
- # |__| | | |__/ | |__] | | | |___ [__
48
- # | | | | | \ | |__] |__| | |___ ___]
49
- #
50
- # Integer specifying the amount of time remaining before the token expires (in seconds).
51
- _expiration: int = 0
52
- # Float indicating the moment in time that the token was generated (timestamp).
53
- _token_time: float = 0
54
- # String containing the error message received from the API when token generation failed.
55
- _fail_reason: Optional[str] = None
56
- # Integer representing the HTTP status code received when generating the token.
57
- _status: Optional[int] = None
58
- # String representation of the token.
59
- _value: Optional[str] = None
60
- # Number of seconds between token expiration and now before a token is considered stale.
61
- _renew_window: int = 120
62
-
63
46
  # ____ ____ _ _ ____ ___ ____ _ _ ____ ___ ____ ____
64
47
  # | | | |\ | [__ | |__/ | | | | | | |__/
65
48
  # |___ |__| | \| ___] | | \ |__| |___ | |__| | \
@@ -67,19 +50,32 @@ class BearerToken:
67
50
  # Tokens can be instantiated without a value (e.g. invalid or expired).
68
51
  def __init__(self,
69
52
  token_value: Optional[str] = None,
70
- expiration: Optional[int] = None,
53
+ expiration: Optional[int] = 0,
71
54
  status: Optional[int] = None
72
55
  ):
73
56
  """Create an instance of the BearerToken class."""
74
- # if token_value:
75
57
  self._value = token_value
58
+
59
+ # String containing the error message received from the API when token generation failed.
60
+ self._fail_reason: Optional[str] = None
61
+ # Number of seconds between token expiration and now before a token is considered stale.
62
+ self._renew_window: int = 120
63
+
64
+ # Integer specifying the amount of time remaining before the token expires (in seconds).
65
+ self._expiration: int = 0
76
66
  if isinstance(expiration, int):
77
67
  self._expiration = expiration
78
- if token_value:
79
- self._token_time = time.time()
68
+
69
+ # Integer representing the HTTP status code received when generating the token.
70
+ self._status: Optional[int] = None
80
71
  if isinstance(status, int):
81
72
  self._status = status
82
73
 
74
+ # Float indicating the moment in time that the token was generated (timestamp).
75
+ self._token_time: float = 0
76
+ if token_value:
77
+ self._token_time = time.time()
78
+
83
79
  # _ _ ____ ___ _ _ ____ ___ ____
84
80
  # |\/| |___ | |__| | | | \ [__
85
81
  # | | |___ | | | |__| |__/ ___]