psengine 2.0.4__tar.gz → 2.0.5__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.
- {psengine-2.0.4 → psengine-2.0.5}/PKG-INFO +4 -4
- {psengine-2.0.4 → psengine-2.0.5}/README.rst +1 -1
- {psengine-2.0.4 → psengine-2.0.5}/psengine/_version.py +1 -1
- {psengine-2.0.4 → psengine-2.0.5}/psengine/base_http_client.py +4 -1
- {psengine-2.0.4 → psengine-2.0.5}/psengine.egg-info/PKG-INFO +4 -4
- {psengine-2.0.4 → psengine-2.0.5}/pyproject.toml +3 -3
- {psengine-2.0.4 → psengine-2.0.5}/LICENSE +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/__init__.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/_sdk_id.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/analyst_notes/__init__.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/analyst_notes/constants.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/analyst_notes/errors.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/analyst_notes/helpers.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/analyst_notes/models.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/analyst_notes/note.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/analyst_notes/note_mgr.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/classic_alerts/__init__.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/classic_alerts/classic_alert.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/classic_alerts/classic_alert_mgr.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/classic_alerts/constants.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/classic_alerts/errors.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/classic_alerts/helpers.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/classic_alerts/markdown/__init__.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/classic_alerts/markdown/markdown.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/classic_alerts/models.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/collective_insights/__init__.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/collective_insights/collective_insights.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/collective_insights/constants.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/collective_insights/errors.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/collective_insights/insight.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/collective_insights/models.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/common_models.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/config/__init__.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/config/config.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/config/errors.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/constants.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/detection/__init__.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/detection/detection_mgr.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/detection/detection_rule.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/detection/errors.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/detection/helpers.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/detection/models.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/endpoints.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/enrich/__init__.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/enrich/constants.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/enrich/errors.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/enrich/lookup.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/enrich/lookup_mgr.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/enrich/models/__init__.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/enrich/models/base_enriched_entity.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/enrich/models/lookup.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/enrich/models/soar.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/enrich/soar.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/enrich/soar_mgr.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/entity_lists/__init__.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/entity_lists/constants.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/entity_lists/entity_list.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/entity_lists/entity_list_mgr.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/entity_lists/errors.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/entity_lists/models.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/entity_match/__init__.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/entity_match/entity_match.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/entity_match/entity_match_mgr.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/entity_match/errors.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/entity_match/models.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/errors.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/helpers/__init__.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/helpers/helpers.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/logger/__init__.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/logger/constants.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/logger/errors.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/logger/rf_logger.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/markdown/__init__.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/markdown/markdown.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/markdown/models.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/playbook_alerts/__init__.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/playbook_alerts/constants.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/playbook_alerts/errors.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/playbook_alerts/helpers.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/playbook_alerts/mappings.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/playbook_alerts/markdown/__init__.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/playbook_alerts/markdown/markdown.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/playbook_alerts/markdown/markdown_code_repo.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/playbook_alerts/markdown/markdown_domain_abuse.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/playbook_alerts/markdown/markdown_identity_exposure.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/playbook_alerts/models/__init__.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/playbook_alerts/models/common_models.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/playbook_alerts/models/panel_log.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/playbook_alerts/models/panel_status.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/playbook_alerts/models/pba_code_repo_leak.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/playbook_alerts/models/pba_cyber_vulnerability.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/playbook_alerts/models/pba_domain_abuse.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/playbook_alerts/models/pba_identity_exposures.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/playbook_alerts/models/pba_third_party_risk.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/playbook_alerts/models/search_endpoint.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/playbook_alerts/pa_category.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/playbook_alerts/playbook_alert_mgr.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/playbook_alerts/playbook_alerts.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/rf_client.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/risklists/__init__.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/risklists/constants.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/risklists/errors.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/risklists/models.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/risklists/risklist_mgr.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/stix2/__init__.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/stix2/base_stix_entity.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/stix2/complex_entity.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/stix2/constants.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/stix2/enriched_indicator.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/stix2/errors.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/stix2/helpers.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/stix2/rf_bundle.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/stix2/simple_entity.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine/stix2/util.py +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine.egg-info/SOURCES.txt +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine.egg-info/dependency_links.txt +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine.egg-info/entry_points.txt +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine.egg-info/requires.txt +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/psengine.egg-info/top_level.txt +0 -0
- {psengine-2.0.4 → psengine-2.0.5}/setup.cfg +0 -0
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: psengine
|
|
3
|
-
Version: 2.0.
|
|
3
|
+
Version: 2.0.5
|
|
4
4
|
Summary: psengine is a simple, yet elegant, library for rapid development of integrations with Recorded Future.
|
|
5
5
|
Author-email: Moise Medici <moise.medici@recordedfuture.com>, Patrick Kinsella <patrick.kinsella@recordedfuture.com>, Ernest Bartosevic <ernest.bartosevic@recordedfuture.com>
|
|
6
6
|
License-Expression: MIT
|
|
7
|
-
Project-URL: Homepage, https://github.com/RecordedFuture-ProfessionalServices/psengine
|
|
8
|
-
Project-URL: Changelog, https://github.com/RecordedFuture-ProfessionalServices/psengine
|
|
7
|
+
Project-URL: Homepage, https://github.com/RecordedFuture-ProfessionalServices/psengine
|
|
8
|
+
Project-URL: Changelog, https://github.com/RecordedFuture-ProfessionalServices/psengine/CHANGELOG.rst
|
|
9
9
|
Keywords: API,Recorded Future,Cyber Security Engineering,Threat Intelligence
|
|
10
10
|
Requires-Python: <3.14,>=3.9
|
|
11
11
|
Description-Content-Type: text/x-rst
|
|
@@ -76,7 +76,7 @@ PSEngine is a Python package that can be installed using pip. To install PSengin
|
|
|
76
76
|
|
|
77
77
|
.. code-block:: bash
|
|
78
78
|
|
|
79
|
-
$ pip install psengine
|
|
79
|
+
$ pip install psengine
|
|
80
80
|
|
|
81
81
|
|
|
82
82
|
PSEngine officially supports Python >= 3.9, < 3.14
|
|
@@ -33,7 +33,7 @@ PSEngine is a Python package that can be installed using pip. To install PSengin
|
|
|
33
33
|
|
|
34
34
|
.. code-block:: bash
|
|
35
35
|
|
|
36
|
-
$ pip install psengine
|
|
36
|
+
$ pip install psengine
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
PSEngine officially supports Python >= 3.9, < 3.14
|
|
@@ -164,7 +164,10 @@ class BaseHTTPClient:
|
|
|
164
164
|
except JSONDecodeError:
|
|
165
165
|
data = {}
|
|
166
166
|
|
|
167
|
-
message = data.get('message') or data.get('error', {})
|
|
167
|
+
message = data.get('message') or data.get('error', {})
|
|
168
|
+
if isinstance(message, dict):
|
|
169
|
+
message = message.get('message')
|
|
170
|
+
|
|
168
171
|
if message:
|
|
169
172
|
msg += f', Cause: {message}'
|
|
170
173
|
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: psengine
|
|
3
|
-
Version: 2.0.
|
|
3
|
+
Version: 2.0.5
|
|
4
4
|
Summary: psengine is a simple, yet elegant, library for rapid development of integrations with Recorded Future.
|
|
5
5
|
Author-email: Moise Medici <moise.medici@recordedfuture.com>, Patrick Kinsella <patrick.kinsella@recordedfuture.com>, Ernest Bartosevic <ernest.bartosevic@recordedfuture.com>
|
|
6
6
|
License-Expression: MIT
|
|
7
|
-
Project-URL: Homepage, https://github.com/RecordedFuture-ProfessionalServices/psengine
|
|
8
|
-
Project-URL: Changelog, https://github.com/RecordedFuture-ProfessionalServices/psengine
|
|
7
|
+
Project-URL: Homepage, https://github.com/RecordedFuture-ProfessionalServices/psengine
|
|
8
|
+
Project-URL: Changelog, https://github.com/RecordedFuture-ProfessionalServices/psengine/CHANGELOG.rst
|
|
9
9
|
Keywords: API,Recorded Future,Cyber Security Engineering,Threat Intelligence
|
|
10
10
|
Requires-Python: <3.14,>=3.9
|
|
11
11
|
Description-Content-Type: text/x-rst
|
|
@@ -76,7 +76,7 @@ PSEngine is a Python package that can be installed using pip. To install PSengin
|
|
|
76
76
|
|
|
77
77
|
.. code-block:: bash
|
|
78
78
|
|
|
79
|
-
$ pip install psengine
|
|
79
|
+
$ pip install psengine
|
|
80
80
|
|
|
81
81
|
|
|
82
82
|
PSEngine officially supports Python >= 3.9, < 3.14
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "psengine"
|
|
3
|
-
version = "2.0.
|
|
3
|
+
version = "2.0.5"
|
|
4
4
|
readme = "README.rst"
|
|
5
5
|
license = "MIT"
|
|
6
6
|
requires-python = ">=3.9, <3.14"
|
|
@@ -56,8 +56,8 @@ requires = [
|
|
|
56
56
|
build-backend = "setuptools.build_meta"
|
|
57
57
|
|
|
58
58
|
[project.urls]
|
|
59
|
-
Homepage = "https://github.com/RecordedFuture-ProfessionalServices/psengine
|
|
60
|
-
Changelog = "https://github.com/RecordedFuture-ProfessionalServices/psengine
|
|
59
|
+
Homepage = "https://github.com/RecordedFuture-ProfessionalServices/psengine"
|
|
60
|
+
Changelog = "https://github.com/RecordedFuture-ProfessionalServices/psengine/CHANGELOG.rst"
|
|
61
61
|
|
|
62
62
|
[project.scripts]
|
|
63
63
|
psengine = "psengine_cli:main"
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{psengine-2.0.4 → psengine-2.0.5}/psengine/playbook_alerts/markdown/markdown_domain_abuse.py
RENAMED
|
File without changes
|
{psengine-2.0.4 → psengine-2.0.5}/psengine/playbook_alerts/markdown/markdown_identity_exposure.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{psengine-2.0.4 → psengine-2.0.5}/psengine/playbook_alerts/models/pba_cyber_vulnerability.py
RENAMED
|
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
|
|
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
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|