hiddenlayer-sdk 0.1.2__tar.gz → 1.1.0__tar.gz
Sign up to get free protection for your applications and to get access to all the features.
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/PKG-INFO +27 -8
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/README.md +25 -6
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/constants.py +1 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/models.py +59 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/__init__.py +126 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/rest/api/__init__.py +3 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/rest/api/aidr_predictive_api.py +1 -1
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/api/health_api.py +272 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/rest/api/model_scan_api.py +1 -1
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/api/model_supply_chain_api.py +2927 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/api/readiness_api.py +272 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/rest/api/sensor_api.py +354 -37
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/rest/api_client.py +1 -1
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/rest/configuration.py +4 -4
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/rest/exceptions.py +1 -1
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/__init__.py +104 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/address.py +110 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/artifact.py +155 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/artifact_change.py +108 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/artifact_content.py +101 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/artifact_location.py +109 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/attachment.py +129 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/code_flow.py +113 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/configuration_override.py +108 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/conversion.py +114 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/rest/models/create_sensor_request.py +1 -1
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/detections.py +101 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/edge.py +108 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/edge_traversal.py +122 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/exception.py +113 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/external_properties.py +273 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/external_property_file_reference.py +102 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/external_property_file_references.py +240 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/file_details_v3.py +140 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/file_scan_report_v3.py +132 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/file_scan_reports_v3.py +95 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/fix.py +113 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/rest/models/get_multipart_upload_response.py +1 -1
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/graph.py +123 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/graph_traversal.py +97 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/invocation.py +199 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/location.py +146 -0
- hiddenlayer_sdk-0.1.2/hiddenlayer/sdk/rest/models/validation_error_model_loc_inner.py → hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/location_inner.py +7 -7
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/location_relationship.py +107 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/logical_location.py +104 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/message.py +92 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/mitre_atlas_inner.py +110 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/rest/models/model.py +1 -1
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/model_inventory_info.py +99 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/rest/models/model_query_response.py +1 -1
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/model_scan_api_v3_scan_model_version_id_patch200_response.py +87 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/model_scan_api_v3_scan_query200_response.py +102 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/multiformat_message_string.py +95 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/rest/models/multipart_upload_part.py +1 -1
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/node.py +122 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/notification.py +157 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/paged_response_with_total.py +94 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/physical_location.py +94 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/property_bag.py +101 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/rectangle.py +110 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/region.py +127 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/replacement.py +103 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/reporting_configuration.py +113 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/reporting_descriptor.py +162 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/reporting_descriptor_reference.py +103 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/reporting_descriptor_relationship.py +115 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/result.py +312 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/result_provenance.py +133 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/rule_details_inner.py +102 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/run.py +318 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/run_automation_details.py +129 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/sarif210.py +123 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/scan_create_request.py +87 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/scan_detection_v3.py +156 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/scan_header_v3.py +129 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/scan_job.py +109 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/scan_job_inventory.py +137 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/scan_model_details_v3.py +95 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/scan_model_ids_v3.py +89 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/rest/models/scan_model_request.py +1 -1
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/scan_report_v3.py +139 -0
- hiddenlayer_sdk-0.1.2/hiddenlayer/sdk/rest/models/file_info.py → hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/scan_results.py +14 -6
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/rest/models/scan_results_v2.py +30 -10
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/security_posture.py +89 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/sensor_sor_model_card_query_response.py +101 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/sensor_sor_model_card_response.py +127 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/rest/models/sensor_sor_query_filter.py +1 -1
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/rest/models/sensor_sor_query_request.py +1 -1
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/special_locations.py +97 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/stack.py +113 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/stack_frame.py +104 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/rest/models/submission_response.py +1 -1
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/rest/models/submission_v2.py +1 -1
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/suppression.py +133 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/thread_flow.py +144 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/thread_flow_location.py +166 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/tool.py +107 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/tool_component.py +251 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/tool_component_reference.py +108 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/translation_metadata.py +110 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/rest/models/validation_error_model.py +4 -4
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/version_control_details.py +108 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/web_request.py +112 -0
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/rest/models/web_response.py +112 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/rest/rest.py +1 -1
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/services/model.py +51 -3
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/services/model_scan.py +153 -105
- hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/version.py +1 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer_sdk.egg-info/PKG-INFO +27 -8
- hiddenlayer_sdk-1.1.0/hiddenlayer_sdk.egg-info/SOURCES.txt +123 -0
- hiddenlayer_sdk-0.1.2/hiddenlayer/sdk/enterprise/enterprise_model_scan_api.py +0 -55
- hiddenlayer_sdk-0.1.2/hiddenlayer/sdk/models.py +0 -22
- hiddenlayer_sdk-0.1.2/hiddenlayer/sdk/rest/__init__.py +0 -49
- hiddenlayer_sdk-0.1.2/hiddenlayer/sdk/rest/models/__init__.py +0 -30
- hiddenlayer_sdk-0.1.2/hiddenlayer/sdk/services/__init__.py +0 -0
- hiddenlayer_sdk-0.1.2/hiddenlayer/sdk/version.py +0 -1
- hiddenlayer_sdk-0.1.2/hiddenlayer_sdk.egg-info/SOURCES.txt +0 -48
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/LICENSE +0 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/__init__.py +0 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/__init__.py +0 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/exceptions.py +0 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/rest/api_response.py +0 -0
- {hiddenlayer_sdk-0.1.2/hiddenlayer/sdk/enterprise → hiddenlayer_sdk-1.1.0/hiddenlayer/sdk/services}/__init__.py +0 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/services/aidr_predictive.py +0 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer/sdk/utils.py +0 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer_sdk.egg-info/dependency_links.txt +0 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer_sdk.egg-info/requires.txt +0 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/hiddenlayer_sdk.egg-info/top_level.txt +0 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/pyproject.toml +0 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/setup.cfg +0 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/tests/test_hiddenlayer.py +0 -0
- {hiddenlayer_sdk-0.1.2 → hiddenlayer_sdk-1.1.0}/tests/test_utils.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
|
-
Metadata-Version: 2.
|
1
|
+
Metadata-Version: 2.2
|
2
2
|
Name: hiddenlayer-sdk
|
3
|
-
Version:
|
3
|
+
Version: 1.1.0
|
4
4
|
Summary: Official HiddenLayer Python SDK
|
5
5
|
Author-email: HiddenLayer Integrations Team <integrations@hiddenlayer.com>
|
6
6
|
Maintainer-email: HiddenLayer Integrations Team <integrations@hiddenlayer.com>
|
@@ -277,25 +277,44 @@ hl_client = HiddenlayerServiceClient(
|
|
277
277
|
)
|
278
278
|
```
|
279
279
|
|
280
|
-
|
280
|
+
### Scanning Models
|
281
281
|
|
282
282
|
```python
|
283
|
-
|
284
|
-
|
285
|
-
|
286
|
-
host="https://your.hiddenlayer.enterprise.url",
|
283
|
+
hl_client.model_scanner.scan_file(
|
284
|
+
model_name="name_of_the_model",
|
285
|
+
model_path="path/to/model/file.pkl"
|
287
286
|
)
|
288
287
|
```
|
289
288
|
|
290
|
-
|
289
|
+
If you would like to specify the version associated with the model, you can pass that in as well. Note that the model version must not already exist.
|
291
290
|
|
292
291
|
```python
|
293
292
|
hl_client.model_scanner.scan_file(
|
294
293
|
model_name="name_of_the_model",
|
294
|
+
model_version=1,
|
295
295
|
model_path="path/to/model/file.pkl"
|
296
296
|
)
|
297
297
|
```
|
298
298
|
|
299
|
+
### Scanning Folders
|
300
|
+
|
301
|
+
```python
|
302
|
+
hl_client.model_scanner.scan_folder(
|
303
|
+
model_name="name_of_the_model",
|
304
|
+
path="path/to/model/"
|
305
|
+
)
|
306
|
+
```
|
307
|
+
|
308
|
+
If you would like to specify the version associated with the model, you can pass that in as well. Note that the model version must not already exist.
|
309
|
+
|
310
|
+
```python
|
311
|
+
hl_client.model_scanner.scan_folder(
|
312
|
+
model_name="name_of_the_model",
|
313
|
+
model_version=1,
|
314
|
+
path="path/to/model/"
|
315
|
+
)
|
316
|
+
```
|
317
|
+
|
299
318
|
### Using AIDR for Predictive Models
|
300
319
|
|
301
320
|
> Note: This is only supported using the SaaS version of the platform.
|
@@ -38,25 +38,44 @@ hl_client = HiddenlayerServiceClient(
|
|
38
38
|
)
|
39
39
|
```
|
40
40
|
|
41
|
-
|
41
|
+
### Scanning Models
|
42
42
|
|
43
43
|
```python
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
host="https://your.hiddenlayer.enterprise.url",
|
44
|
+
hl_client.model_scanner.scan_file(
|
45
|
+
model_name="name_of_the_model",
|
46
|
+
model_path="path/to/model/file.pkl"
|
48
47
|
)
|
49
48
|
```
|
50
49
|
|
51
|
-
|
50
|
+
If you would like to specify the version associated with the model, you can pass that in as well. Note that the model version must not already exist.
|
52
51
|
|
53
52
|
```python
|
54
53
|
hl_client.model_scanner.scan_file(
|
55
54
|
model_name="name_of_the_model",
|
55
|
+
model_version=1,
|
56
56
|
model_path="path/to/model/file.pkl"
|
57
57
|
)
|
58
58
|
```
|
59
59
|
|
60
|
+
### Scanning Folders
|
61
|
+
|
62
|
+
```python
|
63
|
+
hl_client.model_scanner.scan_folder(
|
64
|
+
model_name="name_of_the_model",
|
65
|
+
path="path/to/model/"
|
66
|
+
)
|
67
|
+
```
|
68
|
+
|
69
|
+
If you would like to specify the version associated with the model, you can pass that in as well. Note that the model version must not already exist.
|
70
|
+
|
71
|
+
```python
|
72
|
+
hl_client.model_scanner.scan_folder(
|
73
|
+
model_name="name_of_the_model",
|
74
|
+
model_version=1,
|
75
|
+
path="path/to/model/"
|
76
|
+
)
|
77
|
+
```
|
78
|
+
|
60
79
|
### Using AIDR for Predictive Models
|
61
80
|
|
62
81
|
> Note: This is only supported using the SaaS version of the platform.
|
@@ -0,0 +1,59 @@
|
|
1
|
+
from datetime import datetime
|
2
|
+
from typing import List, Optional
|
3
|
+
|
4
|
+
from pydantic import StrictStr
|
5
|
+
from typing_extensions import Self
|
6
|
+
|
7
|
+
from hiddenlayer.sdk.constants import ScanStatus
|
8
|
+
from hiddenlayer.sdk.rest.models import (
|
9
|
+
ModelInventoryInfo,
|
10
|
+
ScanReportV3,
|
11
|
+
)
|
12
|
+
from hiddenlayer.sdk.rest.models.file_scan_report_v3 import FileScanReportV3
|
13
|
+
from hiddenlayer.sdk.rest.models.sarif210 import Sarif210
|
14
|
+
|
15
|
+
|
16
|
+
class ScanResults(ScanReportV3):
|
17
|
+
"""This class exists because the ScanResults API doesn't return anything about the file name or path that was scanned."""
|
18
|
+
|
19
|
+
file_name: Optional[str] = None
|
20
|
+
file_path: Optional[str] = None
|
21
|
+
model_id: Optional[str] = None
|
22
|
+
|
23
|
+
@classmethod
|
24
|
+
def from_scanreportv3(
|
25
|
+
cls, *, scan_report_v3: ScanReportV3, model_id: Optional[str] = None
|
26
|
+
) -> Self:
|
27
|
+
scan_results_dict = scan_report_v3.to_dict()
|
28
|
+
scan_results_dict["model_id"] = model_id
|
29
|
+
|
30
|
+
return cls(**scan_results_dict)
|
31
|
+
|
32
|
+
|
33
|
+
class EmptyScanResults(ScanResults):
|
34
|
+
status: str = ScanStatus.PENDING
|
35
|
+
file_count: int = 0
|
36
|
+
files_with_detections_count: int = 0
|
37
|
+
detection_count: int = 0
|
38
|
+
detection_categories: Optional[List[StrictStr]] = []
|
39
|
+
inventory: ModelInventoryInfo = ModelInventoryInfo(
|
40
|
+
model_name="",
|
41
|
+
model_version="",
|
42
|
+
model_source="",
|
43
|
+
requested_scan_location="",
|
44
|
+
requesting_entity="",
|
45
|
+
model_id="",
|
46
|
+
model_version_id="",
|
47
|
+
)
|
48
|
+
version: str = ""
|
49
|
+
scan_id: str = ""
|
50
|
+
start_time: datetime = datetime.now()
|
51
|
+
end_time: Optional[datetime] = datetime.now()
|
52
|
+
severity: Optional[StrictStr] = ""
|
53
|
+
file_results: Optional[List[FileScanReportV3]] = []
|
54
|
+
|
55
|
+
|
56
|
+
class Sarif(Sarif210):
|
57
|
+
"""This class exists because the generated code for Sarif210 treats version as a Dictionary which it is not."""
|
58
|
+
|
59
|
+
version: str # type: ignore
|
@@ -0,0 +1,126 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
|
3
|
+
# flake8: noqa
|
4
|
+
|
5
|
+
"""
|
6
|
+
HiddenLayer ModelScan V2
|
7
|
+
|
8
|
+
HiddenLayer ModelScan API for scanning of models
|
9
|
+
|
10
|
+
The version of the OpenAPI document: 1
|
11
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
12
|
+
|
13
|
+
Do not edit the class manually.
|
14
|
+
""" # noqa: E501
|
15
|
+
|
16
|
+
|
17
|
+
__version__ = "1.0.0"
|
18
|
+
|
19
|
+
# import apis into sdk package
|
20
|
+
from hiddenlayer.sdk.rest.api.health_api import HealthApi
|
21
|
+
from hiddenlayer.sdk.rest.api.model_supply_chain_api import ModelSupplyChainApi
|
22
|
+
from hiddenlayer.sdk.rest.api.readiness_api import ReadinessApi
|
23
|
+
from hiddenlayer.sdk.rest.api.aidr_predictive_api import AidrPredictiveApi
|
24
|
+
from hiddenlayer.sdk.rest.api.model_scan_api import ModelScanApi
|
25
|
+
from hiddenlayer.sdk.rest.api.sensor_api import SensorApi
|
26
|
+
|
27
|
+
# import ApiClient
|
28
|
+
from hiddenlayer.sdk.rest.api_response import ApiResponse
|
29
|
+
from hiddenlayer.sdk.rest.api_client import ApiClient
|
30
|
+
from hiddenlayer.sdk.rest.configuration import Configuration
|
31
|
+
from hiddenlayer.sdk.rest.exceptions import OpenApiException
|
32
|
+
from hiddenlayer.sdk.rest.exceptions import ApiTypeError
|
33
|
+
from hiddenlayer.sdk.rest.exceptions import ApiValueError
|
34
|
+
from hiddenlayer.sdk.rest.exceptions import ApiKeyError
|
35
|
+
from hiddenlayer.sdk.rest.exceptions import ApiAttributeError
|
36
|
+
from hiddenlayer.sdk.rest.exceptions import ApiException
|
37
|
+
|
38
|
+
# import models into sdk package
|
39
|
+
from hiddenlayer.sdk.rest.models.address import Address
|
40
|
+
from hiddenlayer.sdk.rest.models.artifact import Artifact
|
41
|
+
from hiddenlayer.sdk.rest.models.artifact_change import ArtifactChange
|
42
|
+
from hiddenlayer.sdk.rest.models.artifact_content import ArtifactContent
|
43
|
+
from hiddenlayer.sdk.rest.models.artifact_location import ArtifactLocation
|
44
|
+
from hiddenlayer.sdk.rest.models.attachment import Attachment
|
45
|
+
from hiddenlayer.sdk.rest.models.code_flow import CodeFlow
|
46
|
+
from hiddenlayer.sdk.rest.models.configuration_override import ConfigurationOverride
|
47
|
+
from hiddenlayer.sdk.rest.models.conversion import Conversion
|
48
|
+
from hiddenlayer.sdk.rest.models.create_sensor_request import CreateSensorRequest
|
49
|
+
from hiddenlayer.sdk.rest.models.detections import Detections
|
50
|
+
from hiddenlayer.sdk.rest.models.edge import Edge
|
51
|
+
from hiddenlayer.sdk.rest.models.edge_traversal import EdgeTraversal
|
52
|
+
from hiddenlayer.sdk.rest.models.exception import Exception
|
53
|
+
from hiddenlayer.sdk.rest.models.external_properties import ExternalProperties
|
54
|
+
from hiddenlayer.sdk.rest.models.external_property_file_reference import ExternalPropertyFileReference
|
55
|
+
from hiddenlayer.sdk.rest.models.external_property_file_references import ExternalPropertyFileReferences
|
56
|
+
from hiddenlayer.sdk.rest.models.file_details_v3 import FileDetailsV3
|
57
|
+
from hiddenlayer.sdk.rest.models.file_scan_report_v3 import FileScanReportV3
|
58
|
+
from hiddenlayer.sdk.rest.models.file_scan_reports_v3 import FileScanReportsV3
|
59
|
+
from hiddenlayer.sdk.rest.models.fix import Fix
|
60
|
+
from hiddenlayer.sdk.rest.models.get_multipart_upload_response import GetMultipartUploadResponse
|
61
|
+
from hiddenlayer.sdk.rest.models.graph import Graph
|
62
|
+
from hiddenlayer.sdk.rest.models.graph_traversal import GraphTraversal
|
63
|
+
from hiddenlayer.sdk.rest.models.invocation import Invocation
|
64
|
+
from hiddenlayer.sdk.rest.models.location import Location
|
65
|
+
from hiddenlayer.sdk.rest.models.location_inner import LocationInner
|
66
|
+
from hiddenlayer.sdk.rest.models.location_relationship import LocationRelationship
|
67
|
+
from hiddenlayer.sdk.rest.models.logical_location import LogicalLocation
|
68
|
+
from hiddenlayer.sdk.rest.models.mitre_atlas_inner import MITREAtlasInner
|
69
|
+
from hiddenlayer.sdk.rest.models.message import Message
|
70
|
+
from hiddenlayer.sdk.rest.models.model import Model
|
71
|
+
from hiddenlayer.sdk.rest.models.model_inventory_info import ModelInventoryInfo
|
72
|
+
from hiddenlayer.sdk.rest.models.model_query_response import ModelQueryResponse
|
73
|
+
from hiddenlayer.sdk.rest.models.model_scan_api_v3_scan_model_version_id_patch200_response import ModelScanApiV3ScanModelVersionIdPatch200Response
|
74
|
+
from hiddenlayer.sdk.rest.models.model_scan_api_v3_scan_query200_response import ModelScanApiV3ScanQuery200Response
|
75
|
+
from hiddenlayer.sdk.rest.models.multiformat_message_string import MultiformatMessageString
|
76
|
+
from hiddenlayer.sdk.rest.models.multipart_upload_part import MultipartUploadPart
|
77
|
+
from hiddenlayer.sdk.rest.models.node import Node
|
78
|
+
from hiddenlayer.sdk.rest.models.notification import Notification
|
79
|
+
from hiddenlayer.sdk.rest.models.paged_response_with_total import PagedResponseWithTotal
|
80
|
+
from hiddenlayer.sdk.rest.models.physical_location import PhysicalLocation
|
81
|
+
from hiddenlayer.sdk.rest.models.property_bag import PropertyBag
|
82
|
+
from hiddenlayer.sdk.rest.models.rectangle import Rectangle
|
83
|
+
from hiddenlayer.sdk.rest.models.region import Region
|
84
|
+
from hiddenlayer.sdk.rest.models.replacement import Replacement
|
85
|
+
from hiddenlayer.sdk.rest.models.reporting_configuration import ReportingConfiguration
|
86
|
+
from hiddenlayer.sdk.rest.models.reporting_descriptor import ReportingDescriptor
|
87
|
+
from hiddenlayer.sdk.rest.models.reporting_descriptor_reference import ReportingDescriptorReference
|
88
|
+
from hiddenlayer.sdk.rest.models.reporting_descriptor_relationship import ReportingDescriptorRelationship
|
89
|
+
from hiddenlayer.sdk.rest.models.result import Result
|
90
|
+
from hiddenlayer.sdk.rest.models.result_provenance import ResultProvenance
|
91
|
+
from hiddenlayer.sdk.rest.models.rule_details_inner import RuleDetailsInner
|
92
|
+
from hiddenlayer.sdk.rest.models.run import Run
|
93
|
+
from hiddenlayer.sdk.rest.models.run_automation_details import RunAutomationDetails
|
94
|
+
from hiddenlayer.sdk.rest.models.sarif210 import Sarif210
|
95
|
+
from hiddenlayer.sdk.rest.models.scan_create_request import ScanCreateRequest
|
96
|
+
from hiddenlayer.sdk.rest.models.scan_detection_v3 import ScanDetectionV3
|
97
|
+
from hiddenlayer.sdk.rest.models.scan_header_v3 import ScanHeaderV3
|
98
|
+
from hiddenlayer.sdk.rest.models.scan_job import ScanJob
|
99
|
+
from hiddenlayer.sdk.rest.models.scan_job_inventory import ScanJobInventory
|
100
|
+
from hiddenlayer.sdk.rest.models.scan_model_details_v3 import ScanModelDetailsV3
|
101
|
+
from hiddenlayer.sdk.rest.models.scan_model_ids_v3 import ScanModelIdsV3
|
102
|
+
from hiddenlayer.sdk.rest.models.scan_model_request import ScanModelRequest
|
103
|
+
from hiddenlayer.sdk.rest.models.scan_report_v3 import ScanReportV3
|
104
|
+
from hiddenlayer.sdk.rest.models.scan_results import ScanResults
|
105
|
+
from hiddenlayer.sdk.rest.models.scan_results_v2 import ScanResultsV2
|
106
|
+
from hiddenlayer.sdk.rest.models.security_posture import SecurityPosture
|
107
|
+
from hiddenlayer.sdk.rest.models.sensor_sor_model_card_query_response import SensorSORModelCardQueryResponse
|
108
|
+
from hiddenlayer.sdk.rest.models.sensor_sor_model_card_response import SensorSORModelCardResponse
|
109
|
+
from hiddenlayer.sdk.rest.models.sensor_sor_query_filter import SensorSORQueryFilter
|
110
|
+
from hiddenlayer.sdk.rest.models.sensor_sor_query_request import SensorSORQueryRequest
|
111
|
+
from hiddenlayer.sdk.rest.models.special_locations import SpecialLocations
|
112
|
+
from hiddenlayer.sdk.rest.models.stack import Stack
|
113
|
+
from hiddenlayer.sdk.rest.models.stack_frame import StackFrame
|
114
|
+
from hiddenlayer.sdk.rest.models.submission_response import SubmissionResponse
|
115
|
+
from hiddenlayer.sdk.rest.models.submission_v2 import SubmissionV2
|
116
|
+
from hiddenlayer.sdk.rest.models.suppression import Suppression
|
117
|
+
from hiddenlayer.sdk.rest.models.thread_flow import ThreadFlow
|
118
|
+
from hiddenlayer.sdk.rest.models.thread_flow_location import ThreadFlowLocation
|
119
|
+
from hiddenlayer.sdk.rest.models.tool import Tool
|
120
|
+
from hiddenlayer.sdk.rest.models.tool_component import ToolComponent
|
121
|
+
from hiddenlayer.sdk.rest.models.tool_component_reference import ToolComponentReference
|
122
|
+
from hiddenlayer.sdk.rest.models.translation_metadata import TranslationMetadata
|
123
|
+
from hiddenlayer.sdk.rest.models.validation_error_model import ValidationErrorModel
|
124
|
+
from hiddenlayer.sdk.rest.models.version_control_details import VersionControlDetails
|
125
|
+
from hiddenlayer.sdk.rest.models.web_request import WebRequest
|
126
|
+
from hiddenlayer.sdk.rest.models.web_response import WebResponse
|
@@ -1,6 +1,9 @@
|
|
1
1
|
# flake8: noqa
|
2
2
|
|
3
3
|
# import apis into api package
|
4
|
+
from hiddenlayer.sdk.rest.api.health_api import HealthApi
|
5
|
+
from hiddenlayer.sdk.rest.api.model_supply_chain_api import ModelSupplyChainApi
|
6
|
+
from hiddenlayer.sdk.rest.api.readiness_api import ReadinessApi
|
4
7
|
from hiddenlayer.sdk.rest.api.aidr_predictive_api import AidrPredictiveApi
|
5
8
|
from hiddenlayer.sdk.rest.api.model_scan_api import ModelScanApi
|
6
9
|
from hiddenlayer.sdk.rest.api.sensor_api import SensorApi
|
@@ -0,0 +1,272 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
|
3
|
+
"""
|
4
|
+
HiddenLayer ModelScan V2
|
5
|
+
|
6
|
+
HiddenLayer ModelScan API for scanning of models
|
7
|
+
|
8
|
+
The version of the OpenAPI document: 1
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
10
|
+
|
11
|
+
Do not edit the class manually.
|
12
|
+
""" # noqa: E501
|
13
|
+
|
14
|
+
import warnings
|
15
|
+
from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
|
16
|
+
from typing import Any, Dict, List, Optional, Tuple, Union
|
17
|
+
from typing_extensions import Annotated
|
18
|
+
|
19
|
+
|
20
|
+
from hiddenlayer.sdk.rest.api_client import ApiClient, RequestSerialized
|
21
|
+
from hiddenlayer.sdk.rest.api_response import ApiResponse
|
22
|
+
from hiddenlayer.sdk.rest.rest import RESTResponseType
|
23
|
+
|
24
|
+
|
25
|
+
class HealthApi:
|
26
|
+
"""NOTE: This class is auto generated by OpenAPI Generator
|
27
|
+
Ref: https://openapi-generator.tech
|
28
|
+
|
29
|
+
Do not edit the class manually.
|
30
|
+
"""
|
31
|
+
|
32
|
+
def __init__(self, api_client=None) -> None:
|
33
|
+
if api_client is None:
|
34
|
+
api_client = ApiClient.get_default()
|
35
|
+
self.api_client = api_client
|
36
|
+
|
37
|
+
|
38
|
+
@validate_call
|
39
|
+
def modelscanner_api_v3_health_check(
|
40
|
+
self,
|
41
|
+
_request_timeout: Union[
|
42
|
+
None,
|
43
|
+
Annotated[StrictFloat, Field(gt=0)],
|
44
|
+
Tuple[
|
45
|
+
Annotated[StrictFloat, Field(gt=0)],
|
46
|
+
Annotated[StrictFloat, Field(gt=0)]
|
47
|
+
]
|
48
|
+
] = None,
|
49
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
50
|
+
_content_type: Optional[StrictStr] = None,
|
51
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
52
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
53
|
+
) -> None:
|
54
|
+
"""Health check endpoint for Model Supply Chain Services
|
55
|
+
|
56
|
+
|
57
|
+
:param _request_timeout: timeout setting for this request. If one
|
58
|
+
number provided, it will be total request
|
59
|
+
timeout. It can also be a pair (tuple) of
|
60
|
+
(connection, read) timeouts.
|
61
|
+
:type _request_timeout: int, tuple(int, int), optional
|
62
|
+
:param _request_auth: set to override the auth_settings for an a single
|
63
|
+
request; this effectively ignores the
|
64
|
+
authentication in the spec for a single request.
|
65
|
+
:type _request_auth: dict, optional
|
66
|
+
:param _content_type: force content-type for the request.
|
67
|
+
:type _content_type: str, Optional
|
68
|
+
:param _headers: set to override the headers for a single
|
69
|
+
request; this effectively ignores the headers
|
70
|
+
in the spec for a single request.
|
71
|
+
:type _headers: dict, optional
|
72
|
+
:param _host_index: set to override the host_index for a single
|
73
|
+
request; this effectively ignores the host_index
|
74
|
+
in the spec for a single request.
|
75
|
+
:type _host_index: int, optional
|
76
|
+
:return: Returns the result object.
|
77
|
+
""" # noqa: E501
|
78
|
+
|
79
|
+
_param = self._modelscanner_api_v3_health_check_serialize(
|
80
|
+
_request_auth=_request_auth,
|
81
|
+
_content_type=_content_type,
|
82
|
+
_headers=_headers,
|
83
|
+
_host_index=_host_index
|
84
|
+
)
|
85
|
+
|
86
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
87
|
+
'200': None,
|
88
|
+
'503': None,
|
89
|
+
}
|
90
|
+
response_data = self.api_client.call_api(
|
91
|
+
*_param,
|
92
|
+
_request_timeout=_request_timeout
|
93
|
+
)
|
94
|
+
response_data.read()
|
95
|
+
return self.api_client.response_deserialize(
|
96
|
+
response_data=response_data,
|
97
|
+
response_types_map=_response_types_map,
|
98
|
+
).data
|
99
|
+
|
100
|
+
|
101
|
+
@validate_call
|
102
|
+
def modelscanner_api_v3_health_check_with_http_info(
|
103
|
+
self,
|
104
|
+
_request_timeout: Union[
|
105
|
+
None,
|
106
|
+
Annotated[StrictFloat, Field(gt=0)],
|
107
|
+
Tuple[
|
108
|
+
Annotated[StrictFloat, Field(gt=0)],
|
109
|
+
Annotated[StrictFloat, Field(gt=0)]
|
110
|
+
]
|
111
|
+
] = None,
|
112
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
113
|
+
_content_type: Optional[StrictStr] = None,
|
114
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
115
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
116
|
+
) -> ApiResponse[None]:
|
117
|
+
"""Health check endpoint for Model Supply Chain Services
|
118
|
+
|
119
|
+
|
120
|
+
:param _request_timeout: timeout setting for this request. If one
|
121
|
+
number provided, it will be total request
|
122
|
+
timeout. It can also be a pair (tuple) of
|
123
|
+
(connection, read) timeouts.
|
124
|
+
:type _request_timeout: int, tuple(int, int), optional
|
125
|
+
:param _request_auth: set to override the auth_settings for an a single
|
126
|
+
request; this effectively ignores the
|
127
|
+
authentication in the spec for a single request.
|
128
|
+
:type _request_auth: dict, optional
|
129
|
+
:param _content_type: force content-type for the request.
|
130
|
+
:type _content_type: str, Optional
|
131
|
+
:param _headers: set to override the headers for a single
|
132
|
+
request; this effectively ignores the headers
|
133
|
+
in the spec for a single request.
|
134
|
+
:type _headers: dict, optional
|
135
|
+
:param _host_index: set to override the host_index for a single
|
136
|
+
request; this effectively ignores the host_index
|
137
|
+
in the spec for a single request.
|
138
|
+
:type _host_index: int, optional
|
139
|
+
:return: Returns the result object.
|
140
|
+
""" # noqa: E501
|
141
|
+
|
142
|
+
_param = self._modelscanner_api_v3_health_check_serialize(
|
143
|
+
_request_auth=_request_auth,
|
144
|
+
_content_type=_content_type,
|
145
|
+
_headers=_headers,
|
146
|
+
_host_index=_host_index
|
147
|
+
)
|
148
|
+
|
149
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
150
|
+
'200': None,
|
151
|
+
'503': None,
|
152
|
+
}
|
153
|
+
response_data = self.api_client.call_api(
|
154
|
+
*_param,
|
155
|
+
_request_timeout=_request_timeout
|
156
|
+
)
|
157
|
+
response_data.read()
|
158
|
+
return self.api_client.response_deserialize(
|
159
|
+
response_data=response_data,
|
160
|
+
response_types_map=_response_types_map,
|
161
|
+
)
|
162
|
+
|
163
|
+
|
164
|
+
@validate_call
|
165
|
+
def modelscanner_api_v3_health_check_without_preload_content(
|
166
|
+
self,
|
167
|
+
_request_timeout: Union[
|
168
|
+
None,
|
169
|
+
Annotated[StrictFloat, Field(gt=0)],
|
170
|
+
Tuple[
|
171
|
+
Annotated[StrictFloat, Field(gt=0)],
|
172
|
+
Annotated[StrictFloat, Field(gt=0)]
|
173
|
+
]
|
174
|
+
] = None,
|
175
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
176
|
+
_content_type: Optional[StrictStr] = None,
|
177
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
178
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
179
|
+
) -> RESTResponseType:
|
180
|
+
"""Health check endpoint for Model Supply Chain Services
|
181
|
+
|
182
|
+
|
183
|
+
:param _request_timeout: timeout setting for this request. If one
|
184
|
+
number provided, it will be total request
|
185
|
+
timeout. It can also be a pair (tuple) of
|
186
|
+
(connection, read) timeouts.
|
187
|
+
:type _request_timeout: int, tuple(int, int), optional
|
188
|
+
:param _request_auth: set to override the auth_settings for an a single
|
189
|
+
request; this effectively ignores the
|
190
|
+
authentication in the spec for a single request.
|
191
|
+
:type _request_auth: dict, optional
|
192
|
+
:param _content_type: force content-type for the request.
|
193
|
+
:type _content_type: str, Optional
|
194
|
+
:param _headers: set to override the headers for a single
|
195
|
+
request; this effectively ignores the headers
|
196
|
+
in the spec for a single request.
|
197
|
+
:type _headers: dict, optional
|
198
|
+
:param _host_index: set to override the host_index for a single
|
199
|
+
request; this effectively ignores the host_index
|
200
|
+
in the spec for a single request.
|
201
|
+
:type _host_index: int, optional
|
202
|
+
:return: Returns the result object.
|
203
|
+
""" # noqa: E501
|
204
|
+
|
205
|
+
_param = self._modelscanner_api_v3_health_check_serialize(
|
206
|
+
_request_auth=_request_auth,
|
207
|
+
_content_type=_content_type,
|
208
|
+
_headers=_headers,
|
209
|
+
_host_index=_host_index
|
210
|
+
)
|
211
|
+
|
212
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
213
|
+
'200': None,
|
214
|
+
'503': None,
|
215
|
+
}
|
216
|
+
response_data = self.api_client.call_api(
|
217
|
+
*_param,
|
218
|
+
_request_timeout=_request_timeout
|
219
|
+
)
|
220
|
+
return response_data.response
|
221
|
+
|
222
|
+
|
223
|
+
def _modelscanner_api_v3_health_check_serialize(
|
224
|
+
self,
|
225
|
+
_request_auth,
|
226
|
+
_content_type,
|
227
|
+
_headers,
|
228
|
+
_host_index,
|
229
|
+
) -> RequestSerialized:
|
230
|
+
|
231
|
+
_host = None
|
232
|
+
|
233
|
+
_collection_formats: Dict[str, str] = {
|
234
|
+
}
|
235
|
+
|
236
|
+
_path_params: Dict[str, str] = {}
|
237
|
+
_query_params: List[Tuple[str, str]] = []
|
238
|
+
_header_params: Dict[str, Optional[str]] = _headers or {}
|
239
|
+
_form_params: List[Tuple[str, str]] = []
|
240
|
+
_files: Dict[str, Union[str, bytes]] = {}
|
241
|
+
_body_params: Optional[bytes] = None
|
242
|
+
|
243
|
+
# process the path parameters
|
244
|
+
# process the query parameters
|
245
|
+
# process the header parameters
|
246
|
+
# process the form parameters
|
247
|
+
# process the body parameter
|
248
|
+
|
249
|
+
|
250
|
+
|
251
|
+
|
252
|
+
# authentication setting
|
253
|
+
_auth_settings: List[str] = [
|
254
|
+
'BearerAuth'
|
255
|
+
]
|
256
|
+
|
257
|
+
return self.api_client.param_serialize(
|
258
|
+
method='GET',
|
259
|
+
resource_path='/scans/v3/health',
|
260
|
+
path_params=_path_params,
|
261
|
+
query_params=_query_params,
|
262
|
+
header_params=_header_params,
|
263
|
+
body=_body_params,
|
264
|
+
post_params=_form_params,
|
265
|
+
files=_files,
|
266
|
+
auth_settings=_auth_settings,
|
267
|
+
collection_formats=_collection_formats,
|
268
|
+
_host=_host,
|
269
|
+
_request_auth=_request_auth
|
270
|
+
)
|
271
|
+
|
272
|
+
|