legit-api-client 1.1.4435__py3-none-any.whl → 1.1.4586__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of legit-api-client might be problematic. Click here for more details.
- legit_api_client/__init__.py +11 -1
- legit_api_client/api/__init__.py +1 -0
- legit_api_client/api/models_api.py +335 -0
- legit_api_client/api_client.py +4 -4
- legit_api_client/configuration.py +4 -2
- legit_api_client/exceptions.py +6 -3
- legit_api_client/models/__init__.py +4 -0
- legit_api_client/models/ai_model_reputation_dto.py +102 -0
- legit_api_client/models/control_classification.py +2 -0
- legit_api_client/models/control_source_type.py +1 -0
- legit_api_client/models/customer_facing_issue_dto.py +9 -2
- legit_api_client/models/issue_action_type.py +2 -0
- legit_api_client/models/model_reputation.py +39 -0
- legit_api_client/models/product_connection_type.py +2 -0
- legit_api_client/models/repository_automatic_business_impact_factor.py +43 -0
- legit_api_client/models/repository_context_field_dto.py +102 -0
- legit_api_client/models/repository_dto.py +16 -1
- legit_api_client/models/scm_type.py +2 -0
- legit_api_client/models/sdlc_asset_type.py +2 -0
- legit_api_client/models/secrets_data_dto.py +9 -2
- legit_api_client/rest.py +7 -2
- {legit_api_client-1.1.4435.dist-info → legit_api_client-1.1.4586.dist-info}/METADATA +8 -3
- {legit_api_client-1.1.4435.dist-info → legit_api_client-1.1.4586.dist-info}/RECORD +25 -20
- {legit_api_client-1.1.4435.dist-info → legit_api_client-1.1.4586.dist-info}/WHEEL +0 -0
- {legit_api_client-1.1.4435.dist-info → legit_api_client-1.1.4586.dist-info}/top_level.txt +0 -0
legit_api_client/__init__.py
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
""" # noqa: E501
|
|
15
15
|
|
|
16
16
|
|
|
17
|
-
__version__ = "1.1.
|
|
17
|
+
__version__ = "1.1.4586"
|
|
18
18
|
|
|
19
19
|
# Define package exports
|
|
20
20
|
__all__ = [
|
|
@@ -30,6 +30,7 @@ __all__ = [
|
|
|
30
30
|
"IntegrationsApi",
|
|
31
31
|
"IssuesApi",
|
|
32
32
|
"IssuesV2Api",
|
|
33
|
+
"ModelsApi",
|
|
33
34
|
"PoliciesApi",
|
|
34
35
|
"ProductUnitsApi",
|
|
35
36
|
"RepositoriesApi",
|
|
@@ -48,6 +49,7 @@ __all__ = [
|
|
|
48
49
|
"ApiAttributeError",
|
|
49
50
|
"ApiException",
|
|
50
51
|
"AddIssueCommentDto",
|
|
52
|
+
"AiModelReputationDto",
|
|
51
53
|
"AiSecretValidationResult",
|
|
52
54
|
"AmazonEcrKeyIntegrationCreateDto",
|
|
53
55
|
"AmazonEcrKeyIntegrationEditDto",
|
|
@@ -169,6 +171,7 @@ __all__ = [
|
|
|
169
171
|
"LegitScoreRequirementType",
|
|
170
172
|
"ListSortDirection",
|
|
171
173
|
"ManualCheckDto",
|
|
174
|
+
"ModelReputation",
|
|
172
175
|
"OriginType",
|
|
173
176
|
"PackageSource",
|
|
174
177
|
"PackageType",
|
|
@@ -196,6 +199,8 @@ __all__ = [
|
|
|
196
199
|
"ProductUnitType",
|
|
197
200
|
"ProgrammingLanguage",
|
|
198
201
|
"RepositoriesToContainersOperationDto",
|
|
202
|
+
"RepositoryAutomaticBusinessImpactFactor",
|
|
203
|
+
"RepositoryContextFieldDto",
|
|
199
204
|
"RepositoryControlDto",
|
|
200
205
|
"RepositoryDirectory",
|
|
201
206
|
"RepositoryDto",
|
|
@@ -244,6 +249,7 @@ from legit_api_client.api.dependencies_v2_api import DependenciesV2Api as Depend
|
|
|
244
249
|
from legit_api_client.api.integrations_api import IntegrationsApi as IntegrationsApi
|
|
245
250
|
from legit_api_client.api.issues_api import IssuesApi as IssuesApi
|
|
246
251
|
from legit_api_client.api.issues_v2_api import IssuesV2Api as IssuesV2Api
|
|
252
|
+
from legit_api_client.api.models_api import ModelsApi as ModelsApi
|
|
247
253
|
from legit_api_client.api.policies_api import PoliciesApi as PoliciesApi
|
|
248
254
|
from legit_api_client.api.product_units_api import ProductUnitsApi as ProductUnitsApi
|
|
249
255
|
from legit_api_client.api.repositories_api import RepositoriesApi as RepositoriesApi
|
|
@@ -266,6 +272,7 @@ from legit_api_client.exceptions import ApiException as ApiException
|
|
|
266
272
|
|
|
267
273
|
# import models into sdk package
|
|
268
274
|
from legit_api_client.models.add_issue_comment_dto import AddIssueCommentDto as AddIssueCommentDto
|
|
275
|
+
from legit_api_client.models.ai_model_reputation_dto import AiModelReputationDto as AiModelReputationDto
|
|
269
276
|
from legit_api_client.models.ai_secret_validation_result import AiSecretValidationResult as AiSecretValidationResult
|
|
270
277
|
from legit_api_client.models.amazon_ecr_key_integration_create_dto import AmazonEcrKeyIntegrationCreateDto as AmazonEcrKeyIntegrationCreateDto
|
|
271
278
|
from legit_api_client.models.amazon_ecr_key_integration_edit_dto import AmazonEcrKeyIntegrationEditDto as AmazonEcrKeyIntegrationEditDto
|
|
@@ -387,6 +394,7 @@ from legit_api_client.models.legit_score_requirement_group_type import LegitScor
|
|
|
387
394
|
from legit_api_client.models.legit_score_requirement_type import LegitScoreRequirementType as LegitScoreRequirementType
|
|
388
395
|
from legit_api_client.models.list_sort_direction import ListSortDirection as ListSortDirection
|
|
389
396
|
from legit_api_client.models.manual_check_dto import ManualCheckDto as ManualCheckDto
|
|
397
|
+
from legit_api_client.models.model_reputation import ModelReputation as ModelReputation
|
|
390
398
|
from legit_api_client.models.origin_type import OriginType as OriginType
|
|
391
399
|
from legit_api_client.models.package_source import PackageSource as PackageSource
|
|
392
400
|
from legit_api_client.models.package_type import PackageType as PackageType
|
|
@@ -414,6 +422,8 @@ from legit_api_client.models.product_unit_name_dto import ProductUnitNameDto as
|
|
|
414
422
|
from legit_api_client.models.product_unit_type import ProductUnitType as ProductUnitType
|
|
415
423
|
from legit_api_client.models.programming_language import ProgrammingLanguage as ProgrammingLanguage
|
|
416
424
|
from legit_api_client.models.repositories_to_containers_operation_dto import RepositoriesToContainersOperationDto as RepositoriesToContainersOperationDto
|
|
425
|
+
from legit_api_client.models.repository_automatic_business_impact_factor import RepositoryAutomaticBusinessImpactFactor as RepositoryAutomaticBusinessImpactFactor
|
|
426
|
+
from legit_api_client.models.repository_context_field_dto import RepositoryContextFieldDto as RepositoryContextFieldDto
|
|
417
427
|
from legit_api_client.models.repository_control_dto import RepositoryControlDto as RepositoryControlDto
|
|
418
428
|
from legit_api_client.models.repository_directory import RepositoryDirectory as RepositoryDirectory
|
|
419
429
|
from legit_api_client.models.repository_dto import RepositoryDto as RepositoryDto
|
legit_api_client/api/__init__.py
CHANGED
|
@@ -13,6 +13,7 @@ from legit_api_client.api.dependencies_v2_api import DependenciesV2Api
|
|
|
13
13
|
from legit_api_client.api.integrations_api import IntegrationsApi
|
|
14
14
|
from legit_api_client.api.issues_api import IssuesApi
|
|
15
15
|
from legit_api_client.api.issues_v2_api import IssuesV2Api
|
|
16
|
+
from legit_api_client.api.models_api import ModelsApi
|
|
16
17
|
from legit_api_client.api.policies_api import PoliciesApi
|
|
17
18
|
from legit_api_client.api.product_units_api import ProductUnitsApi
|
|
18
19
|
from legit_api_client.api.repositories_api import RepositoriesApi
|
|
@@ -0,0 +1,335 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
Inventory
|
|
5
|
+
|
|
6
|
+
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
import warnings
|
|
15
|
+
from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
|
|
16
|
+
from typing import Any, Dict, List, Optional, Tuple, Union
|
|
17
|
+
from typing_extensions import Annotated
|
|
18
|
+
|
|
19
|
+
from pydantic import Field, StrictStr
|
|
20
|
+
from typing import List, Optional
|
|
21
|
+
from typing_extensions import Annotated
|
|
22
|
+
from legit_api_client.models.ai_model_reputation_dto import AiModelReputationDto
|
|
23
|
+
|
|
24
|
+
from legit_api_client.api_client import ApiClient, RequestSerialized
|
|
25
|
+
from legit_api_client.api_response import ApiResponse
|
|
26
|
+
from legit_api_client.rest import RESTResponseType
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
class ModelsApi:
|
|
30
|
+
"""NOTE: This class is auto generated by OpenAPI Generator
|
|
31
|
+
Ref: https://openapi-generator.tech
|
|
32
|
+
|
|
33
|
+
Do not edit the class manually.
|
|
34
|
+
"""
|
|
35
|
+
|
|
36
|
+
def __init__(self, api_client=None) -> None:
|
|
37
|
+
if api_client is None:
|
|
38
|
+
api_client = ApiClient.get_default()
|
|
39
|
+
self.api_client = api_client
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
@validate_call
|
|
43
|
+
def api_v20_ai_models_get(
|
|
44
|
+
self,
|
|
45
|
+
page_number: Optional[Annotated[int, Field(le=2147483647, strict=True, ge=1)]] = None,
|
|
46
|
+
page_size: Optional[Annotated[int, Field(le=100, strict=True, ge=1)]] = None,
|
|
47
|
+
search: Optional[StrictStr] = None,
|
|
48
|
+
_request_timeout: Union[
|
|
49
|
+
None,
|
|
50
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
51
|
+
Tuple[
|
|
52
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
53
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
54
|
+
]
|
|
55
|
+
] = None,
|
|
56
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
57
|
+
_content_type: Optional[StrictStr] = None,
|
|
58
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
59
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
60
|
+
) -> List[AiModelReputationDto]:
|
|
61
|
+
"""Get model by name
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
:param page_number:
|
|
65
|
+
:type page_number: int
|
|
66
|
+
:param page_size:
|
|
67
|
+
:type page_size: int
|
|
68
|
+
:param search:
|
|
69
|
+
:type search: str
|
|
70
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
71
|
+
number provided, it will be total request
|
|
72
|
+
timeout. It can also be a pair (tuple) of
|
|
73
|
+
(connection, read) timeouts.
|
|
74
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
75
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
76
|
+
request; this effectively ignores the
|
|
77
|
+
authentication in the spec for a single request.
|
|
78
|
+
:type _request_auth: dict, optional
|
|
79
|
+
:param _content_type: force content-type for the request.
|
|
80
|
+
:type _content_type: str, Optional
|
|
81
|
+
:param _headers: set to override the headers for a single
|
|
82
|
+
request; this effectively ignores the headers
|
|
83
|
+
in the spec for a single request.
|
|
84
|
+
:type _headers: dict, optional
|
|
85
|
+
:param _host_index: set to override the host_index for a single
|
|
86
|
+
request; this effectively ignores the host_index
|
|
87
|
+
in the spec for a single request.
|
|
88
|
+
:type _host_index: int, optional
|
|
89
|
+
:return: Returns the result object.
|
|
90
|
+
""" # noqa: E501
|
|
91
|
+
|
|
92
|
+
_param = self._api_v20_ai_models_get_serialize(
|
|
93
|
+
page_number=page_number,
|
|
94
|
+
page_size=page_size,
|
|
95
|
+
search=search,
|
|
96
|
+
_request_auth=_request_auth,
|
|
97
|
+
_content_type=_content_type,
|
|
98
|
+
_headers=_headers,
|
|
99
|
+
_host_index=_host_index
|
|
100
|
+
)
|
|
101
|
+
|
|
102
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
103
|
+
'200': "List[AiModelReputationDto]",
|
|
104
|
+
}
|
|
105
|
+
response_data = self.api_client.call_api(
|
|
106
|
+
*_param,
|
|
107
|
+
_request_timeout=_request_timeout
|
|
108
|
+
)
|
|
109
|
+
response_data.read()
|
|
110
|
+
return self.api_client.response_deserialize(
|
|
111
|
+
response_data=response_data,
|
|
112
|
+
response_types_map=_response_types_map,
|
|
113
|
+
).data
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
@validate_call
|
|
117
|
+
def api_v20_ai_models_get_with_http_info(
|
|
118
|
+
self,
|
|
119
|
+
page_number: Optional[Annotated[int, Field(le=2147483647, strict=True, ge=1)]] = None,
|
|
120
|
+
page_size: Optional[Annotated[int, Field(le=100, strict=True, ge=1)]] = None,
|
|
121
|
+
search: Optional[StrictStr] = None,
|
|
122
|
+
_request_timeout: Union[
|
|
123
|
+
None,
|
|
124
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
125
|
+
Tuple[
|
|
126
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
127
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
128
|
+
]
|
|
129
|
+
] = None,
|
|
130
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
131
|
+
_content_type: Optional[StrictStr] = None,
|
|
132
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
133
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
134
|
+
) -> ApiResponse[List[AiModelReputationDto]]:
|
|
135
|
+
"""Get model by name
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
:param page_number:
|
|
139
|
+
:type page_number: int
|
|
140
|
+
:param page_size:
|
|
141
|
+
:type page_size: int
|
|
142
|
+
:param search:
|
|
143
|
+
:type search: str
|
|
144
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
145
|
+
number provided, it will be total request
|
|
146
|
+
timeout. It can also be a pair (tuple) of
|
|
147
|
+
(connection, read) timeouts.
|
|
148
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
149
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
150
|
+
request; this effectively ignores the
|
|
151
|
+
authentication in the spec for a single request.
|
|
152
|
+
:type _request_auth: dict, optional
|
|
153
|
+
:param _content_type: force content-type for the request.
|
|
154
|
+
:type _content_type: str, Optional
|
|
155
|
+
:param _headers: set to override the headers for a single
|
|
156
|
+
request; this effectively ignores the headers
|
|
157
|
+
in the spec for a single request.
|
|
158
|
+
:type _headers: dict, optional
|
|
159
|
+
:param _host_index: set to override the host_index for a single
|
|
160
|
+
request; this effectively ignores the host_index
|
|
161
|
+
in the spec for a single request.
|
|
162
|
+
:type _host_index: int, optional
|
|
163
|
+
:return: Returns the result object.
|
|
164
|
+
""" # noqa: E501
|
|
165
|
+
|
|
166
|
+
_param = self._api_v20_ai_models_get_serialize(
|
|
167
|
+
page_number=page_number,
|
|
168
|
+
page_size=page_size,
|
|
169
|
+
search=search,
|
|
170
|
+
_request_auth=_request_auth,
|
|
171
|
+
_content_type=_content_type,
|
|
172
|
+
_headers=_headers,
|
|
173
|
+
_host_index=_host_index
|
|
174
|
+
)
|
|
175
|
+
|
|
176
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
177
|
+
'200': "List[AiModelReputationDto]",
|
|
178
|
+
}
|
|
179
|
+
response_data = self.api_client.call_api(
|
|
180
|
+
*_param,
|
|
181
|
+
_request_timeout=_request_timeout
|
|
182
|
+
)
|
|
183
|
+
response_data.read()
|
|
184
|
+
return self.api_client.response_deserialize(
|
|
185
|
+
response_data=response_data,
|
|
186
|
+
response_types_map=_response_types_map,
|
|
187
|
+
)
|
|
188
|
+
|
|
189
|
+
|
|
190
|
+
@validate_call
|
|
191
|
+
def api_v20_ai_models_get_without_preload_content(
|
|
192
|
+
self,
|
|
193
|
+
page_number: Optional[Annotated[int, Field(le=2147483647, strict=True, ge=1)]] = None,
|
|
194
|
+
page_size: Optional[Annotated[int, Field(le=100, strict=True, ge=1)]] = None,
|
|
195
|
+
search: Optional[StrictStr] = None,
|
|
196
|
+
_request_timeout: Union[
|
|
197
|
+
None,
|
|
198
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
199
|
+
Tuple[
|
|
200
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
201
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
202
|
+
]
|
|
203
|
+
] = None,
|
|
204
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
205
|
+
_content_type: Optional[StrictStr] = None,
|
|
206
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
207
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
208
|
+
) -> RESTResponseType:
|
|
209
|
+
"""Get model by name
|
|
210
|
+
|
|
211
|
+
|
|
212
|
+
:param page_number:
|
|
213
|
+
:type page_number: int
|
|
214
|
+
:param page_size:
|
|
215
|
+
:type page_size: int
|
|
216
|
+
:param search:
|
|
217
|
+
:type search: str
|
|
218
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
219
|
+
number provided, it will be total request
|
|
220
|
+
timeout. It can also be a pair (tuple) of
|
|
221
|
+
(connection, read) timeouts.
|
|
222
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
223
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
224
|
+
request; this effectively ignores the
|
|
225
|
+
authentication in the spec for a single request.
|
|
226
|
+
:type _request_auth: dict, optional
|
|
227
|
+
:param _content_type: force content-type for the request.
|
|
228
|
+
:type _content_type: str, Optional
|
|
229
|
+
:param _headers: set to override the headers for a single
|
|
230
|
+
request; this effectively ignores the headers
|
|
231
|
+
in the spec for a single request.
|
|
232
|
+
:type _headers: dict, optional
|
|
233
|
+
:param _host_index: set to override the host_index for a single
|
|
234
|
+
request; this effectively ignores the host_index
|
|
235
|
+
in the spec for a single request.
|
|
236
|
+
:type _host_index: int, optional
|
|
237
|
+
:return: Returns the result object.
|
|
238
|
+
""" # noqa: E501
|
|
239
|
+
|
|
240
|
+
_param = self._api_v20_ai_models_get_serialize(
|
|
241
|
+
page_number=page_number,
|
|
242
|
+
page_size=page_size,
|
|
243
|
+
search=search,
|
|
244
|
+
_request_auth=_request_auth,
|
|
245
|
+
_content_type=_content_type,
|
|
246
|
+
_headers=_headers,
|
|
247
|
+
_host_index=_host_index
|
|
248
|
+
)
|
|
249
|
+
|
|
250
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
251
|
+
'200': "List[AiModelReputationDto]",
|
|
252
|
+
}
|
|
253
|
+
response_data = self.api_client.call_api(
|
|
254
|
+
*_param,
|
|
255
|
+
_request_timeout=_request_timeout
|
|
256
|
+
)
|
|
257
|
+
return response_data.response
|
|
258
|
+
|
|
259
|
+
|
|
260
|
+
def _api_v20_ai_models_get_serialize(
|
|
261
|
+
self,
|
|
262
|
+
page_number,
|
|
263
|
+
page_size,
|
|
264
|
+
search,
|
|
265
|
+
_request_auth,
|
|
266
|
+
_content_type,
|
|
267
|
+
_headers,
|
|
268
|
+
_host_index,
|
|
269
|
+
) -> RequestSerialized:
|
|
270
|
+
|
|
271
|
+
_host = None
|
|
272
|
+
|
|
273
|
+
_collection_formats: Dict[str, str] = {
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
_path_params: Dict[str, str] = {}
|
|
277
|
+
_query_params: List[Tuple[str, str]] = []
|
|
278
|
+
_header_params: Dict[str, Optional[str]] = _headers or {}
|
|
279
|
+
_form_params: List[Tuple[str, str]] = []
|
|
280
|
+
_files: Dict[
|
|
281
|
+
str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
|
|
282
|
+
] = {}
|
|
283
|
+
_body_params: Optional[bytes] = None
|
|
284
|
+
|
|
285
|
+
# process the path parameters
|
|
286
|
+
# process the query parameters
|
|
287
|
+
if page_number is not None:
|
|
288
|
+
|
|
289
|
+
_query_params.append(('pageNumber', page_number))
|
|
290
|
+
|
|
291
|
+
if page_size is not None:
|
|
292
|
+
|
|
293
|
+
_query_params.append(('pageSize', page_size))
|
|
294
|
+
|
|
295
|
+
if search is not None:
|
|
296
|
+
|
|
297
|
+
_query_params.append(('search', search))
|
|
298
|
+
|
|
299
|
+
# process the header parameters
|
|
300
|
+
# process the form parameters
|
|
301
|
+
# process the body parameter
|
|
302
|
+
|
|
303
|
+
|
|
304
|
+
# set the HTTP header `Accept`
|
|
305
|
+
if 'Accept' not in _header_params:
|
|
306
|
+
_header_params['Accept'] = self.api_client.select_header_accept(
|
|
307
|
+
[
|
|
308
|
+
'text/plain',
|
|
309
|
+
'application/json',
|
|
310
|
+
'text/json'
|
|
311
|
+
]
|
|
312
|
+
)
|
|
313
|
+
|
|
314
|
+
|
|
315
|
+
# authentication setting
|
|
316
|
+
_auth_settings: List[str] = [
|
|
317
|
+
'BearerAuth'
|
|
318
|
+
]
|
|
319
|
+
|
|
320
|
+
return self.api_client.param_serialize(
|
|
321
|
+
method='GET',
|
|
322
|
+
resource_path='/api/v2.0/ai-models',
|
|
323
|
+
path_params=_path_params,
|
|
324
|
+
query_params=_query_params,
|
|
325
|
+
header_params=_header_params,
|
|
326
|
+
body=_body_params,
|
|
327
|
+
post_params=_form_params,
|
|
328
|
+
files=_files,
|
|
329
|
+
auth_settings=_auth_settings,
|
|
330
|
+
collection_formats=_collection_formats,
|
|
331
|
+
_host=_host,
|
|
332
|
+
_request_auth=_request_auth
|
|
333
|
+
)
|
|
334
|
+
|
|
335
|
+
|
legit_api_client/api_client.py
CHANGED
|
@@ -91,7 +91,7 @@ class ApiClient:
|
|
|
91
91
|
self.default_headers[header_name] = header_value
|
|
92
92
|
self.cookie = cookie
|
|
93
93
|
# Set default User-Agent.
|
|
94
|
-
self.user_agent = 'OpenAPI-Generator/1.1.
|
|
94
|
+
self.user_agent = 'OpenAPI-Generator/1.1.4586/python'
|
|
95
95
|
self.client_side_validation = configuration.client_side_validation
|
|
96
96
|
|
|
97
97
|
def __enter__(self):
|
|
@@ -312,7 +312,7 @@ class ApiClient:
|
|
|
312
312
|
return_data = self.__deserialize_file(response_data)
|
|
313
313
|
elif response_type is not None:
|
|
314
314
|
match = None
|
|
315
|
-
content_type = response_data.
|
|
315
|
+
content_type = response_data.headers.get('content-type')
|
|
316
316
|
if content_type is not None:
|
|
317
317
|
match = re.search(r"charset=([a-zA-Z\-\d]+)[\s;]?", content_type)
|
|
318
318
|
encoding = match.group(1) if match else "utf-8"
|
|
@@ -329,7 +329,7 @@ class ApiClient:
|
|
|
329
329
|
return ApiResponse(
|
|
330
330
|
status_code = response_data.status,
|
|
331
331
|
data = return_data,
|
|
332
|
-
headers = response_data.
|
|
332
|
+
headers = response_data.headers,
|
|
333
333
|
raw_data = response_data.data
|
|
334
334
|
)
|
|
335
335
|
|
|
@@ -701,7 +701,7 @@ class ApiClient:
|
|
|
701
701
|
os.close(fd)
|
|
702
702
|
os.remove(path)
|
|
703
703
|
|
|
704
|
-
content_disposition = response.
|
|
704
|
+
content_disposition = response.headers.get("Content-Disposition")
|
|
705
705
|
if content_disposition:
|
|
706
706
|
m = re.search(
|
|
707
707
|
r'filename=[\'"]?([^\'"\s]+)[\'"]?',
|
|
@@ -164,7 +164,7 @@ class Configuration:
|
|
|
164
164
|
:param ca_cert_data: verify the peer using concatenated CA certificate data
|
|
165
165
|
in PEM (str) or DER (bytes) format.
|
|
166
166
|
:param cert_file: the path to a client certificate file, for mTLS.
|
|
167
|
-
:param key_file: the path to a client key file, for mTLS.
|
|
167
|
+
:param key_file: the path to a client key file, for mTLS.
|
|
168
168
|
|
|
169
169
|
:Example:
|
|
170
170
|
"""
|
|
@@ -486,6 +486,7 @@ class Configuration:
|
|
|
486
486
|
password = ""
|
|
487
487
|
if self.password is not None:
|
|
488
488
|
password = self.password
|
|
489
|
+
|
|
489
490
|
return urllib3.util.make_headers(
|
|
490
491
|
basic_auth=username + ':' + password
|
|
491
492
|
).get('authorization')
|
|
@@ -515,7 +516,7 @@ class Configuration:
|
|
|
515
516
|
"OS: {env}\n"\
|
|
516
517
|
"Python Version: {pyversion}\n"\
|
|
517
518
|
"Version of the API: 1.0\n"\
|
|
518
|
-
"SDK Package Version: 1.1.
|
|
519
|
+
"SDK Package Version: 1.1.4586".\
|
|
519
520
|
format(env=sys.platform, pyversion=sys.version)
|
|
520
521
|
|
|
521
522
|
def get_host_settings(self) -> List[HostSetting]:
|
|
@@ -563,6 +564,7 @@ class Configuration:
|
|
|
563
564
|
variable_name, variable['default_value'])
|
|
564
565
|
|
|
565
566
|
if 'enum_values' in variable \
|
|
567
|
+
and variable['enum_values'] \
|
|
566
568
|
and used_value not in variable['enum_values']:
|
|
567
569
|
raise ValueError(
|
|
568
570
|
"The variable `{0}` in the host URL has invalid value "
|
legit_api_client/exceptions.py
CHANGED
|
@@ -128,7 +128,7 @@ class ApiException(OpenApiException):
|
|
|
128
128
|
self.body = http_resp.data.decode('utf-8')
|
|
129
129
|
except Exception:
|
|
130
130
|
pass
|
|
131
|
-
self.headers = http_resp.
|
|
131
|
+
self.headers = http_resp.headers
|
|
132
132
|
|
|
133
133
|
@classmethod
|
|
134
134
|
def from_response(
|
|
@@ -169,8 +169,11 @@ class ApiException(OpenApiException):
|
|
|
169
169
|
error_message += "HTTP response headers: {0}\n".format(
|
|
170
170
|
self.headers)
|
|
171
171
|
|
|
172
|
-
if self.
|
|
173
|
-
error_message += "HTTP response body: {0}\n".format(self.
|
|
172
|
+
if self.body:
|
|
173
|
+
error_message += "HTTP response body: {0}\n".format(self.body)
|
|
174
|
+
|
|
175
|
+
if self.data:
|
|
176
|
+
error_message += "HTTP response data: {0}\n".format(self.data)
|
|
174
177
|
|
|
175
178
|
return error_message
|
|
176
179
|
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
|
|
15
15
|
# import models into model package
|
|
16
16
|
from legit_api_client.models.add_issue_comment_dto import AddIssueCommentDto
|
|
17
|
+
from legit_api_client.models.ai_model_reputation_dto import AiModelReputationDto
|
|
17
18
|
from legit_api_client.models.ai_secret_validation_result import AiSecretValidationResult
|
|
18
19
|
from legit_api_client.models.amazon_ecr_key_integration_create_dto import AmazonEcrKeyIntegrationCreateDto
|
|
19
20
|
from legit_api_client.models.amazon_ecr_key_integration_edit_dto import AmazonEcrKeyIntegrationEditDto
|
|
@@ -135,6 +136,7 @@ from legit_api_client.models.legit_score_requirement_group_type import LegitScor
|
|
|
135
136
|
from legit_api_client.models.legit_score_requirement_type import LegitScoreRequirementType
|
|
136
137
|
from legit_api_client.models.list_sort_direction import ListSortDirection
|
|
137
138
|
from legit_api_client.models.manual_check_dto import ManualCheckDto
|
|
139
|
+
from legit_api_client.models.model_reputation import ModelReputation
|
|
138
140
|
from legit_api_client.models.origin_type import OriginType
|
|
139
141
|
from legit_api_client.models.package_source import PackageSource
|
|
140
142
|
from legit_api_client.models.package_type import PackageType
|
|
@@ -162,6 +164,8 @@ from legit_api_client.models.product_unit_name_dto import ProductUnitNameDto
|
|
|
162
164
|
from legit_api_client.models.product_unit_type import ProductUnitType
|
|
163
165
|
from legit_api_client.models.programming_language import ProgrammingLanguage
|
|
164
166
|
from legit_api_client.models.repositories_to_containers_operation_dto import RepositoriesToContainersOperationDto
|
|
167
|
+
from legit_api_client.models.repository_automatic_business_impact_factor import RepositoryAutomaticBusinessImpactFactor
|
|
168
|
+
from legit_api_client.models.repository_context_field_dto import RepositoryContextFieldDto
|
|
165
169
|
from legit_api_client.models.repository_control_dto import RepositoryControlDto
|
|
166
170
|
from legit_api_client.models.repository_directory import RepositoryDirectory
|
|
167
171
|
from legit_api_client.models.repository_dto import RepositoryDto
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
Inventory
|
|
5
|
+
|
|
6
|
+
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import pprint
|
|
17
|
+
import re # noqa: F401
|
|
18
|
+
import json
|
|
19
|
+
|
|
20
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictStr
|
|
21
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
|
22
|
+
from legit_api_client.models.model_reputation import ModelReputation
|
|
23
|
+
from typing import Optional, Set
|
|
24
|
+
from typing_extensions import Self
|
|
25
|
+
|
|
26
|
+
class AiModelReputationDto(BaseModel):
|
|
27
|
+
"""
|
|
28
|
+
AiModelReputationDto
|
|
29
|
+
""" # noqa: E501
|
|
30
|
+
model_reputation: Optional[ModelReputation] = Field(default=None, alias="modelReputation")
|
|
31
|
+
reputation_breakdown: Optional[StrictStr] = Field(default=None, alias="reputationBreakdown")
|
|
32
|
+
name: Optional[StrictStr] = None
|
|
33
|
+
__properties: ClassVar[List[str]] = ["modelReputation", "reputationBreakdown", "name"]
|
|
34
|
+
|
|
35
|
+
model_config = ConfigDict(
|
|
36
|
+
populate_by_name=True,
|
|
37
|
+
validate_assignment=True,
|
|
38
|
+
protected_namespaces=(),
|
|
39
|
+
)
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
def to_str(self) -> str:
|
|
43
|
+
"""Returns the string representation of the model using alias"""
|
|
44
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
45
|
+
|
|
46
|
+
def to_json(self) -> str:
|
|
47
|
+
"""Returns the JSON representation of the model using alias"""
|
|
48
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
49
|
+
return json.dumps(self.to_dict())
|
|
50
|
+
|
|
51
|
+
@classmethod
|
|
52
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
53
|
+
"""Create an instance of AiModelReputationDto from a JSON string"""
|
|
54
|
+
return cls.from_dict(json.loads(json_str))
|
|
55
|
+
|
|
56
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
57
|
+
"""Return the dictionary representation of the model using alias.
|
|
58
|
+
|
|
59
|
+
This has the following differences from calling pydantic's
|
|
60
|
+
`self.model_dump(by_alias=True)`:
|
|
61
|
+
|
|
62
|
+
* `None` is only added to the output dict for nullable fields that
|
|
63
|
+
were set at model initialization. Other fields with value `None`
|
|
64
|
+
are ignored.
|
|
65
|
+
"""
|
|
66
|
+
excluded_fields: Set[str] = set([
|
|
67
|
+
])
|
|
68
|
+
|
|
69
|
+
_dict = self.model_dump(
|
|
70
|
+
by_alias=True,
|
|
71
|
+
exclude=excluded_fields,
|
|
72
|
+
exclude_none=True,
|
|
73
|
+
)
|
|
74
|
+
# set to None if reputation_breakdown (nullable) is None
|
|
75
|
+
# and model_fields_set contains the field
|
|
76
|
+
if self.reputation_breakdown is None and "reputation_breakdown" in self.model_fields_set:
|
|
77
|
+
_dict['reputationBreakdown'] = None
|
|
78
|
+
|
|
79
|
+
# set to None if name (nullable) is None
|
|
80
|
+
# and model_fields_set contains the field
|
|
81
|
+
if self.name is None and "name" in self.model_fields_set:
|
|
82
|
+
_dict['name'] = None
|
|
83
|
+
|
|
84
|
+
return _dict
|
|
85
|
+
|
|
86
|
+
@classmethod
|
|
87
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
88
|
+
"""Create an instance of AiModelReputationDto from a dict"""
|
|
89
|
+
if obj is None:
|
|
90
|
+
return None
|
|
91
|
+
|
|
92
|
+
if not isinstance(obj, dict):
|
|
93
|
+
return cls.model_validate(obj)
|
|
94
|
+
|
|
95
|
+
_obj = cls.model_validate({
|
|
96
|
+
"modelReputation": obj.get("modelReputation"),
|
|
97
|
+
"reputationBreakdown": obj.get("reputationBreakdown"),
|
|
98
|
+
"name": obj.get("name")
|
|
99
|
+
})
|
|
100
|
+
return _obj
|
|
101
|
+
|
|
102
|
+
|
|
@@ -107,6 +107,8 @@ class ControlClassification(str, Enum):
|
|
|
107
107
|
DYNATRACESCA = 'DynatraceSca'
|
|
108
108
|
FORTIFYSCC = 'FortifyScc'
|
|
109
109
|
BRIGHTSECURITY = 'BrightSecurity'
|
|
110
|
+
AWSSECURITYHUB = 'AwsSecurityHub'
|
|
111
|
+
CYTRIX = 'Cytrix'
|
|
110
112
|
|
|
111
113
|
@classmethod
|
|
112
114
|
def from_json(cls, json_str: str) -> Self:
|
|
@@ -67,6 +67,7 @@ class ControlSourceType(str, Enum):
|
|
|
67
67
|
DYNATRACEINTEGRATION = 'DynatraceIntegration'
|
|
68
68
|
FORTIFYSCCINTEGRATION = 'FortifySccIntegration'
|
|
69
69
|
BRIGHTSECURITYINTEGRATION = 'BrightSecurityIntegration'
|
|
70
|
+
CYTRIXINTEGRATION = 'CytrixIntegration'
|
|
70
71
|
|
|
71
72
|
@classmethod
|
|
72
73
|
def from_json(cls, json_str: str) -> Self:
|
|
@@ -65,7 +65,8 @@ class CustomerFacingIssueDto(BaseModel):
|
|
|
65
65
|
assigned_user_id: Optional[StrictStr] = Field(default=None, description="ID of the user assigned to handle this issue (if applicable)", alias="assignedUserId")
|
|
66
66
|
sources: Optional[List[SourceDto]] = Field(default=None, description="The sources the issue originated from")
|
|
67
67
|
product_units: Optional[List[ProductUnitIssueDto]] = Field(default=None, alias="productUnits")
|
|
68
|
-
|
|
68
|
+
remediation_steps: Optional[List[StrictStr]] = Field(default=None, description="Remediation steps for resolving the issue", alias="remediationSteps")
|
|
69
|
+
__properties: ClassVar[List[str]] = ["id", "title", "detectedAt", "lastClosedAt", "lastActionTime", "status", "issueType", "severity", "policySeverity", "closingReason", "closingLocation", "statusChangedNote", "snoozedType", "snoozedUntil", "score", "secretsDataDto", "dependencyVulnerabilityDataDto", "dastDataDto", "originId", "originType", "originLink", "actionId", "policyName", "assignedUserId", "sources", "productUnits", "remediationSteps"]
|
|
69
70
|
|
|
70
71
|
model_config = ConfigDict(
|
|
71
72
|
populate_by_name=True,
|
|
@@ -229,6 +230,11 @@ class CustomerFacingIssueDto(BaseModel):
|
|
|
229
230
|
if self.product_units is None and "product_units" in self.model_fields_set:
|
|
230
231
|
_dict['productUnits'] = None
|
|
231
232
|
|
|
233
|
+
# set to None if remediation_steps (nullable) is None
|
|
234
|
+
# and model_fields_set contains the field
|
|
235
|
+
if self.remediation_steps is None and "remediation_steps" in self.model_fields_set:
|
|
236
|
+
_dict['remediationSteps'] = None
|
|
237
|
+
|
|
232
238
|
return _dict
|
|
233
239
|
|
|
234
240
|
@classmethod
|
|
@@ -266,7 +272,8 @@ class CustomerFacingIssueDto(BaseModel):
|
|
|
266
272
|
"policyName": obj.get("policyName"),
|
|
267
273
|
"assignedUserId": obj.get("assignedUserId"),
|
|
268
274
|
"sources": [SourceDto.from_dict(_item) for _item in obj["sources"]] if obj.get("sources") is not None else None,
|
|
269
|
-
"productUnits": [ProductUnitIssueDto.from_dict(_item) for _item in obj["productUnits"]] if obj.get("productUnits") is not None else None
|
|
275
|
+
"productUnits": [ProductUnitIssueDto.from_dict(_item) for _item in obj["productUnits"]] if obj.get("productUnits") is not None else None,
|
|
276
|
+
"remediationSteps": obj.get("remediationSteps")
|
|
270
277
|
})
|
|
271
278
|
return _obj
|
|
272
279
|
|
|
@@ -102,6 +102,8 @@ class IssueActionType(str, Enum):
|
|
|
102
102
|
USERSNOOZEDISSUEUNTILFIXAVAILABLE = 'UserSnoozedIssueUntilFixAvailable'
|
|
103
103
|
ISSUECREATEDFROMMANUALUPLOAD = 'IssueCreatedFromManualUpload'
|
|
104
104
|
PULLREQUESTOPENED = 'PullRequestOpened'
|
|
105
|
+
TAGADDEDTOISSUEBYAUTOMATIONRULE = 'TagAddedToIssueByAutomationRule'
|
|
106
|
+
ISSUECOMMENTEDBYAUTOMATIONRULE = 'IssueCommentedByAutomationRule'
|
|
105
107
|
|
|
106
108
|
@classmethod
|
|
107
109
|
def from_json(cls, json_str: str) -> Self:
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
Inventory
|
|
5
|
+
|
|
6
|
+
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import json
|
|
17
|
+
from enum import Enum
|
|
18
|
+
from typing_extensions import Self
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class ModelReputation(str, Enum):
|
|
22
|
+
"""
|
|
23
|
+
ModelReputation
|
|
24
|
+
"""
|
|
25
|
+
|
|
26
|
+
"""
|
|
27
|
+
allowed enum values
|
|
28
|
+
"""
|
|
29
|
+
NONE = 'None'
|
|
30
|
+
LOW = 'Low'
|
|
31
|
+
MEDIUM = 'Medium'
|
|
32
|
+
HIGH = 'High'
|
|
33
|
+
|
|
34
|
+
@classmethod
|
|
35
|
+
def from_json(cls, json_str: str) -> Self:
|
|
36
|
+
"""Create an instance of ModelReputation from a JSON string"""
|
|
37
|
+
return cls(json.loads(json_str))
|
|
38
|
+
|
|
39
|
+
|
|
@@ -46,6 +46,8 @@ class ProductConnectionType(str, Enum):
|
|
|
46
46
|
AGGREGATEDHOST = 'AggregatedHost'
|
|
47
47
|
CLOUDCOMPUTERESOURCEQUERY = 'CloudComputeResourceQuery'
|
|
48
48
|
CLOUDCOMPUTERESOURCE = 'CloudComputeResource'
|
|
49
|
+
CIWORKFLOWS = 'CiWorkflows'
|
|
50
|
+
CIWORKFLOWSQUERY = 'CiWorkflowsQuery'
|
|
49
51
|
NESTEDPRODUCTREPOSITORY = 'NestedProductRepository'
|
|
50
52
|
|
|
51
53
|
@classmethod
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
Inventory
|
|
5
|
+
|
|
6
|
+
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import json
|
|
17
|
+
from enum import Enum
|
|
18
|
+
from typing_extensions import Self
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class RepositoryAutomaticBusinessImpactFactor(str, Enum):
|
|
22
|
+
"""
|
|
23
|
+
RepositoryAutomaticBusinessImpactFactor
|
|
24
|
+
"""
|
|
25
|
+
|
|
26
|
+
"""
|
|
27
|
+
allowed enum values
|
|
28
|
+
"""
|
|
29
|
+
UNKNOWN = 'Unknown'
|
|
30
|
+
DEPLOYEDTOCLOUD = 'DeployedToCloud'
|
|
31
|
+
NETWORKFACING = 'NetworkFacing'
|
|
32
|
+
USINGAI = 'UsingAI'
|
|
33
|
+
ISOPENSOURCE = 'IsOpenSource'
|
|
34
|
+
HANDLINGSENSITIVEDATA = 'HandlingSensitiveData'
|
|
35
|
+
REVENUEGENERATING = 'RevenueGenerating'
|
|
36
|
+
EXPOSINGAPI = 'ExposingApi'
|
|
37
|
+
|
|
38
|
+
@classmethod
|
|
39
|
+
def from_json(cls, json_str: str) -> Self:
|
|
40
|
+
"""Create an instance of RepositoryAutomaticBusinessImpactFactor from a JSON string"""
|
|
41
|
+
return cls(json.loads(json_str))
|
|
42
|
+
|
|
43
|
+
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
Inventory
|
|
5
|
+
|
|
6
|
+
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import pprint
|
|
17
|
+
import re # noqa: F401
|
|
18
|
+
import json
|
|
19
|
+
|
|
20
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictBool
|
|
21
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
|
22
|
+
from legit_api_client.models.repository_automatic_business_impact_factor import RepositoryAutomaticBusinessImpactFactor
|
|
23
|
+
from typing import Optional, Set
|
|
24
|
+
from typing_extensions import Self
|
|
25
|
+
|
|
26
|
+
class RepositoryContextFieldDto(BaseModel):
|
|
27
|
+
"""
|
|
28
|
+
RepositoryContextFieldDto
|
|
29
|
+
""" # noqa: E501
|
|
30
|
+
factor: Optional[RepositoryAutomaticBusinessImpactFactor] = None
|
|
31
|
+
automatic_value: Optional[StrictBool] = Field(default=None, alias="automaticValue")
|
|
32
|
+
manual_value: Optional[StrictBool] = Field(default=None, alias="manualValue")
|
|
33
|
+
__properties: ClassVar[List[str]] = ["factor", "automaticValue", "manualValue"]
|
|
34
|
+
|
|
35
|
+
model_config = ConfigDict(
|
|
36
|
+
populate_by_name=True,
|
|
37
|
+
validate_assignment=True,
|
|
38
|
+
protected_namespaces=(),
|
|
39
|
+
)
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
def to_str(self) -> str:
|
|
43
|
+
"""Returns the string representation of the model using alias"""
|
|
44
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
45
|
+
|
|
46
|
+
def to_json(self) -> str:
|
|
47
|
+
"""Returns the JSON representation of the model using alias"""
|
|
48
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
49
|
+
return json.dumps(self.to_dict())
|
|
50
|
+
|
|
51
|
+
@classmethod
|
|
52
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
53
|
+
"""Create an instance of RepositoryContextFieldDto from a JSON string"""
|
|
54
|
+
return cls.from_dict(json.loads(json_str))
|
|
55
|
+
|
|
56
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
57
|
+
"""Return the dictionary representation of the model using alias.
|
|
58
|
+
|
|
59
|
+
This has the following differences from calling pydantic's
|
|
60
|
+
`self.model_dump(by_alias=True)`:
|
|
61
|
+
|
|
62
|
+
* `None` is only added to the output dict for nullable fields that
|
|
63
|
+
were set at model initialization. Other fields with value `None`
|
|
64
|
+
are ignored.
|
|
65
|
+
"""
|
|
66
|
+
excluded_fields: Set[str] = set([
|
|
67
|
+
])
|
|
68
|
+
|
|
69
|
+
_dict = self.model_dump(
|
|
70
|
+
by_alias=True,
|
|
71
|
+
exclude=excluded_fields,
|
|
72
|
+
exclude_none=True,
|
|
73
|
+
)
|
|
74
|
+
# set to None if automatic_value (nullable) is None
|
|
75
|
+
# and model_fields_set contains the field
|
|
76
|
+
if self.automatic_value is None and "automatic_value" in self.model_fields_set:
|
|
77
|
+
_dict['automaticValue'] = None
|
|
78
|
+
|
|
79
|
+
# set to None if manual_value (nullable) is None
|
|
80
|
+
# and model_fields_set contains the field
|
|
81
|
+
if self.manual_value is None and "manual_value" in self.model_fields_set:
|
|
82
|
+
_dict['manualValue'] = None
|
|
83
|
+
|
|
84
|
+
return _dict
|
|
85
|
+
|
|
86
|
+
@classmethod
|
|
87
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
88
|
+
"""Create an instance of RepositoryContextFieldDto from a dict"""
|
|
89
|
+
if obj is None:
|
|
90
|
+
return None
|
|
91
|
+
|
|
92
|
+
if not isinstance(obj, dict):
|
|
93
|
+
return cls.model_validate(obj)
|
|
94
|
+
|
|
95
|
+
_obj = cls.model_validate({
|
|
96
|
+
"factor": obj.get("factor"),
|
|
97
|
+
"automaticValue": obj.get("automaticValue"),
|
|
98
|
+
"manualValue": obj.get("manualValue")
|
|
99
|
+
})
|
|
100
|
+
return _obj
|
|
101
|
+
|
|
102
|
+
|
|
@@ -21,6 +21,7 @@ from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictFloat, Stri
|
|
|
21
21
|
from typing import Any, ClassVar, Dict, List, Optional, Union
|
|
22
22
|
from legit_api_client.models.collaborator_dto import CollaboratorDto
|
|
23
23
|
from legit_api_client.models.product_unit_name_dto import ProductUnitNameDto
|
|
24
|
+
from legit_api_client.models.repository_context_field_dto import RepositoryContextFieldDto
|
|
24
25
|
from legit_api_client.models.repository_group_dto import RepositoryGroupDto
|
|
25
26
|
from legit_api_client.models.repository_visibility import RepositoryVisibility
|
|
26
27
|
from legit_api_client.models.tag_dto import TagDto
|
|
@@ -40,12 +41,13 @@ class RepositoryDto(BaseModel):
|
|
|
40
41
|
owner: Optional[CollaboratorDto] = None
|
|
41
42
|
tags: Optional[List[TagDto]] = None
|
|
42
43
|
product_units: Optional[List[ProductUnitNameDto]] = Field(default=None, alias="productUnits")
|
|
44
|
+
context_fields: Optional[List[RepositoryContextFieldDto]] = Field(default=None, alias="contextFields")
|
|
43
45
|
issues_count: Optional[StrictInt] = Field(default=None, alias="issuesCount")
|
|
44
46
|
lines_count: Optional[StrictInt] = Field(default=None, alias="linesCount")
|
|
45
47
|
score: Optional[Union[StrictFloat, StrictInt]] = None
|
|
46
48
|
score_out_of100: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, alias="scoreOutOf100")
|
|
47
49
|
group: Optional[RepositoryGroupDto] = None
|
|
48
|
-
__properties: ClassVar[List[str]] = ["id", "name", "url", "visibility", "isActive", "isArchived", "owner", "tags", "productUnits", "issuesCount", "linesCount", "score", "scoreOutOf100", "group"]
|
|
50
|
+
__properties: ClassVar[List[str]] = ["id", "name", "url", "visibility", "isActive", "isArchived", "owner", "tags", "productUnits", "contextFields", "issuesCount", "linesCount", "score", "scoreOutOf100", "group"]
|
|
49
51
|
|
|
50
52
|
model_config = ConfigDict(
|
|
51
53
|
populate_by_name=True,
|
|
@@ -105,6 +107,13 @@ class RepositoryDto(BaseModel):
|
|
|
105
107
|
if _item_product_units:
|
|
106
108
|
_items.append(_item_product_units.to_dict())
|
|
107
109
|
_dict['productUnits'] = _items
|
|
110
|
+
# override the default output from pydantic by calling `to_dict()` of each item in context_fields (list)
|
|
111
|
+
_items = []
|
|
112
|
+
if self.context_fields:
|
|
113
|
+
for _item_context_fields in self.context_fields:
|
|
114
|
+
if _item_context_fields:
|
|
115
|
+
_items.append(_item_context_fields.to_dict())
|
|
116
|
+
_dict['contextFields'] = _items
|
|
108
117
|
# override the default output from pydantic by calling `to_dict()` of group
|
|
109
118
|
if self.group:
|
|
110
119
|
_dict['group'] = self.group.to_dict()
|
|
@@ -148,6 +157,11 @@ class RepositoryDto(BaseModel):
|
|
|
148
157
|
if self.product_units is None and "product_units" in self.model_fields_set:
|
|
149
158
|
_dict['productUnits'] = None
|
|
150
159
|
|
|
160
|
+
# set to None if context_fields (nullable) is None
|
|
161
|
+
# and model_fields_set contains the field
|
|
162
|
+
if self.context_fields is None and "context_fields" in self.model_fields_set:
|
|
163
|
+
_dict['contextFields'] = None
|
|
164
|
+
|
|
151
165
|
# set to None if lines_count (nullable) is None
|
|
152
166
|
# and model_fields_set contains the field
|
|
153
167
|
if self.lines_count is None and "lines_count" in self.model_fields_set:
|
|
@@ -189,6 +203,7 @@ class RepositoryDto(BaseModel):
|
|
|
189
203
|
"owner": CollaboratorDto.from_dict(obj["owner"]) if obj.get("owner") is not None else None,
|
|
190
204
|
"tags": [TagDto.from_dict(_item) for _item in obj["tags"]] if obj.get("tags") is not None else None,
|
|
191
205
|
"productUnits": [ProductUnitNameDto.from_dict(_item) for _item in obj["productUnits"]] if obj.get("productUnits") is not None else None,
|
|
206
|
+
"contextFields": [RepositoryContextFieldDto.from_dict(_item) for _item in obj["contextFields"]] if obj.get("contextFields") is not None else None,
|
|
192
207
|
"issuesCount": obj.get("issuesCount"),
|
|
193
208
|
"linesCount": obj.get("linesCount"),
|
|
194
209
|
"score": obj.get("score"),
|
|
@@ -132,6 +132,8 @@ class ScmType(str, Enum):
|
|
|
132
132
|
FORTIFYSSC = 'FortifySsc'
|
|
133
133
|
PRISMACLOUDSECURITY = 'PrismaCloudSecurity'
|
|
134
134
|
GOOGLEARTIFACTREGISTRY = 'GoogleArtifactRegistry'
|
|
135
|
+
ASANA = 'Asana'
|
|
136
|
+
CYTRIX = 'Cytrix'
|
|
135
137
|
|
|
136
138
|
@classmethod
|
|
137
139
|
def from_json(cls, json_str: str) -> Self:
|
|
@@ -83,6 +83,7 @@ class SdlcAssetType(str, Enum):
|
|
|
83
83
|
CHECKMARXSAST = 'CheckmarxSast'
|
|
84
84
|
CHECKMARXSCA = 'CheckmarxSca'
|
|
85
85
|
SERVICENOW = 'ServiceNow'
|
|
86
|
+
ASANA = 'Asana'
|
|
86
87
|
BURPSUITE = 'Burpsuite'
|
|
87
88
|
JIRASECRETSCANNING = 'JiraSecretScanning'
|
|
88
89
|
COVERITY = 'Coverity'
|
|
@@ -142,6 +143,7 @@ class SdlcAssetType(str, Enum):
|
|
|
142
143
|
DYNATRACE = 'Dynatrace'
|
|
143
144
|
FORTIFYSSC = 'FortifySsc'
|
|
144
145
|
PRISMACLOUDSECURITY = 'PrismaCloudSecurity'
|
|
146
|
+
CYTRIX = 'Cytrix'
|
|
145
147
|
|
|
146
148
|
@classmethod
|
|
147
149
|
def from_json(cls, json_str: str) -> Self:
|
|
@@ -33,7 +33,8 @@ class SecretsDataDto(BaseModel):
|
|
|
33
33
|
validity_status: Optional[SecretIssueValidityStatus] = Field(default=None, description="Status of the secret validity", alias="validityStatus")
|
|
34
34
|
validity_check_time: Optional[datetime] = Field(default=None, description="Timestamp when the validity was last checked", alias="validityCheckTime")
|
|
35
35
|
verified_validation_url: Optional[StrictStr] = Field(default=None, description="URL used to verify the validity of the secret", alias="verifiedValidationUrl")
|
|
36
|
-
|
|
36
|
+
commit_author_names: Optional[List[StrictStr]] = Field(default=None, description="Names of commit authors who committed this secret", alias="commitAuthorNames")
|
|
37
|
+
__properties: ClassVar[List[str]] = ["aiValidationResult", "validityStatus", "validityCheckTime", "verifiedValidationUrl", "commitAuthorNames"]
|
|
37
38
|
|
|
38
39
|
model_config = ConfigDict(
|
|
39
40
|
populate_by_name=True,
|
|
@@ -89,6 +90,11 @@ class SecretsDataDto(BaseModel):
|
|
|
89
90
|
if self.verified_validation_url is None and "verified_validation_url" in self.model_fields_set:
|
|
90
91
|
_dict['verifiedValidationUrl'] = None
|
|
91
92
|
|
|
93
|
+
# set to None if commit_author_names (nullable) is None
|
|
94
|
+
# and model_fields_set contains the field
|
|
95
|
+
if self.commit_author_names is None and "commit_author_names" in self.model_fields_set:
|
|
96
|
+
_dict['commitAuthorNames'] = None
|
|
97
|
+
|
|
92
98
|
return _dict
|
|
93
99
|
|
|
94
100
|
@classmethod
|
|
@@ -104,7 +110,8 @@ class SecretsDataDto(BaseModel):
|
|
|
104
110
|
"aiValidationResult": obj.get("aiValidationResult"),
|
|
105
111
|
"validityStatus": obj.get("validityStatus"),
|
|
106
112
|
"validityCheckTime": obj.get("validityCheckTime"),
|
|
107
|
-
"verifiedValidationUrl": obj.get("verifiedValidationUrl")
|
|
113
|
+
"verifiedValidationUrl": obj.get("verifiedValidationUrl"),
|
|
114
|
+
"commitAuthorNames": obj.get("commitAuthorNames")
|
|
108
115
|
})
|
|
109
116
|
return _obj
|
|
110
117
|
|
legit_api_client/rest.py
CHANGED
|
@@ -48,12 +48,17 @@ class RESTResponse(io.IOBase):
|
|
|
48
48
|
self.data = self.response.data
|
|
49
49
|
return self.data
|
|
50
50
|
|
|
51
|
+
@property
|
|
52
|
+
def headers(self):
|
|
53
|
+
"""Returns a dictionary of response headers."""
|
|
54
|
+
return self.response.headers
|
|
55
|
+
|
|
51
56
|
def getheaders(self):
|
|
52
|
-
"""Returns a dictionary of the response headers."""
|
|
57
|
+
"""Returns a dictionary of the response headers; use ``headers`` instead."""
|
|
53
58
|
return self.response.headers
|
|
54
59
|
|
|
55
60
|
def getheader(self, name, default=None):
|
|
56
|
-
"""Returns a given response header."""
|
|
61
|
+
"""Returns a given response header; use ``headers.get()`` instead."""
|
|
57
62
|
return self.response.headers.get(name, default)
|
|
58
63
|
|
|
59
64
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: legit_api_client
|
|
3
|
-
Version: 1.1.
|
|
3
|
+
Version: 1.1.4586
|
|
4
4
|
Summary: Inventory
|
|
5
5
|
Home-page:
|
|
6
6
|
Author: OpenAPI Generator community
|
|
@@ -22,8 +22,8 @@ No description provided (generated by Openapi Generator https://github.com/opena
|
|
|
22
22
|
This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
|
|
23
23
|
|
|
24
24
|
- API version: 1.0
|
|
25
|
-
- Package version: 1.1.
|
|
26
|
-
- Generator version: 7.
|
|
25
|
+
- Package version: 1.1.4586
|
|
26
|
+
- Generator version: 7.18.0
|
|
27
27
|
- Build package: org.openapitools.codegen.languages.PythonClientCodegen
|
|
28
28
|
|
|
29
29
|
## Requirements.
|
|
@@ -175,6 +175,7 @@ Class | Method | HTTP request | Description
|
|
|
175
175
|
*IssuesV2Api* | [**get_issues_count**](docs/IssuesV2Api.md#get_issues_count) | **GET** /api/v2.0/issues/count | Get the issues count
|
|
176
176
|
*IssuesV2Api* | [**get_issues_v2**](docs/IssuesV2Api.md#get_issues_v2) | **GET** /api/v2.0/issues | Get issues
|
|
177
177
|
*IssuesV2Api* | [**get_issues_vulnerabilities**](docs/IssuesV2Api.md#get_issues_vulnerabilities) | **GET** /api/v2.0/issues/vulnerabilities | Get the vulnerabilities of the given issues
|
|
178
|
+
*ModelsApi* | [**api_v20_ai_models_get**](docs/ModelsApi.md#api_v20_ai_models_get) | **GET** /api/v2.0/ai-models | Get model by name
|
|
178
179
|
*PoliciesApi* | [**api_v10_policies_get**](docs/PoliciesApi.md#api_v10_policies_get) | **GET** /api/v1.0/policies | Get Policies
|
|
179
180
|
*PoliciesApi* | [**get_policy_by_id**](docs/PoliciesApi.md#get_policy_by_id) | **GET** /api/v1.0/policies/{id} | Get Policy by id
|
|
180
181
|
*PoliciesApi* | [**get_policy_by_name**](docs/PoliciesApi.md#get_policy_by_name) | **GET** /api/v1.0/policies/by-name/{name} | Get by Policy name
|
|
@@ -218,6 +219,7 @@ Class | Method | HTTP request | Description
|
|
|
218
219
|
## Documentation For Models
|
|
219
220
|
|
|
220
221
|
- [AddIssueCommentDto](docs/AddIssueCommentDto.md)
|
|
222
|
+
- [AiModelReputationDto](docs/AiModelReputationDto.md)
|
|
221
223
|
- [AiSecretValidationResult](docs/AiSecretValidationResult.md)
|
|
222
224
|
- [AmazonEcrKeyIntegrationCreateDto](docs/AmazonEcrKeyIntegrationCreateDto.md)
|
|
223
225
|
- [AmazonEcrKeyIntegrationEditDto](docs/AmazonEcrKeyIntegrationEditDto.md)
|
|
@@ -339,6 +341,7 @@ Class | Method | HTTP request | Description
|
|
|
339
341
|
- [LegitScoreRequirementType](docs/LegitScoreRequirementType.md)
|
|
340
342
|
- [ListSortDirection](docs/ListSortDirection.md)
|
|
341
343
|
- [ManualCheckDto](docs/ManualCheckDto.md)
|
|
344
|
+
- [ModelReputation](docs/ModelReputation.md)
|
|
342
345
|
- [OriginType](docs/OriginType.md)
|
|
343
346
|
- [PackageSource](docs/PackageSource.md)
|
|
344
347
|
- [PackageType](docs/PackageType.md)
|
|
@@ -366,6 +369,8 @@ Class | Method | HTTP request | Description
|
|
|
366
369
|
- [ProductUnitType](docs/ProductUnitType.md)
|
|
367
370
|
- [ProgrammingLanguage](docs/ProgrammingLanguage.md)
|
|
368
371
|
- [RepositoriesToContainersOperationDto](docs/RepositoriesToContainersOperationDto.md)
|
|
372
|
+
- [RepositoryAutomaticBusinessImpactFactor](docs/RepositoryAutomaticBusinessImpactFactor.md)
|
|
373
|
+
- [RepositoryContextFieldDto](docs/RepositoryContextFieldDto.md)
|
|
369
374
|
- [RepositoryControlDto](docs/RepositoryControlDto.md)
|
|
370
375
|
- [RepositoryDirectory](docs/RepositoryDirectory.md)
|
|
371
376
|
- [RepositoryDto](docs/RepositoryDto.md)
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
legit_api_client/__init__.py,sha256=
|
|
2
|
-
legit_api_client/api_client.py,sha256=
|
|
1
|
+
legit_api_client/__init__.py,sha256=27DGKGby3OJMogsskCrOMWpVzqK27UrDSTXYJ5G0V3c,29409
|
|
2
|
+
legit_api_client/api_client.py,sha256=GB35ezSkR4EZZdv_EvkETNctuPg_xhJr0aa47pD68Yw,27804
|
|
3
3
|
legit_api_client/api_response.py,sha256=eMxw1mpmJcoGZ3gs9z6jM4oYoZ10Gjk333s9sKxGv7s,652
|
|
4
|
-
legit_api_client/configuration.py,sha256=
|
|
5
|
-
legit_api_client/exceptions.py,sha256=
|
|
4
|
+
legit_api_client/configuration.py,sha256=w8JnC78qJ4rrK0r-nxwFE4n8XfwzsIt6zz5F4yKysrk,18537
|
|
5
|
+
legit_api_client/exceptions.py,sha256=FQhdQym8Gv0T7Q5dppOeb-yBbB_jgov4wNAmRaz1EM0,6538
|
|
6
6
|
legit_api_client/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
7
|
-
legit_api_client/rest.py,sha256=
|
|
8
|
-
legit_api_client/api/__init__.py,sha256=
|
|
7
|
+
legit_api_client/rest.py,sha256=4g4Zi4xX1187Af75nEgTesIYeIJmdpV0pWws4VM2iD0,9657
|
|
8
|
+
legit_api_client/api/__init__.py,sha256=9toQGpkG-SNVQhXEOPTYYlZYvEZt4Up7qbg8jVe5jcg,1441
|
|
9
9
|
legit_api_client/api/amazon_ecr_key_integration_api.py,sha256=MiQ4bzBxPHeaHv-YWHFXNemQK5Q19NBPR_YrhST8bqU,10476
|
|
10
10
|
legit_api_client/api/amazon_ecr_role_integration_api.py,sha256=M4I_SpnGVUHXu-6i47mxbR0Dye62uM7nVOXnpc0opxk,10488
|
|
11
11
|
legit_api_client/api/brokers_api.py,sha256=VcU8AmomvtMO3A0evv6MwwOJAkGLcYitvYSz1KV5V2U,12302
|
|
@@ -18,6 +18,7 @@ legit_api_client/api/dependencies_v2_api.py,sha256=r0Bfunn2AVH214xsW6zddBBf4rvqy
|
|
|
18
18
|
legit_api_client/api/integrations_api.py,sha256=IhQaqexoT_0RBNXKz-_Mw-tDzJeuY2PPRE5IoscWZO8,191902
|
|
19
19
|
legit_api_client/api/issues_api.py,sha256=c9SHDtdM3NEY5bKYlX9_bU2_S4-iUTEttuimiEd3zUM,171765
|
|
20
20
|
legit_api_client/api/issues_v2_api.py,sha256=pSWx4yhGO_zP0z9OOTuFJv7NIz70eVkdR8Aro-17uZU,244070
|
|
21
|
+
legit_api_client/api/models_api.py,sha256=2iB62B0kMUdKP57gXlHnL1p-Kpy46pj6_7KdvyYIIj8,12402
|
|
21
22
|
legit_api_client/api/policies_api.py,sha256=2oJ4T8IUpKD8YXxiPg1FqIaJ699nBc9XvqavUTuyEwE,39158
|
|
22
23
|
legit_api_client/api/product_units_api.py,sha256=FYY4ZS_SysiJ_fHqoPNQV9OEyKjcoWeMHcQ2SiwDbFE,106296
|
|
23
24
|
legit_api_client/api/repositories_api.py,sha256=txLundrKkEVhb54o3E6LfGJswZXHquMHHd6kPMViqB4,109468
|
|
@@ -26,8 +27,9 @@ legit_api_client/api/saved_queries_api.py,sha256=fSrPQjxbno6q8nDInlugohVoBE9BedR
|
|
|
26
27
|
legit_api_client/api/sdlc_assets_api.py,sha256=AkWc7Vr3HhLiEw21SYnIEoBWpUiBaQYM6snqshNoUhE,39773
|
|
27
28
|
legit_api_client/api/tags_api.py,sha256=Rs5-RyIDxQKrDgAFl-RazKhbgbv_q0Q-3wBYeXhSUjE,32570
|
|
28
29
|
legit_api_client/api/workspaces_api.py,sha256=Eb_BTJkE-zt5fnGEY6wnHH6OHp_nboh9TEsOGyxI-eg,85370
|
|
29
|
-
legit_api_client/models/__init__.py,sha256=
|
|
30
|
+
legit_api_client/models/__init__.py,sha256=X-2KNPF1HQS22OGfrVZDTLPN8QHK-CDtGdoHo9nkvyU,15958
|
|
30
31
|
legit_api_client/models/add_issue_comment_dto.py,sha256=yXcBOfZzi0UcojpCcFqpO_umOpZZp53qCX3GY4x2DaQ,2575
|
|
32
|
+
legit_api_client/models/ai_model_reputation_dto.py,sha256=uKH-Gf8zx8F6dsku0IQR6YlC5bQyHx9ro9lknwey6jU,3420
|
|
31
33
|
legit_api_client/models/ai_secret_validation_result.py,sha256=Qniyaz_12c-6iexAtQFVaHfJ_MFCImjckv4e_xxFToc,877
|
|
32
34
|
legit_api_client/models/amazon_ecr_key_integration_create_dto.py,sha256=Inj8_WcHKM26G26o730PYiuPsD2wMP0RLOnjnf-Pw2E,4616
|
|
33
35
|
legit_api_client/models/amazon_ecr_key_integration_edit_dto.py,sha256=y-G8TXc3AkUieV9SKtp6OB5R5fSmnbjmAeD5jfFeqzs,4608
|
|
@@ -64,8 +66,8 @@ legit_api_client/models/container_image_dto.py,sha256=lAZ9QUozOd7Up-5Fz55spEbJNq
|
|
|
64
66
|
legit_api_client/models/container_image_version_dto.py,sha256=iBQRJ44IQFJiuxWkF5yQDeMcBBZTmz-61LQE6itGREo,3719
|
|
65
67
|
legit_api_client/models/container_to_cloud_resource_operation_dto.py,sha256=SUcFWAEIpXh-mtJ42poGk8x_8cmwEeomWFVE68U-Lnc,3336
|
|
66
68
|
legit_api_client/models/container_to_repository_operation_dto.py,sha256=Tb1WkEeuMlGIIKnye1HjjJ2hGyxtkvFBfP-FQb7rv54,3293
|
|
67
|
-
legit_api_client/models/control_classification.py,sha256=
|
|
68
|
-
legit_api_client/models/control_source_type.py,sha256=
|
|
69
|
+
legit_api_client/models/control_classification.py,sha256=Q0lPBdqlLyiA_zUkB9gS-axViXk8h4mpiye_qUql_rk,3698
|
|
70
|
+
legit_api_client/models/control_source_type.py,sha256=9s7g4yfzqTRNXK1iyvk7uLQIFez7OCNzXDNWl6U7Uww,2704
|
|
69
71
|
legit_api_client/models/control_type.py,sha256=RaLY3-aMAnyQ6vboN3dsxLmsPvDc05re45BwVwSb7ew,1132
|
|
70
72
|
legit_api_client/models/correlated_cloud_instance.py,sha256=oNI24xF5yU0B6IuN8_DspjUoD60sDzrZ1ZedxYMEo6s,2999
|
|
71
73
|
legit_api_client/models/correlated_repository_dto.py,sha256=bA6j87oQvIEP0uxq3jWKAxMOkK399IOQJ8XdrGIsVvc,2999
|
|
@@ -90,7 +92,7 @@ legit_api_client/models/customer_facing_dependency_dto.py,sha256=01o67I5vIc3NysT
|
|
|
90
92
|
legit_api_client/models/customer_facing_dependency_dto_customer_facing_cursor_paged_dto.py,sha256=QpQdpwYbyecJ6Asm1ucgXkZ1D73KpsmUuE4lBZeW7RU,3931
|
|
91
93
|
legit_api_client/models/customer_facing_dependency_license.py,sha256=YSCTQja0U4xcEFUzSMgyftyjN8ptUmyqXdYxVVHaY18,2925
|
|
92
94
|
legit_api_client/models/customer_facing_issue_action_dto.py,sha256=OOxwHnVPcNVts8PN09__rvGOBAg4PrTJsr0Iv88iQ9o,3528
|
|
93
|
-
legit_api_client/models/customer_facing_issue_dto.py,sha256=
|
|
95
|
+
legit_api_client/models/customer_facing_issue_dto.py,sha256=W90B-TaPnTTLTxJtk5rkhq46UOoKNq_1_Cu1vlbYLhs,15753
|
|
94
96
|
legit_api_client/models/customer_facing_issue_to_action_history_dto.py,sha256=D2iXGCUNSIix_Xgd_Ij7D7d9K_1cwyVYMMtP22cYqQ0,3888
|
|
95
97
|
legit_api_client/models/customer_facing_issue_to_additional_data_dto.py,sha256=KkVdverEeT1mY6Heb3tqSAJq8bI0bXCUVtaRd34Bw-8,3517
|
|
96
98
|
legit_api_client/models/customer_facing_issue_to_comments_dto.py,sha256=DzB6uoOz-UJtGW6s2Wv-daSxw0i0xTo-oZ38zbkMaE4,3790
|
|
@@ -122,7 +124,7 @@ legit_api_client/models/integration_failing_reason.py,sha256=YxHWNb7z-orCpn6oeYe
|
|
|
122
124
|
legit_api_client/models/integration_management_dto.py,sha256=YXwWxRmVEGwN-q1mQz1romha5qwW4ZEunYlei6iVyBQ,7150
|
|
123
125
|
legit_api_client/models/integration_status.py,sha256=o4-vVppNyc_uBS6zlP1naQTccpk6EX7Ug2MF278EikQ,832
|
|
124
126
|
legit_api_client/models/integration_type.py,sha256=IzPg9R287l8-0kJukduplEVoNov1iz5t3orx13JNhBg,942
|
|
125
|
-
legit_api_client/models/issue_action_type.py,sha256=
|
|
127
|
+
legit_api_client/models/issue_action_type.py,sha256=mRoK9C6jXiLTBxajALUIHwbUvl2PsSzTnzw0XSWNKuk,5228
|
|
126
128
|
legit_api_client/models/issue_assignment.py,sha256=-b6CRAvet15pPV8GK_fpsFL6o6cddjz0RPy6jysnPyg,810
|
|
127
129
|
legit_api_client/models/issue_closing_location_dto.py,sha256=ZIZHKYnk86e8TfiRIMo7cTPXUBHZA0UK9dR3yTrNNDQ,806
|
|
128
130
|
legit_api_client/models/issue_comment_dto.py,sha256=Fo-HqIR6J9l5VIqwSR8ojhERTfco2KOM0tLwefr4tfs,3839
|
|
@@ -149,6 +151,7 @@ legit_api_client/models/legit_score_requirement_group_type.py,sha256=Lny3a8XYF27
|
|
|
149
151
|
legit_api_client/models/legit_score_requirement_type.py,sha256=waaqlFv6-7DCLJ4R7-W18M2lM_qp5vyBG3nISty6HSg,2384
|
|
150
152
|
legit_api_client/models/list_sort_direction.py,sha256=36agl-rizKtrDMjHf47wzSMiyVeVsWHyjwhpKR90280,778
|
|
151
153
|
legit_api_client/models/manual_check_dto.py,sha256=5zsSJ2lPOAYIcnLvHJPV4HtcQKI-sRC1j0vdLvN4CyM,2963
|
|
154
|
+
legit_api_client/models/model_reputation.py,sha256=Xli2-J8w2mQVGFLRQluSgFiDLb4BrYHyrBliQS4uq0I,788
|
|
152
155
|
legit_api_client/models/origin_type.py,sha256=LliudkvdHkuJyUwg4qpeDCkrM-QwfahL0ekAc6cF1PE,1371
|
|
153
156
|
legit_api_client/models/package_source.py,sha256=IOhl-jV3PgQXrDv2vMDcjutyjEVJMVi7CTyZ9G7n3_w,758
|
|
154
157
|
legit_api_client/models/package_type.py,sha256=9fg2RmWbgWhLCvforzmnU2e-9G7BOLpn6kJxh-Oddl0,1170
|
|
@@ -165,7 +168,7 @@ legit_api_client/models/patch_security_champion_id_dto.py,sha256=Lr65QeEat1Jzv5O
|
|
|
165
168
|
legit_api_client/models/permission_meta_type.py,sha256=64PoK7YbaLAU7hJZF7qGGjwMBcxklC1ZUEvmZ2MyWiM,805
|
|
166
169
|
legit_api_client/models/policy_dto.py,sha256=-MhBgOyTHyVJMXabtebh_wh1XErIlweA4gRwEkgIv9g,7064
|
|
167
170
|
legit_api_client/models/problem_details.py,sha256=i3GtidBVbXMCpVAUcn1SYWZTVzi0utXCLqMkwrLtROg,4500
|
|
168
|
-
legit_api_client/models/product_connection_type.py,sha256=
|
|
171
|
+
legit_api_client/models/product_connection_type.py,sha256=Jdo92SQnjk_9D_rN142KMGbLRSdyQf1kQzQJlkqO8NU,1734
|
|
169
172
|
legit_api_client/models/product_tree_node_dto.py,sha256=dp5Kq22iVXYjZfX7SFwbOZtUBaIAmEkTeHkcgSJmnuI,3986
|
|
170
173
|
legit_api_client/models/product_unit_asset_dto.py,sha256=n7yjcpUwH7fG-0dHA6hfpeH4NfygHH_AfXL0k-6cemI,3734
|
|
171
174
|
legit_api_client/models/product_unit_dto.py,sha256=8iIN_f9LcF69L7Ohc7UPO-qRZ-fdng2Fun96obqRBmY,9445
|
|
@@ -176,12 +179,14 @@ legit_api_client/models/product_unit_name_dto.py,sha256=VjVxN-BlyG_ki-PB05sz7q9M
|
|
|
176
179
|
legit_api_client/models/product_unit_type.py,sha256=pypSeYTKM9TkuFmkLm-aHCaKTDWH5WZ26JnKdSVvKQk,914
|
|
177
180
|
legit_api_client/models/programming_language.py,sha256=DM_lfSwVgsCEOly6yn3wcE7ETPJ4h-JZkBQQS32Tch0,1350
|
|
178
181
|
legit_api_client/models/repositories_to_containers_operation_dto.py,sha256=PzNKcI9EfIzEjJWxe5FkWeE6Pf3iHnTB5r0gH8txtyw,3734
|
|
182
|
+
legit_api_client/models/repository_automatic_business_impact_factor.py,sha256=rePWxXvt9XHHh_fdBW0mYGaYx7grjz_0P-_t40ZkIto,1072
|
|
183
|
+
legit_api_client/models/repository_context_field_dto.py,sha256=SHWt5dVYU0KfMwRNJzrwYLnQpIUtgVhYS1QYfOy0zYo,3492
|
|
179
184
|
legit_api_client/models/repository_control_dto.py,sha256=gZI8FoMGjUW7y1_KFpqFfRE2IJDkwFrbP1L51eE_0vE,4280
|
|
180
185
|
legit_api_client/models/repository_directory.py,sha256=NF2zHDfvf8MeH0PCjMsLMiUm3GpsKJJGS3BKrJ70uKw,3151
|
|
181
|
-
legit_api_client/models/repository_dto.py,sha256=
|
|
186
|
+
legit_api_client/models/repository_dto.py,sha256=a_v_g2JsxLQ3OQ1kfWqzAfEx9JZrEWuzwuITJ-9E5H0,9356
|
|
182
187
|
legit_api_client/models/repository_group_dto.py,sha256=XIe4BIAYHWyrKyM1bJ7ghQHkAHSLthc1YYydchfRKl8,3381
|
|
183
188
|
legit_api_client/models/repository_visibility.py,sha256=2xUvIxsmwWKee8OINo5PNYAZif_i43Yu3SWBXdCq2qg,801
|
|
184
|
-
legit_api_client/models/scm_type.py,sha256=-
|
|
189
|
+
legit_api_client/models/scm_type.py,sha256=-X_GfBARFIzkhh5TPciM_yM6cuLY67cwbmajqqs46Zo,4240
|
|
185
190
|
legit_api_client/models/sdlc_asset_dto.py,sha256=uNbgb783VmQrMkotIYI8JtUKMeoZtyfyDsrqk0KinIU,5377
|
|
186
191
|
legit_api_client/models/sdlc_asset_graph_asset_dto.py,sha256=ufGlqWG69_QGicpWGIeVIWDyWm7JPBJOvp-QhrTQs58,4221
|
|
187
192
|
legit_api_client/models/sdlc_asset_graph_dto.py,sha256=eURM_sRA3TDZjVd6Vp_UjHumtgwVAOQ4kxkMfVAG4KI,4034
|
|
@@ -189,9 +194,9 @@ legit_api_client/models/sdlc_asset_graph_evidence_dto.py,sha256=1Hr4eW-Ho3oFQnlO
|
|
|
189
194
|
legit_api_client/models/sdlc_asset_graph_link_dto.py,sha256=rmFoLCNsfhPF2JDhVRrogBGHA_wpuDzDhYcNDGf226E,4229
|
|
190
195
|
legit_api_client/models/sdlc_asset_graph_link_dto_evidences.py,sha256=v9VbaZaqCC4ybrVrU96uR7DKvby2k65blR8EeboWwoM,4292
|
|
191
196
|
legit_api_client/models/sdlc_asset_meta_type.py,sha256=bpFEpe-3XJD_l0Q-QDbzRpP35uW1qshycaywMbrPCqw,1200
|
|
192
|
-
legit_api_client/models/sdlc_asset_type.py,sha256=
|
|
197
|
+
legit_api_client/models/sdlc_asset_type.py,sha256=GU2xw3YVTRgCZNCxvtipNO_EK76ZcRBHybN0HfM9jOo,4652
|
|
193
198
|
legit_api_client/models/secret_issue_validity_status.py,sha256=bQep4aVRfc-nqrYunzUkCSTFnL_vjojvt8dKV7tQYmo,1008
|
|
194
|
-
legit_api_client/models/secrets_data_dto.py,sha256=
|
|
199
|
+
legit_api_client/models/secrets_data_dto.py,sha256=m3kjVVD4YKhdrCVwRvJuVbrs-FEdzyQbUz8Q4c0z-HI,4899
|
|
195
200
|
legit_api_client/models/severity.py,sha256=9EWzcMpoR05-DNp19iEfCxFxHJJqlYjRksVzzzoq47g,775
|
|
196
201
|
legit_api_client/models/snoozed_type.py,sha256=CkGMSlP_bGbMiqhO9ir5mqwBr1ziZVVOknr8NCkwKCc,778
|
|
197
202
|
legit_api_client/models/source_dto.py,sha256=l3Hb17WQlEbD2kP--Oj9Q8I71d39Qni3Yx0G1iFsRns,3318
|
|
@@ -209,7 +214,7 @@ legit_api_client/models/workspace_group_tree_node_dto.py,sha256=zV5vmSc0bjqkH7hS
|
|
|
209
214
|
legit_api_client/models/workspace_hierarchy_dto.py,sha256=qU9eTOHNh3d-XeOM6CbrkTLEwSX0cdjJkbVb03GHS_Y,4522
|
|
210
215
|
legit_api_client/models/workspace_tree_node_dto.py,sha256=TlM1PPVbuGDQKlgl3Ht_EEj8lJLMqTdVE3_k8QFJldE,3527
|
|
211
216
|
legit_api_client/models/workspace_type.py,sha256=d-Dy1JkWLAZgZgTHMTaF01QT2Cv1Eexg6HqcKqPEOjs,756
|
|
212
|
-
legit_api_client-1.1.
|
|
213
|
-
legit_api_client-1.1.
|
|
214
|
-
legit_api_client-1.1.
|
|
215
|
-
legit_api_client-1.1.
|
|
217
|
+
legit_api_client-1.1.4586.dist-info/METADATA,sha256=8oc_kFZCM41iZ-MfwGkvac_bjrYDaXTeCz9BnQrb7kY,33203
|
|
218
|
+
legit_api_client-1.1.4586.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
219
|
+
legit_api_client-1.1.4586.dist-info/top_level.txt,sha256=3k94tIhdKXTBXkGPCBDQSOnARVo5IwVYlyIfQ18xaDM,17
|
|
220
|
+
legit_api_client-1.1.4586.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|