psengine 2.8.0__tar.gz → 2.8.2__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 (163) hide show
  1. {psengine-2.8.0 → psengine-2.8.2}/PKG-INFO +4 -4
  2. {psengine-2.8.0 → psengine-2.8.2}/psengine/entity_lists/entity_list.py +3 -15
  3. {psengine-2.8.0 → psengine-2.8.2}/pyproject.toml +5 -5
  4. {psengine-2.8.0 → psengine-2.8.2}/README.md +0 -0
  5. {psengine-2.8.0 → psengine-2.8.2}/psengine/__init__.py +0 -0
  6. {psengine-2.8.0 → psengine-2.8.2}/psengine/_sdk_id.py +0 -0
  7. {psengine-2.8.0 → psengine-2.8.2}/psengine/analyst_notes/__init__.py +0 -0
  8. {psengine-2.8.0 → psengine-2.8.2}/psengine/analyst_notes/constants.py +0 -0
  9. {psengine-2.8.0 → psengine-2.8.2}/psengine/analyst_notes/errors.py +0 -0
  10. {psengine-2.8.0 → psengine-2.8.2}/psengine/analyst_notes/helpers.py +0 -0
  11. {psengine-2.8.0 → psengine-2.8.2}/psengine/analyst_notes/markdown.py +0 -0
  12. {psengine-2.8.0 → psengine-2.8.2}/psengine/analyst_notes/models.py +0 -0
  13. {psengine-2.8.0 → psengine-2.8.2}/psengine/analyst_notes/note.py +0 -0
  14. {psengine-2.8.0 → psengine-2.8.2}/psengine/analyst_notes/note_mgr.py +0 -0
  15. {psengine-2.8.0 → psengine-2.8.2}/psengine/asi/__init__.py +0 -0
  16. {psengine-2.8.0 → psengine-2.8.2}/psengine/asi/asi.py +0 -0
  17. {psengine-2.8.0 → psengine-2.8.2}/psengine/asi/asi_mgr.py +0 -0
  18. {psengine-2.8.0 → psengine-2.8.2}/psengine/asi/client.py +0 -0
  19. {psengine-2.8.0 → psengine-2.8.2}/psengine/asi/constants.py +0 -0
  20. {psengine-2.8.0 → psengine-2.8.2}/psengine/asi/errors.py +0 -0
  21. {psengine-2.8.0 → psengine-2.8.2}/psengine/asi/models.py +0 -0
  22. {psengine-2.8.0 → psengine-2.8.2}/psengine/base_http_client.py +0 -0
  23. {psengine-2.8.0 → psengine-2.8.2}/psengine/classic_alerts/__init__.py +0 -0
  24. {psengine-2.8.0 → psengine-2.8.2}/psengine/classic_alerts/classic_alert.py +0 -0
  25. {psengine-2.8.0 → psengine-2.8.2}/psengine/classic_alerts/classic_alert_mgr.py +0 -0
  26. {psengine-2.8.0 → psengine-2.8.2}/psengine/classic_alerts/constants.py +0 -0
  27. {psengine-2.8.0 → psengine-2.8.2}/psengine/classic_alerts/errors.py +0 -0
  28. {psengine-2.8.0 → psengine-2.8.2}/psengine/classic_alerts/helpers.py +0 -0
  29. {psengine-2.8.0 → psengine-2.8.2}/psengine/classic_alerts/markdown/__init__.py +0 -0
  30. {psengine-2.8.0 → psengine-2.8.2}/psengine/classic_alerts/markdown/markdown.py +0 -0
  31. {psengine-2.8.0 → psengine-2.8.2}/psengine/classic_alerts/models.py +0 -0
  32. {psengine-2.8.0 → psengine-2.8.2}/psengine/collective_insights/__init__.py +0 -0
  33. {psengine-2.8.0 → psengine-2.8.2}/psengine/collective_insights/collective_insights.py +0 -0
  34. {psengine-2.8.0 → psengine-2.8.2}/psengine/collective_insights/constants.py +0 -0
  35. {psengine-2.8.0 → psengine-2.8.2}/psengine/collective_insights/errors.py +0 -0
  36. {psengine-2.8.0 → psengine-2.8.2}/psengine/collective_insights/insight.py +0 -0
  37. {psengine-2.8.0 → psengine-2.8.2}/psengine/collective_insights/models.py +0 -0
  38. {psengine-2.8.0 → psengine-2.8.2}/psengine/common_models.py +0 -0
  39. {psengine-2.8.0 → psengine-2.8.2}/psengine/config/__init__.py +0 -0
  40. {psengine-2.8.0 → psengine-2.8.2}/psengine/config/config.py +0 -0
  41. {psengine-2.8.0 → psengine-2.8.2}/psengine/config/errors.py +0 -0
  42. {psengine-2.8.0 → psengine-2.8.2}/psengine/constants.py +0 -0
  43. {psengine-2.8.0 → psengine-2.8.2}/psengine/detection/__init__.py +0 -0
  44. {psengine-2.8.0 → psengine-2.8.2}/psengine/detection/detection_mgr.py +0 -0
  45. {psengine-2.8.0 → psengine-2.8.2}/psengine/detection/detection_rule.py +0 -0
  46. {psengine-2.8.0 → psengine-2.8.2}/psengine/detection/errors.py +0 -0
  47. {psengine-2.8.0 → psengine-2.8.2}/psengine/detection/helpers.py +0 -0
  48. {psengine-2.8.0 → psengine-2.8.2}/psengine/detection/models.py +0 -0
  49. {psengine-2.8.0 → psengine-2.8.2}/psengine/endpoints.py +0 -0
  50. {psengine-2.8.0 → psengine-2.8.2}/psengine/enrich/__init__.py +0 -0
  51. {psengine-2.8.0 → psengine-2.8.2}/psengine/enrich/constants.py +0 -0
  52. {psengine-2.8.0 → psengine-2.8.2}/psengine/enrich/errors.py +0 -0
  53. {psengine-2.8.0 → psengine-2.8.2}/psengine/enrich/lookup.py +0 -0
  54. {psengine-2.8.0 → psengine-2.8.2}/psengine/enrich/lookup_mgr.py +0 -0
  55. {psengine-2.8.0 → psengine-2.8.2}/psengine/enrich/models/__init__.py +0 -0
  56. {psengine-2.8.0 → psengine-2.8.2}/psengine/enrich/models/base_enriched_entity.py +0 -0
  57. {psengine-2.8.0 → psengine-2.8.2}/psengine/enrich/models/lookup.py +0 -0
  58. {psengine-2.8.0 → psengine-2.8.2}/psengine/enrich/models/soar.py +0 -0
  59. {psengine-2.8.0 → psengine-2.8.2}/psengine/enrich/soar.py +0 -0
  60. {psengine-2.8.0 → psengine-2.8.2}/psengine/enrich/soar_mgr.py +0 -0
  61. {psengine-2.8.0 → psengine-2.8.2}/psengine/entity_lists/__init__.py +0 -0
  62. {psengine-2.8.0 → psengine-2.8.2}/psengine/entity_lists/constants.py +0 -0
  63. {psengine-2.8.0 → psengine-2.8.2}/psengine/entity_lists/entity_list_mgr.py +0 -0
  64. {psengine-2.8.0 → psengine-2.8.2}/psengine/entity_lists/errors.py +0 -0
  65. {psengine-2.8.0 → psengine-2.8.2}/psengine/entity_lists/models.py +0 -0
  66. {psengine-2.8.0 → psengine-2.8.2}/psengine/entity_match/__init__.py +0 -0
  67. {psengine-2.8.0 → psengine-2.8.2}/psengine/entity_match/entity_match.py +0 -0
  68. {psengine-2.8.0 → psengine-2.8.2}/psengine/entity_match/entity_match_mgr.py +0 -0
  69. {psengine-2.8.0 → psengine-2.8.2}/psengine/entity_match/errors.py +0 -0
  70. {psengine-2.8.0 → psengine-2.8.2}/psengine/entity_match/models.py +0 -0
  71. {psengine-2.8.0 → psengine-2.8.2}/psengine/errors.py +0 -0
  72. {psengine-2.8.0 → psengine-2.8.2}/psengine/fusion/__init__.py +0 -0
  73. {psengine-2.8.0 → psengine-2.8.2}/psengine/fusion/errors.py +0 -0
  74. {psengine-2.8.0 → psengine-2.8.2}/psengine/fusion/fusion_mgr.py +0 -0
  75. {psengine-2.8.0 → psengine-2.8.2}/psengine/fusion/models.py +0 -0
  76. {psengine-2.8.0 → psengine-2.8.2}/psengine/helpers/__init__.py +0 -0
  77. {psengine-2.8.0 → psengine-2.8.2}/psengine/helpers/helpers.py +0 -0
  78. {psengine-2.8.0 → psengine-2.8.2}/psengine/identity/__init__.py +0 -0
  79. {psengine-2.8.0 → psengine-2.8.2}/psengine/identity/constants.py +0 -0
  80. {psengine-2.8.0 → psengine-2.8.2}/psengine/identity/errors.py +0 -0
  81. {psengine-2.8.0 → psengine-2.8.2}/psengine/identity/identity.py +0 -0
  82. {psengine-2.8.0 → psengine-2.8.2}/psengine/identity/identity_mgr.py +0 -0
  83. {psengine-2.8.0 → psengine-2.8.2}/psengine/identity/models/__init__.py +0 -0
  84. {psengine-2.8.0 → psengine-2.8.2}/psengine/identity/models/common_models.py +0 -0
  85. {psengine-2.8.0 → psengine-2.8.2}/psengine/identity/models/detections.py +0 -0
  86. {psengine-2.8.0 → psengine-2.8.2}/psengine/identity/models/incident_report.py +0 -0
  87. {psengine-2.8.0 → psengine-2.8.2}/psengine/identity/models/lookup.py +0 -0
  88. {psengine-2.8.0 → psengine-2.8.2}/psengine/links/__init__.py +0 -0
  89. {psengine-2.8.0 → psengine-2.8.2}/psengine/links/errors.py +0 -0
  90. {psengine-2.8.0 → psengine-2.8.2}/psengine/links/links.py +0 -0
  91. {psengine-2.8.0 → psengine-2.8.2}/psengine/links/links_mgr.py +0 -0
  92. {psengine-2.8.0 → psengine-2.8.2}/psengine/links/models.py +0 -0
  93. {psengine-2.8.0 → psengine-2.8.2}/psengine/logger/__init__.py +0 -0
  94. {psengine-2.8.0 → psengine-2.8.2}/psengine/logger/constants.py +0 -0
  95. {psengine-2.8.0 → psengine-2.8.2}/psengine/logger/errors.py +0 -0
  96. {psengine-2.8.0 → psengine-2.8.2}/psengine/logger/rf_logger.py +0 -0
  97. {psengine-2.8.0 → psengine-2.8.2}/psengine/malware_intel/__init__.py +0 -0
  98. {psengine-2.8.0 → psengine-2.8.2}/psengine/malware_intel/auto_sigma_mgr.py +0 -0
  99. {psengine-2.8.0 → psengine-2.8.2}/psengine/malware_intel/auto_yara_mgr.py +0 -0
  100. {psengine-2.8.0 → psengine-2.8.2}/psengine/malware_intel/constants.py +0 -0
  101. {psengine-2.8.0 → psengine-2.8.2}/psengine/malware_intel/errors.py +0 -0
  102. {psengine-2.8.0 → psengine-2.8.2}/psengine/malware_intel/helpers.py +0 -0
  103. {psengine-2.8.0 → psengine-2.8.2}/psengine/malware_intel/malware_intel.py +0 -0
  104. {psengine-2.8.0 → psengine-2.8.2}/psengine/malware_intel/malware_intel_mgr.py +0 -0
  105. {psengine-2.8.0 → psengine-2.8.2}/psengine/malware_intel/models.py +0 -0
  106. {psengine-2.8.0 → psengine-2.8.2}/psengine/markdown/__init__.py +0 -0
  107. {psengine-2.8.0 → psengine-2.8.2}/psengine/markdown/markdown.py +0 -0
  108. {psengine-2.8.0 → psengine-2.8.2}/psengine/markdown/models.py +0 -0
  109. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/__init__.py +0 -0
  110. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/constants.py +0 -0
  111. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/errors.py +0 -0
  112. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/helpers.py +0 -0
  113. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/mappings.py +0 -0
  114. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/markdown/__init__.py +0 -0
  115. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/markdown/markdown.py +0 -0
  116. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/markdown/markdown_code_repo.py +0 -0
  117. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/markdown/markdown_cyber_vulnerability.py +0 -0
  118. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/markdown/markdown_domain_abuse.py +0 -0
  119. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/markdown/markdown_geopolitics_facility.py +0 -0
  120. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/markdown/markdown_identity_exposure.py +0 -0
  121. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/markdown/markdown_malware_report.py +0 -0
  122. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/markdown/markdown_third_party_risk.py +0 -0
  123. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/models/__init__.py +0 -0
  124. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/models/common_models.py +0 -0
  125. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/models/panel_log.py +0 -0
  126. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/models/panel_status.py +0 -0
  127. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/models/pba_code_repo_leak.py +0 -0
  128. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/models/pba_cyber_vulnerability.py +0 -0
  129. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/models/pba_domain_abuse.py +0 -0
  130. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/models/pba_geopolitics_facility.py +0 -0
  131. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/models/pba_identity_exposures.py +0 -0
  132. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/models/pba_malware_report.py +0 -0
  133. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/models/pba_third_party_risk.py +0 -0
  134. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/models/search_endpoint.py +0 -0
  135. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/pa_category.py +0 -0
  136. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/playbook_alert_mgr.py +0 -0
  137. {psengine-2.8.0 → psengine-2.8.2}/psengine/playbook_alerts/playbook_alerts.py +0 -0
  138. {psengine-2.8.0 → psengine-2.8.2}/psengine/py.typed +0 -0
  139. {psengine-2.8.0 → psengine-2.8.2}/psengine/rf_client.py +0 -0
  140. {psengine-2.8.0 → psengine-2.8.2}/psengine/risk_history/__init__.py +0 -0
  141. {psengine-2.8.0 → psengine-2.8.2}/psengine/risk_history/errors.py +0 -0
  142. {psengine-2.8.0 → psengine-2.8.2}/psengine/risk_history/models.py +0 -0
  143. {psengine-2.8.0 → psengine-2.8.2}/psengine/risk_history/risk_history_mgr.py +0 -0
  144. {psengine-2.8.0 → psengine-2.8.2}/psengine/risklists/__init__.py +0 -0
  145. {psengine-2.8.0 → psengine-2.8.2}/psengine/risklists/constants.py +0 -0
  146. {psengine-2.8.0 → psengine-2.8.2}/psengine/risklists/errors.py +0 -0
  147. {psengine-2.8.0 → psengine-2.8.2}/psengine/risklists/models.py +0 -0
  148. {psengine-2.8.0 → psengine-2.8.2}/psengine/risklists/risklist_mgr.py +0 -0
  149. {psengine-2.8.0 → psengine-2.8.2}/psengine/stix2/__init__.py +0 -0
  150. {psengine-2.8.0 → psengine-2.8.2}/psengine/stix2/base_stix_entity.py +0 -0
  151. {psengine-2.8.0 → psengine-2.8.2}/psengine/stix2/complex_entity.py +0 -0
  152. {psengine-2.8.0 → psengine-2.8.2}/psengine/stix2/constants.py +0 -0
  153. {psengine-2.8.0 → psengine-2.8.2}/psengine/stix2/enriched_indicator.py +0 -0
  154. {psengine-2.8.0 → psengine-2.8.2}/psengine/stix2/errors.py +0 -0
  155. {psengine-2.8.0 → psengine-2.8.2}/psengine/stix2/helpers.py +0 -0
  156. {psengine-2.8.0 → psengine-2.8.2}/psengine/stix2/rf_bundle.py +0 -0
  157. {psengine-2.8.0 → psengine-2.8.2}/psengine/stix2/simple_entity.py +0 -0
  158. {psengine-2.8.0 → psengine-2.8.2}/psengine/stix2/util.py +0 -0
  159. {psengine-2.8.0 → psengine-2.8.2}/psengine/threat_maps/__init__.py +0 -0
  160. {psengine-2.8.0 → psengine-2.8.2}/psengine/threat_maps/errors.py +0 -0
  161. {psengine-2.8.0 → psengine-2.8.2}/psengine/threat_maps/models.py +0 -0
  162. {psengine-2.8.0 → psengine-2.8.2}/psengine/threat_maps/threat_map.py +0 -0
  163. {psengine-2.8.0 → psengine-2.8.2}/psengine/threat_maps/threat_map_mgr.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: psengine
3
- Version: 2.8.0
3
+ Version: 2.8.2
4
4
  Summary: psengine is a simple, yet elegant, library for rapid development of integrations with Recorded Future.
5
5
  Keywords: API,Recorded Future,Cyber Security Engineering,Threat Intelligence
6
6
  Author: Moise Medici, Patrick Kinsella, Ernest Bartosevic
@@ -17,13 +17,13 @@ Classifier: Programming Language :: Python :: 3.12
17
17
  Classifier: Programming Language :: Python :: 3.13
18
18
  Classifier: Programming Language :: Python :: 3.14
19
19
  Requires-Dist: typing-extensions>=4.8.0
20
- Requires-Dist: requests>=2.27.1
20
+ Requires-Dist: requests>=2.33.1
21
21
  Requires-Dist: jsonpath-ng>=1.5.3,<=1.8.0
22
- Requires-Dist: stix2~=3.0.1
22
+ Requires-Dist: stix2~=3.0.2
23
23
  Requires-Dist: python-dateutil>=2.7.0
24
24
  Requires-Dist: more-itertools>=9.0.0,<=11.0.2
25
25
  Requires-Dist: pydantic>=2.7,<3.0.0
26
- Requires-Dist: pydantic-settings[toml]>=2.12.2,<2.14.1
26
+ Requires-Dist: pydantic-settings[toml]>=2.14.2,<2.15.0
27
27
  Requires-Dist: markdown-strings==3.4.0
28
28
  Requires-Python: >=3.10, <3.15
29
29
  Project-URL: Homepage, https://recordedfuture-professionalservices.github.io/psengine/latest/
@@ -50,8 +50,8 @@ class ListInfoOut(RFBaseModel):
50
50
  )
51
51
  owner_id: str
52
52
  owner_name: str
53
- organisation_id: str
54
- organisation_name: str
53
+ organisation_id: str | None = None
54
+ organisation_name: str | None = None
55
55
 
56
56
 
57
57
  class ListStatusOut(RFBaseModel):
@@ -85,25 +85,13 @@ class ListEntity(RFBaseModel):
85
85
  )
86
86
 
87
87
 
88
- class EntityList(RFBaseModel):
88
+ class EntityList(ListInfoOut):
89
89
  """Validate data received from `/create` endpoint."""
90
90
 
91
91
  model_config = ConfigDict(arbitrary_types_allowed=True)
92
92
  rf_client: RFClient = Field(exclude=True)
93
93
  match_mgr: EntityMatchMgr = Field(exclude=True)
94
94
  log: logging.Logger = Field(exclude=True, default=logging.getLogger(__name__))
95
- id_: str = Field(alias='id')
96
- name: str
97
- type_: str = Field(alias='type')
98
- created: datetime
99
- updated: datetime
100
- owner_id: str
101
- owner_name: str
102
- organisation_id: str | None = None
103
- organisation_name: str | None = None
104
- owner_organisation_details: OwnerOrganisationDetails = Field(
105
- default_factory=OwnerOrganisationDetails
106
- )
107
95
 
108
96
  def __hash__(self):
109
97
  return hash(self.id_)
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "psengine"
3
- version = "2.8.0"
3
+ version = "2.8.2"
4
4
  readme = "README.md"
5
5
  license = "MIT"
6
6
  requires-python = ">=3.10, <3.15"
@@ -28,13 +28,13 @@ classifiers=[
28
28
 
29
29
  dependencies = [
30
30
  "typing_extensions >= 4.8.0",
31
- "requests>=2.27.1",
31
+ "requests>=2.33.1",
32
32
  "jsonpath_ng>=1.5.3, <=1.8.0",
33
- "stix2~=3.0.1",
33
+ "stix2~=3.0.2",
34
34
  "python-dateutil>=2.7.0",
35
35
  "more-itertools>=9.0.0, <=11.0.2",
36
36
  "pydantic>=2.7, <3.0.0",
37
- "pydantic-settings[toml]>=2.12.2,<2.14.1",
37
+ "pydantic-settings[toml]>=2.14.2,<2.15.0",
38
38
  "markdown-strings==3.4.0"
39
39
  ]
40
40
 
@@ -60,7 +60,7 @@ dev = [
60
60
  docs = [
61
61
  "mike>=2.1.4,<2.3.0",
62
62
  "mkdocs~=1.6.1",
63
- "mkdocs-material>=9.6.18,<9.8.0",
63
+ "mkdocs-material>=9.7.6,<9.8.0",
64
64
  "mkdocstrings[python]>=0.18",
65
65
  "griffe-typingdoc>=0.2.8,<0.4.0",
66
66
  "mkdocs-codeinclude-plugin~=0.2.1",
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes