hiddenlayer-sdk 2.0.10__py3-none-any.whl → 3.0.1__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.
Files changed (204) hide show
  1. hiddenlayer/__init__.py +109 -114
  2. hiddenlayer/_base_client.py +1995 -0
  3. hiddenlayer/_client.py +761 -0
  4. hiddenlayer/_compat.py +219 -0
  5. hiddenlayer/_constants.py +14 -0
  6. hiddenlayer/_exceptions.py +108 -0
  7. hiddenlayer/_files.py +123 -0
  8. hiddenlayer/_models.py +835 -0
  9. hiddenlayer/_oauth2.py +118 -0
  10. hiddenlayer/_qs.py +150 -0
  11. hiddenlayer/_resource.py +43 -0
  12. hiddenlayer/_response.py +832 -0
  13. hiddenlayer/_streaming.py +333 -0
  14. hiddenlayer/_types.py +260 -0
  15. hiddenlayer/_utils/__init__.py +64 -0
  16. hiddenlayer/_utils/_compat.py +45 -0
  17. hiddenlayer/_utils/_datetime_parse.py +136 -0
  18. hiddenlayer/_utils/_logs.py +25 -0
  19. hiddenlayer/_utils/_proxy.py +65 -0
  20. hiddenlayer/_utils/_reflection.py +42 -0
  21. hiddenlayer/_utils/_resources_proxy.py +24 -0
  22. hiddenlayer/_utils/_streams.py +12 -0
  23. hiddenlayer/_utils/_sync.py +86 -0
  24. hiddenlayer/_utils/_transform.py +457 -0
  25. hiddenlayer/_utils/_typing.py +156 -0
  26. hiddenlayer/_utils/_utils.py +421 -0
  27. hiddenlayer/_version.py +4 -0
  28. hiddenlayer/lib/.keep +4 -0
  29. hiddenlayer/lib/__init__.py +6 -0
  30. hiddenlayer/lib/community_scan.py +174 -0
  31. hiddenlayer/lib/model_scan.py +752 -0
  32. hiddenlayer/lib/scan_utils.py +142 -0
  33. hiddenlayer/pagination.py +127 -0
  34. hiddenlayer/resources/__init__.py +75 -0
  35. hiddenlayer/resources/interactions.py +205 -0
  36. hiddenlayer/resources/models/__init__.py +33 -0
  37. hiddenlayer/resources/models/cards.py +259 -0
  38. hiddenlayer/resources/models/models.py +284 -0
  39. hiddenlayer/resources/prompt_analyzer.py +207 -0
  40. hiddenlayer/resources/scans/__init__.py +61 -0
  41. hiddenlayer/resources/scans/jobs.py +499 -0
  42. hiddenlayer/resources/scans/results.py +169 -0
  43. hiddenlayer/resources/scans/scans.py +166 -0
  44. hiddenlayer/resources/scans/upload/__init__.py +33 -0
  45. hiddenlayer/resources/scans/upload/file.py +279 -0
  46. hiddenlayer/resources/scans/upload/upload.py +340 -0
  47. hiddenlayer/resources/sensors.py +575 -0
  48. hiddenlayer/types/__init__.py +16 -0
  49. hiddenlayer/types/interaction_analyze_params.py +62 -0
  50. hiddenlayer/types/interaction_analyze_response.py +199 -0
  51. hiddenlayer/types/model_retrieve_response.py +50 -0
  52. hiddenlayer/types/models/__init__.py +6 -0
  53. hiddenlayer/types/models/card_list_params.py +65 -0
  54. hiddenlayer/types/models/card_list_response.py +50 -0
  55. hiddenlayer/types/prompt_analyzer_create_params.py +23 -0
  56. hiddenlayer/types/prompt_analyzer_create_response.py +381 -0
  57. hiddenlayer/types/scans/__init__.py +14 -0
  58. hiddenlayer/types/scans/job_list_params.py +75 -0
  59. hiddenlayer/types/scans/job_list_response.py +22 -0
  60. hiddenlayer/types/scans/job_request_params.py +49 -0
  61. hiddenlayer/types/scans/job_retrieve_params.py +16 -0
  62. hiddenlayer/types/scans/result_sarif_response.py +7 -0
  63. hiddenlayer/types/scans/scan_job.py +46 -0
  64. hiddenlayer/types/scans/scan_report.py +367 -0
  65. hiddenlayer/types/scans/upload/__init__.py +6 -0
  66. hiddenlayer/types/scans/upload/file_add_response.py +24 -0
  67. hiddenlayer/types/scans/upload/file_complete_response.py +12 -0
  68. hiddenlayer/types/scans/upload_complete_all_response.py +12 -0
  69. hiddenlayer/types/scans/upload_start_params.py +34 -0
  70. hiddenlayer/types/scans/upload_start_response.py +12 -0
  71. hiddenlayer/types/sensor_create_params.py +24 -0
  72. hiddenlayer/types/sensor_create_response.py +33 -0
  73. hiddenlayer/types/sensor_query_params.py +39 -0
  74. hiddenlayer/types/sensor_query_response.py +43 -0
  75. hiddenlayer/types/sensor_retrieve_response.py +33 -0
  76. hiddenlayer/types/sensor_update_params.py +20 -0
  77. hiddenlayer/types/sensor_update_response.py +9 -0
  78. hiddenlayer_sdk-3.0.1.dist-info/METADATA +521 -0
  79. hiddenlayer_sdk-3.0.1.dist-info/RECORD +82 -0
  80. {hiddenlayer_sdk-2.0.10.dist-info → hiddenlayer_sdk-3.0.1.dist-info}/WHEEL +1 -2
  81. {hiddenlayer_sdk-2.0.10.dist-info → hiddenlayer_sdk-3.0.1.dist-info}/licenses/LICENSE +1 -1
  82. hiddenlayer/sdk/constants.py +0 -26
  83. hiddenlayer/sdk/exceptions.py +0 -12
  84. hiddenlayer/sdk/models.py +0 -58
  85. hiddenlayer/sdk/rest/__init__.py +0 -135
  86. hiddenlayer/sdk/rest/api/__init__.py +0 -10
  87. hiddenlayer/sdk/rest/api/aidr_predictive_api.py +0 -308
  88. hiddenlayer/sdk/rest/api/health_api.py +0 -272
  89. hiddenlayer/sdk/rest/api/model_api.py +0 -559
  90. hiddenlayer/sdk/rest/api/model_supply_chain_api.py +0 -4063
  91. hiddenlayer/sdk/rest/api/readiness_api.py +0 -272
  92. hiddenlayer/sdk/rest/api/sensor_api.py +0 -1432
  93. hiddenlayer/sdk/rest/api_client.py +0 -770
  94. hiddenlayer/sdk/rest/api_response.py +0 -21
  95. hiddenlayer/sdk/rest/configuration.py +0 -445
  96. hiddenlayer/sdk/rest/exceptions.py +0 -199
  97. hiddenlayer/sdk/rest/models/__init__.py +0 -113
  98. hiddenlayer/sdk/rest/models/address.py +0 -110
  99. hiddenlayer/sdk/rest/models/artifact.py +0 -155
  100. hiddenlayer/sdk/rest/models/artifact_change.py +0 -108
  101. hiddenlayer/sdk/rest/models/artifact_content.py +0 -101
  102. hiddenlayer/sdk/rest/models/artifact_location.py +0 -109
  103. hiddenlayer/sdk/rest/models/attachment.py +0 -129
  104. hiddenlayer/sdk/rest/models/begin_multi_file_upload200_response.py +0 -87
  105. hiddenlayer/sdk/rest/models/begin_multipart_file_upload200_response.py +0 -97
  106. hiddenlayer/sdk/rest/models/begin_multipart_file_upload200_response_parts_inner.py +0 -94
  107. hiddenlayer/sdk/rest/models/code_flow.py +0 -113
  108. hiddenlayer/sdk/rest/models/configuration_override.py +0 -108
  109. hiddenlayer/sdk/rest/models/conversion.py +0 -114
  110. hiddenlayer/sdk/rest/models/create_sensor_request.py +0 -95
  111. hiddenlayer/sdk/rest/models/edge.py +0 -108
  112. hiddenlayer/sdk/rest/models/edge_traversal.py +0 -122
  113. hiddenlayer/sdk/rest/models/errors_inner.py +0 -91
  114. hiddenlayer/sdk/rest/models/exception.py +0 -113
  115. hiddenlayer/sdk/rest/models/external_properties.py +0 -273
  116. hiddenlayer/sdk/rest/models/external_property_file_reference.py +0 -102
  117. hiddenlayer/sdk/rest/models/external_property_file_references.py +0 -240
  118. hiddenlayer/sdk/rest/models/file_details_v3.py +0 -139
  119. hiddenlayer/sdk/rest/models/file_result_v3.py +0 -117
  120. hiddenlayer/sdk/rest/models/file_scan_report_v3.py +0 -132
  121. hiddenlayer/sdk/rest/models/file_scan_reports_v3.py +0 -95
  122. hiddenlayer/sdk/rest/models/fix.py +0 -113
  123. hiddenlayer/sdk/rest/models/get_condensed_model_scan_reports200_response.py +0 -102
  124. hiddenlayer/sdk/rest/models/graph.py +0 -123
  125. hiddenlayer/sdk/rest/models/graph_traversal.py +0 -97
  126. hiddenlayer/sdk/rest/models/inventory_v3.py +0 -101
  127. hiddenlayer/sdk/rest/models/invocation.py +0 -199
  128. hiddenlayer/sdk/rest/models/location.py +0 -146
  129. hiddenlayer/sdk/rest/models/location_inner.py +0 -138
  130. hiddenlayer/sdk/rest/models/location_relationship.py +0 -107
  131. hiddenlayer/sdk/rest/models/logical_location.py +0 -104
  132. hiddenlayer/sdk/rest/models/message.py +0 -92
  133. hiddenlayer/sdk/rest/models/mitre_atlas_inner.py +0 -110
  134. hiddenlayer/sdk/rest/models/model.py +0 -103
  135. hiddenlayer/sdk/rest/models/model_inventory_info.py +0 -103
  136. hiddenlayer/sdk/rest/models/model_version.py +0 -97
  137. hiddenlayer/sdk/rest/models/multi_file_upload_request_v3.py +0 -97
  138. hiddenlayer/sdk/rest/models/multiformat_message_string.py +0 -95
  139. hiddenlayer/sdk/rest/models/node.py +0 -122
  140. hiddenlayer/sdk/rest/models/notification.py +0 -157
  141. hiddenlayer/sdk/rest/models/notify_model_scan_completed200_response.py +0 -87
  142. hiddenlayer/sdk/rest/models/paged_response_with_total.py +0 -94
  143. hiddenlayer/sdk/rest/models/pagination_v3.py +0 -95
  144. hiddenlayer/sdk/rest/models/physical_location.py +0 -94
  145. hiddenlayer/sdk/rest/models/problem_details.py +0 -103
  146. hiddenlayer/sdk/rest/models/property_bag.py +0 -101
  147. hiddenlayer/sdk/rest/models/rectangle.py +0 -110
  148. hiddenlayer/sdk/rest/models/region.py +0 -127
  149. hiddenlayer/sdk/rest/models/replacement.py +0 -103
  150. hiddenlayer/sdk/rest/models/reporting_configuration.py +0 -113
  151. hiddenlayer/sdk/rest/models/reporting_descriptor.py +0 -162
  152. hiddenlayer/sdk/rest/models/reporting_descriptor_reference.py +0 -103
  153. hiddenlayer/sdk/rest/models/reporting_descriptor_relationship.py +0 -115
  154. hiddenlayer/sdk/rest/models/result.py +0 -312
  155. hiddenlayer/sdk/rest/models/result_provenance.py +0 -133
  156. hiddenlayer/sdk/rest/models/rule_details_inner.py +0 -102
  157. hiddenlayer/sdk/rest/models/run.py +0 -318
  158. hiddenlayer/sdk/rest/models/run_automation_details.py +0 -129
  159. hiddenlayer/sdk/rest/models/sarif210.py +0 -123
  160. hiddenlayer/sdk/rest/models/scan_create_request.py +0 -87
  161. hiddenlayer/sdk/rest/models/scan_detection_v3.py +0 -159
  162. hiddenlayer/sdk/rest/models/scan_detection_v31.py +0 -158
  163. hiddenlayer/sdk/rest/models/scan_header_v3.py +0 -129
  164. hiddenlayer/sdk/rest/models/scan_job.py +0 -115
  165. hiddenlayer/sdk/rest/models/scan_job_access.py +0 -97
  166. hiddenlayer/sdk/rest/models/scan_model_details_v3.py +0 -99
  167. hiddenlayer/sdk/rest/models/scan_model_details_v31.py +0 -97
  168. hiddenlayer/sdk/rest/models/scan_model_ids_v3.py +0 -89
  169. hiddenlayer/sdk/rest/models/scan_report_v3.py +0 -139
  170. hiddenlayer/sdk/rest/models/scan_results_map_v3.py +0 -105
  171. hiddenlayer/sdk/rest/models/scan_results_v3.py +0 -120
  172. hiddenlayer/sdk/rest/models/security_posture.py +0 -89
  173. hiddenlayer/sdk/rest/models/sensor.py +0 -100
  174. hiddenlayer/sdk/rest/models/sensor_query_response.py +0 -101
  175. hiddenlayer/sdk/rest/models/sensor_sor_model_card_query_response.py +0 -101
  176. hiddenlayer/sdk/rest/models/sensor_sor_model_card_response.py +0 -127
  177. hiddenlayer/sdk/rest/models/sensor_sor_query_filter.py +0 -108
  178. hiddenlayer/sdk/rest/models/sensor_sor_query_request.py +0 -109
  179. hiddenlayer/sdk/rest/models/special_locations.py +0 -97
  180. hiddenlayer/sdk/rest/models/stack.py +0 -113
  181. hiddenlayer/sdk/rest/models/stack_frame.py +0 -104
  182. hiddenlayer/sdk/rest/models/submission_response.py +0 -95
  183. hiddenlayer/sdk/rest/models/submission_v2.py +0 -109
  184. hiddenlayer/sdk/rest/models/suppression.py +0 -133
  185. hiddenlayer/sdk/rest/models/thread_flow.py +0 -144
  186. hiddenlayer/sdk/rest/models/thread_flow_location.py +0 -166
  187. hiddenlayer/sdk/rest/models/tool.py +0 -107
  188. hiddenlayer/sdk/rest/models/tool_component.py +0 -251
  189. hiddenlayer/sdk/rest/models/tool_component_reference.py +0 -108
  190. hiddenlayer/sdk/rest/models/translation_metadata.py +0 -110
  191. hiddenlayer/sdk/rest/models/validation_error_model.py +0 -99
  192. hiddenlayer/sdk/rest/models/version_control_details.py +0 -108
  193. hiddenlayer/sdk/rest/models/web_request.py +0 -112
  194. hiddenlayer/sdk/rest/models/web_response.py +0 -112
  195. hiddenlayer/sdk/rest/rest.py +0 -257
  196. hiddenlayer/sdk/services/__init__.py +0 -0
  197. hiddenlayer/sdk/services/aidr_predictive.py +0 -130
  198. hiddenlayer/sdk/services/model_scan.py +0 -505
  199. hiddenlayer/sdk/utils.py +0 -92
  200. hiddenlayer/sdk/version.py +0 -1
  201. hiddenlayer_sdk-2.0.10.dist-info/METADATA +0 -368
  202. hiddenlayer_sdk-2.0.10.dist-info/RECORD +0 -126
  203. hiddenlayer_sdk-2.0.10.dist-info/top_level.txt +0 -1
  204. /hiddenlayer/{sdk/__init__.py → py.typed} +0 -0
@@ -0,0 +1,259 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import List
6
+ from typing_extensions import Literal
7
+
8
+ import httpx
9
+
10
+ from ..._types import Body, Omit, Query, Headers, NotGiven, omit, not_given
11
+ from ..._utils import maybe_transform, strip_not_given
12
+ from ..._compat import cached_property
13
+ from ..._resource import SyncAPIResource, AsyncAPIResource
14
+ from ..._response import (
15
+ to_raw_response_wrapper,
16
+ to_streamed_response_wrapper,
17
+ async_to_raw_response_wrapper,
18
+ async_to_streamed_response_wrapper,
19
+ )
20
+ from ...pagination import SyncOffsetPage, AsyncOffsetPage
21
+ from ..._base_client import AsyncPaginator, make_request_options
22
+ from ...types.models import card_list_params
23
+ from ...types.models.card_list_response import CardListResponse
24
+
25
+ __all__ = ["CardsResource", "AsyncCardsResource"]
26
+
27
+
28
+ class CardsResource(SyncAPIResource):
29
+ @cached_property
30
+ def with_raw_response(self) -> CardsResourceWithRawResponse:
31
+ """
32
+ This property can be used as a prefix for any HTTP method call to return
33
+ the raw response object instead of the parsed content.
34
+
35
+ For more information, see https://www.github.com/hiddenlayerai/hiddenlayer-sdk-python#accessing-raw-response-data-eg-headers
36
+ """
37
+ return CardsResourceWithRawResponse(self)
38
+
39
+ @cached_property
40
+ def with_streaming_response(self) -> CardsResourceWithStreamingResponse:
41
+ """
42
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
43
+
44
+ For more information, see https://www.github.com/hiddenlayerai/hiddenlayer-sdk-python#with_streaming_response
45
+ """
46
+ return CardsResourceWithStreamingResponse(self)
47
+
48
+ def list(
49
+ self,
50
+ *,
51
+ aidr_severity: List[Literal["SAFE", "UNSAFE", "SUSPICIOUS"]] | Omit = omit,
52
+ aidr_status: Literal["ENABLED", "DISABLED", "ANY"] | Omit = omit,
53
+ limit: int | Omit = omit,
54
+ model_created: card_list_params.ModelCreated | Omit = omit,
55
+ model_name: card_list_params.ModelName | Omit = omit,
56
+ modscan_severity: List[Literal["SAFE", "UNSAFE", "SUSPICIOUS", "UNKNOWN", "ERROR"]] | Omit = omit,
57
+ modscan_status: Literal["ENABLED", "DISABLED", "ANY"] | Omit = omit,
58
+ offset: int | Omit = omit,
59
+ provider: List[Literal["AZURE", "ADHOC"]] | Omit = omit,
60
+ sort: str | Omit = omit,
61
+ source: card_list_params.Source | Omit = omit,
62
+ x_correlation_id: str | Omit = omit,
63
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
64
+ # The extra values given here take precedence over values defined on the client or passed to this method.
65
+ extra_headers: Headers | None = None,
66
+ extra_query: Query | None = None,
67
+ extra_body: Body | None = None,
68
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
69
+ ) -> SyncOffsetPage[CardListResponse]:
70
+ """
71
+ List Model Cards
72
+
73
+ Args:
74
+ aidr_status: filter by aidr enabled
75
+
76
+ limit: Limit the number of items returned
77
+
78
+ model_created: match on models created between dates
79
+
80
+ model_name: substring match on model name
81
+
82
+ offset: Begin returning the results from this offset
83
+
84
+ sort: allow sorting by model name or created at timestamp, ascending (+) or the
85
+ default descending (-)
86
+
87
+ source: substring and full match on model source
88
+
89
+ extra_headers: Send extra headers
90
+
91
+ extra_query: Add additional query parameters to the request
92
+
93
+ extra_body: Add additional JSON properties to the request
94
+
95
+ timeout: Override the client-level default timeout for this request, in seconds
96
+ """
97
+ extra_headers = {**strip_not_given({"X-Correlation-Id": x_correlation_id}), **(extra_headers or {})}
98
+ return self._get_api_list(
99
+ "/models/v4/cards",
100
+ page=SyncOffsetPage[CardListResponse],
101
+ options=make_request_options(
102
+ extra_headers=extra_headers,
103
+ extra_query=extra_query,
104
+ extra_body=extra_body,
105
+ timeout=timeout,
106
+ query=maybe_transform(
107
+ {
108
+ "aidr_severity": aidr_severity,
109
+ "aidr_status": aidr_status,
110
+ "limit": limit,
111
+ "model_created": model_created,
112
+ "model_name": model_name,
113
+ "modscan_severity": modscan_severity,
114
+ "modscan_status": modscan_status,
115
+ "offset": offset,
116
+ "provider": provider,
117
+ "sort": sort,
118
+ "source": source,
119
+ },
120
+ card_list_params.CardListParams,
121
+ ),
122
+ ),
123
+ model=CardListResponse,
124
+ )
125
+
126
+
127
+ class AsyncCardsResource(AsyncAPIResource):
128
+ @cached_property
129
+ def with_raw_response(self) -> AsyncCardsResourceWithRawResponse:
130
+ """
131
+ This property can be used as a prefix for any HTTP method call to return
132
+ the raw response object instead of the parsed content.
133
+
134
+ For more information, see https://www.github.com/hiddenlayerai/hiddenlayer-sdk-python#accessing-raw-response-data-eg-headers
135
+ """
136
+ return AsyncCardsResourceWithRawResponse(self)
137
+
138
+ @cached_property
139
+ def with_streaming_response(self) -> AsyncCardsResourceWithStreamingResponse:
140
+ """
141
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
142
+
143
+ For more information, see https://www.github.com/hiddenlayerai/hiddenlayer-sdk-python#with_streaming_response
144
+ """
145
+ return AsyncCardsResourceWithStreamingResponse(self)
146
+
147
+ def list(
148
+ self,
149
+ *,
150
+ aidr_severity: List[Literal["SAFE", "UNSAFE", "SUSPICIOUS"]] | Omit = omit,
151
+ aidr_status: Literal["ENABLED", "DISABLED", "ANY"] | Omit = omit,
152
+ limit: int | Omit = omit,
153
+ model_created: card_list_params.ModelCreated | Omit = omit,
154
+ model_name: card_list_params.ModelName | Omit = omit,
155
+ modscan_severity: List[Literal["SAFE", "UNSAFE", "SUSPICIOUS", "UNKNOWN", "ERROR"]] | Omit = omit,
156
+ modscan_status: Literal["ENABLED", "DISABLED", "ANY"] | Omit = omit,
157
+ offset: int | Omit = omit,
158
+ provider: List[Literal["AZURE", "ADHOC"]] | Omit = omit,
159
+ sort: str | Omit = omit,
160
+ source: card_list_params.Source | Omit = omit,
161
+ x_correlation_id: str | Omit = omit,
162
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
163
+ # The extra values given here take precedence over values defined on the client or passed to this method.
164
+ extra_headers: Headers | None = None,
165
+ extra_query: Query | None = None,
166
+ extra_body: Body | None = None,
167
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
168
+ ) -> AsyncPaginator[CardListResponse, AsyncOffsetPage[CardListResponse]]:
169
+ """
170
+ List Model Cards
171
+
172
+ Args:
173
+ aidr_status: filter by aidr enabled
174
+
175
+ limit: Limit the number of items returned
176
+
177
+ model_created: match on models created between dates
178
+
179
+ model_name: substring match on model name
180
+
181
+ offset: Begin returning the results from this offset
182
+
183
+ sort: allow sorting by model name or created at timestamp, ascending (+) or the
184
+ default descending (-)
185
+
186
+ source: substring and full match on model source
187
+
188
+ extra_headers: Send extra headers
189
+
190
+ extra_query: Add additional query parameters to the request
191
+
192
+ extra_body: Add additional JSON properties to the request
193
+
194
+ timeout: Override the client-level default timeout for this request, in seconds
195
+ """
196
+ extra_headers = {**strip_not_given({"X-Correlation-Id": x_correlation_id}), **(extra_headers or {})}
197
+ return self._get_api_list(
198
+ "/models/v4/cards",
199
+ page=AsyncOffsetPage[CardListResponse],
200
+ options=make_request_options(
201
+ extra_headers=extra_headers,
202
+ extra_query=extra_query,
203
+ extra_body=extra_body,
204
+ timeout=timeout,
205
+ query=maybe_transform(
206
+ {
207
+ "aidr_severity": aidr_severity,
208
+ "aidr_status": aidr_status,
209
+ "limit": limit,
210
+ "model_created": model_created,
211
+ "model_name": model_name,
212
+ "modscan_severity": modscan_severity,
213
+ "modscan_status": modscan_status,
214
+ "offset": offset,
215
+ "provider": provider,
216
+ "sort": sort,
217
+ "source": source,
218
+ },
219
+ card_list_params.CardListParams,
220
+ ),
221
+ ),
222
+ model=CardListResponse,
223
+ )
224
+
225
+
226
+ class CardsResourceWithRawResponse:
227
+ def __init__(self, cards: CardsResource) -> None:
228
+ self._cards = cards
229
+
230
+ self.list = to_raw_response_wrapper(
231
+ cards.list,
232
+ )
233
+
234
+
235
+ class AsyncCardsResourceWithRawResponse:
236
+ def __init__(self, cards: AsyncCardsResource) -> None:
237
+ self._cards = cards
238
+
239
+ self.list = async_to_raw_response_wrapper(
240
+ cards.list,
241
+ )
242
+
243
+
244
+ class CardsResourceWithStreamingResponse:
245
+ def __init__(self, cards: CardsResource) -> None:
246
+ self._cards = cards
247
+
248
+ self.list = to_streamed_response_wrapper(
249
+ cards.list,
250
+ )
251
+
252
+
253
+ class AsyncCardsResourceWithStreamingResponse:
254
+ def __init__(self, cards: AsyncCardsResource) -> None:
255
+ self._cards = cards
256
+
257
+ self.list = async_to_streamed_response_wrapper(
258
+ cards.list,
259
+ )
@@ -0,0 +1,284 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ import httpx
6
+
7
+ from .cards import (
8
+ CardsResource,
9
+ AsyncCardsResource,
10
+ CardsResourceWithRawResponse,
11
+ AsyncCardsResourceWithRawResponse,
12
+ CardsResourceWithStreamingResponse,
13
+ AsyncCardsResourceWithStreamingResponse,
14
+ )
15
+ from ..._types import Body, Omit, Query, Headers, NoneType, NotGiven, omit, not_given
16
+ from ..._utils import strip_not_given
17
+ from ..._compat import cached_property
18
+ from ..._resource import SyncAPIResource, AsyncAPIResource
19
+ from ..._response import (
20
+ to_raw_response_wrapper,
21
+ to_streamed_response_wrapper,
22
+ async_to_raw_response_wrapper,
23
+ async_to_streamed_response_wrapper,
24
+ )
25
+ from ..._base_client import make_request_options
26
+ from ...types.model_retrieve_response import ModelRetrieveResponse
27
+
28
+ __all__ = ["ModelsResource", "AsyncModelsResource"]
29
+
30
+
31
+ class ModelsResource(SyncAPIResource):
32
+ @cached_property
33
+ def cards(self) -> CardsResource:
34
+ return CardsResource(self._client)
35
+
36
+ @cached_property
37
+ def with_raw_response(self) -> ModelsResourceWithRawResponse:
38
+ """
39
+ This property can be used as a prefix for any HTTP method call to return
40
+ the raw response object instead of the parsed content.
41
+
42
+ For more information, see https://www.github.com/hiddenlayerai/hiddenlayer-sdk-python#accessing-raw-response-data-eg-headers
43
+ """
44
+ return ModelsResourceWithRawResponse(self)
45
+
46
+ @cached_property
47
+ def with_streaming_response(self) -> ModelsResourceWithStreamingResponse:
48
+ """
49
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
50
+
51
+ For more information, see https://www.github.com/hiddenlayerai/hiddenlayer-sdk-python#with_streaming_response
52
+ """
53
+ return ModelsResourceWithStreamingResponse(self)
54
+
55
+ def retrieve(
56
+ self,
57
+ model_id: str,
58
+ *,
59
+ x_correlation_id: str | Omit = omit,
60
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
61
+ # The extra values given here take precedence over values defined on the client or passed to this method.
62
+ extra_headers: Headers | None = None,
63
+ extra_query: Query | None = None,
64
+ extra_body: Body | None = None,
65
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
66
+ ) -> ModelRetrieveResponse:
67
+ """
68
+ Get Model
69
+
70
+ Args:
71
+ extra_headers: Send extra headers
72
+
73
+ extra_query: Add additional query parameters to the request
74
+
75
+ extra_body: Add additional JSON properties to the request
76
+
77
+ timeout: Override the client-level default timeout for this request, in seconds
78
+ """
79
+ if not model_id:
80
+ raise ValueError(f"Expected a non-empty value for `model_id` but received {model_id!r}")
81
+ extra_headers = {**strip_not_given({"X-Correlation-Id": x_correlation_id}), **(extra_headers or {})}
82
+ return self._get(
83
+ f"/api/v2/models/{model_id}",
84
+ options=make_request_options(
85
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
86
+ ),
87
+ cast_to=ModelRetrieveResponse,
88
+ )
89
+
90
+ def delete(
91
+ self,
92
+ model_id: str,
93
+ *,
94
+ x_correlation_id: str | Omit = omit,
95
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
96
+ # The extra values given here take precedence over values defined on the client or passed to this method.
97
+ extra_headers: Headers | None = None,
98
+ extra_query: Query | None = None,
99
+ extra_body: Body | None = None,
100
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
101
+ ) -> None:
102
+ """
103
+ Delete Adhoc Model
104
+
105
+ Args:
106
+ extra_headers: Send extra headers
107
+
108
+ extra_query: Add additional query parameters to the request
109
+
110
+ extra_body: Add additional JSON properties to the request
111
+
112
+ timeout: Override the client-level default timeout for this request, in seconds
113
+ """
114
+ if not model_id:
115
+ raise ValueError(f"Expected a non-empty value for `model_id` but received {model_id!r}")
116
+ extra_headers = {"Accept": "*/*", **(extra_headers or {})}
117
+ extra_headers = {**strip_not_given({"X-Correlation-Id": x_correlation_id}), **(extra_headers or {})}
118
+ return self._delete(
119
+ f"/api/v2/models/{model_id}",
120
+ options=make_request_options(
121
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
122
+ ),
123
+ cast_to=NoneType,
124
+ )
125
+
126
+
127
+ class AsyncModelsResource(AsyncAPIResource):
128
+ @cached_property
129
+ def cards(self) -> AsyncCardsResource:
130
+ return AsyncCardsResource(self._client)
131
+
132
+ @cached_property
133
+ def with_raw_response(self) -> AsyncModelsResourceWithRawResponse:
134
+ """
135
+ This property can be used as a prefix for any HTTP method call to return
136
+ the raw response object instead of the parsed content.
137
+
138
+ For more information, see https://www.github.com/hiddenlayerai/hiddenlayer-sdk-python#accessing-raw-response-data-eg-headers
139
+ """
140
+ return AsyncModelsResourceWithRawResponse(self)
141
+
142
+ @cached_property
143
+ def with_streaming_response(self) -> AsyncModelsResourceWithStreamingResponse:
144
+ """
145
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
146
+
147
+ For more information, see https://www.github.com/hiddenlayerai/hiddenlayer-sdk-python#with_streaming_response
148
+ """
149
+ return AsyncModelsResourceWithStreamingResponse(self)
150
+
151
+ async def retrieve(
152
+ self,
153
+ model_id: str,
154
+ *,
155
+ x_correlation_id: str | Omit = omit,
156
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
157
+ # The extra values given here take precedence over values defined on the client or passed to this method.
158
+ extra_headers: Headers | None = None,
159
+ extra_query: Query | None = None,
160
+ extra_body: Body | None = None,
161
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
162
+ ) -> ModelRetrieveResponse:
163
+ """
164
+ Get Model
165
+
166
+ Args:
167
+ extra_headers: Send extra headers
168
+
169
+ extra_query: Add additional query parameters to the request
170
+
171
+ extra_body: Add additional JSON properties to the request
172
+
173
+ timeout: Override the client-level default timeout for this request, in seconds
174
+ """
175
+ if not model_id:
176
+ raise ValueError(f"Expected a non-empty value for `model_id` but received {model_id!r}")
177
+ extra_headers = {**strip_not_given({"X-Correlation-Id": x_correlation_id}), **(extra_headers or {})}
178
+ return await self._get(
179
+ f"/api/v2/models/{model_id}",
180
+ options=make_request_options(
181
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
182
+ ),
183
+ cast_to=ModelRetrieveResponse,
184
+ )
185
+
186
+ async def delete(
187
+ self,
188
+ model_id: str,
189
+ *,
190
+ x_correlation_id: str | Omit = omit,
191
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
192
+ # The extra values given here take precedence over values defined on the client or passed to this method.
193
+ extra_headers: Headers | None = None,
194
+ extra_query: Query | None = None,
195
+ extra_body: Body | None = None,
196
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
197
+ ) -> None:
198
+ """
199
+ Delete Adhoc Model
200
+
201
+ Args:
202
+ extra_headers: Send extra headers
203
+
204
+ extra_query: Add additional query parameters to the request
205
+
206
+ extra_body: Add additional JSON properties to the request
207
+
208
+ timeout: Override the client-level default timeout for this request, in seconds
209
+ """
210
+ if not model_id:
211
+ raise ValueError(f"Expected a non-empty value for `model_id` but received {model_id!r}")
212
+ extra_headers = {"Accept": "*/*", **(extra_headers or {})}
213
+ extra_headers = {**strip_not_given({"X-Correlation-Id": x_correlation_id}), **(extra_headers or {})}
214
+ return await self._delete(
215
+ f"/api/v2/models/{model_id}",
216
+ options=make_request_options(
217
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
218
+ ),
219
+ cast_to=NoneType,
220
+ )
221
+
222
+
223
+ class ModelsResourceWithRawResponse:
224
+ def __init__(self, models: ModelsResource) -> None:
225
+ self._models = models
226
+
227
+ self.retrieve = to_raw_response_wrapper(
228
+ models.retrieve,
229
+ )
230
+ self.delete = to_raw_response_wrapper(
231
+ models.delete,
232
+ )
233
+
234
+ @cached_property
235
+ def cards(self) -> CardsResourceWithRawResponse:
236
+ return CardsResourceWithRawResponse(self._models.cards)
237
+
238
+
239
+ class AsyncModelsResourceWithRawResponse:
240
+ def __init__(self, models: AsyncModelsResource) -> None:
241
+ self._models = models
242
+
243
+ self.retrieve = async_to_raw_response_wrapper(
244
+ models.retrieve,
245
+ )
246
+ self.delete = async_to_raw_response_wrapper(
247
+ models.delete,
248
+ )
249
+
250
+ @cached_property
251
+ def cards(self) -> AsyncCardsResourceWithRawResponse:
252
+ return AsyncCardsResourceWithRawResponse(self._models.cards)
253
+
254
+
255
+ class ModelsResourceWithStreamingResponse:
256
+ def __init__(self, models: ModelsResource) -> None:
257
+ self._models = models
258
+
259
+ self.retrieve = to_streamed_response_wrapper(
260
+ models.retrieve,
261
+ )
262
+ self.delete = to_streamed_response_wrapper(
263
+ models.delete,
264
+ )
265
+
266
+ @cached_property
267
+ def cards(self) -> CardsResourceWithStreamingResponse:
268
+ return CardsResourceWithStreamingResponse(self._models.cards)
269
+
270
+
271
+ class AsyncModelsResourceWithStreamingResponse:
272
+ def __init__(self, models: AsyncModelsResource) -> None:
273
+ self._models = models
274
+
275
+ self.retrieve = async_to_streamed_response_wrapper(
276
+ models.retrieve,
277
+ )
278
+ self.delete = async_to_streamed_response_wrapper(
279
+ models.delete,
280
+ )
281
+
282
+ @cached_property
283
+ def cards(self) -> AsyncCardsResourceWithStreamingResponse:
284
+ return AsyncCardsResourceWithStreamingResponse(self._models.cards)