2
2
3
3
from __future__ import annotations
4
4
5
- from typing import Type , cast
5
+ from typing import List , Type , cast
6
6
7
7
import httpx
8
8
9
9
from ...._types import NOT_GIVEN , Body , Query , Headers , NotGiven
10
+ from ...._utils import (
11
+ maybe_transform ,
12
+ async_maybe_transform ,
13
+ )
10
14
from ...._compat import cached_property
11
15
from ...._resource import SyncAPIResource , AsyncAPIResource
12
16
from ...._response import (
17
21
)
18
22
from ...._wrappers import ResultWrapper
19
23
from ...._base_client import make_request_options
24
+ from ....types .cloudforce_one .threat_events import event_tag_create_params
25
+ from ....types .cloudforce_one .threat_events .event_tag_create_response import EventTagCreateResponse
20
26
from ....types .cloudforce_one .threat_events .event_tag_delete_response import EventTagDeleteResponse
21
27
22
28
__all__ = ["EventTagsResource" , "AsyncEventTagsResource" ]
@@ -42,6 +48,50 @@ def with_streaming_response(self) -> EventTagsResourceWithStreamingResponse:
42
48
"""
43
49
return EventTagsResourceWithStreamingResponse (self )
44
50
51
+ def create (
52
+ self ,
53
+ event_id : str ,
54
+ * ,
55
+ account_id : float ,
56
+ tags : List [str ],
57
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
58
+ # The extra values given here take precedence over values defined on the client or passed to this method.
59
+ extra_headers : Headers | None = None ,
60
+ extra_query : Query | None = None ,
61
+ extra_body : Body | None = None ,
62
+ timeout : float | httpx .Timeout | None | NotGiven = NOT_GIVEN ,
63
+ ) -> EventTagCreateResponse :
64
+ """
65
+ Adds a tag to an event
66
+
67
+ Args:
68
+ account_id: Account ID
69
+
70
+ event_id: Event UUID
71
+
72
+ extra_headers: Send extra headers
73
+
74
+ extra_query: Add additional query parameters to the request
75
+
76
+ extra_body: Add additional JSON properties to the request
77
+
78
+ timeout: Override the client-level default timeout for this request, in seconds
79
+ """
80
+ if not event_id :
81
+ raise ValueError (f"Expected a non-empty value for `event_id` but received { event_id !r} " )
82
+ return self ._post (
83
+ f"/accounts/{ account_id } /cloudforce-one/events/event_tag/{ event_id } /create" ,
84
+ body = maybe_transform ({"tags" : tags }, event_tag_create_params .EventTagCreateParams ),
85
+ options = make_request_options (
86
+ extra_headers = extra_headers ,
87
+ extra_query = extra_query ,
88
+ extra_body = extra_body ,
89
+ timeout = timeout ,
90
+ post_parser = ResultWrapper [EventTagCreateResponse ]._unwrapper ,
91
+ ),
92
+ cast_to = cast (Type [EventTagCreateResponse ], ResultWrapper [EventTagCreateResponse ]),
93
+ )
94
+
45
95
def delete (
46
96
self ,
47
97
event_id : str ,
@@ -105,6 +155,50 @@ def with_streaming_response(self) -> AsyncEventTagsResourceWithStreamingResponse
105
155
"""
106
156
return AsyncEventTagsResourceWithStreamingResponse (self )
107
157
158
+ async def create (
159
+ self ,
160
+ event_id : str ,
161
+ * ,
162
+ account_id : float ,
163
+ tags : List [str ],
164
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
165
+ # The extra values given here take precedence over values defined on the client or passed to this method.
166
+ extra_headers : Headers | None = None ,
167
+ extra_query : Query | None = None ,
168
+ extra_body : Body | None = None ,
169
+ timeout : float | httpx .Timeout | None | NotGiven = NOT_GIVEN ,
170
+ ) -> EventTagCreateResponse :
171
+ """
172
+ Adds a tag to an event
173
+
174
+ Args:
175
+ account_id: Account ID
176
+
177
+ event_id: Event UUID
178
+
179
+ extra_headers: Send extra headers
180
+
181
+ extra_query: Add additional query parameters to the request
182
+
183
+ extra_body: Add additional JSON properties to the request
184
+
185
+ timeout: Override the client-level default timeout for this request, in seconds
186
+ """
187
+ if not event_id :
188
+ raise ValueError (f"Expected a non-empty value for `event_id` but received { event_id !r} " )
189
+ return await self ._post (
190
+ f"/accounts/{ account_id } /cloudforce-one/events/event_tag/{ event_id } /create" ,
191
+ body = await async_maybe_transform ({"tags" : tags }, event_tag_create_params .EventTagCreateParams ),
192
+ options = make_request_options (
193
+ extra_headers = extra_headers ,
194
+ extra_query = extra_query ,
195
+ extra_body = extra_body ,
196
+ timeout = timeout ,
197
+ post_parser = ResultWrapper [EventTagCreateResponse ]._unwrapper ,
198
+ ),
199
+ cast_to = cast (Type [EventTagCreateResponse ], ResultWrapper [EventTagCreateResponse ]),
200
+ )
201
+
108
202
async def delete (
109
203
self ,
110
204
event_id : str ,
@@ -152,6 +246,9 @@ class EventTagsResourceWithRawResponse:
152
246
def __init__ (self , event_tags : EventTagsResource ) -> None :
153
247
self ._event_tags = event_tags
154
248
249
+ self .create = to_raw_response_wrapper (
250
+ event_tags .create ,
251
+ )
155
252
self .delete = to_raw_response_wrapper (
156
253
event_tags .delete ,
157
254
)
@@ -161,6 +258,9 @@ class AsyncEventTagsResourceWithRawResponse:
161
258
def __init__ (self , event_tags : AsyncEventTagsResource ) -> None :
162
259
self ._event_tags = event_tags
163
260
261
+ self .create = async_to_raw_response_wrapper (
262
+ event_tags .create ,
263
+ )
164
264
self .delete = async_to_raw_response_wrapper (
165
265
event_tags .delete ,
166
266
)
@@ -170,6 +270,9 @@ class EventTagsResourceWithStreamingResponse:
170
270
def __init__ (self , event_tags : EventTagsResource ) -> None :
171
271
self ._event_tags = event_tags
172
272
273
+ self .create = to_streamed_response_wrapper (
274
+ event_tags .create ,
275
+ )
173
276
self .delete = to_streamed_response_wrapper (
174
277
event_tags .delete ,
175
278
)
@@ -179,6 +282,9 @@ class AsyncEventTagsResourceWithStreamingResponse:
179
282
def __init__ (self , event_tags : AsyncEventTagsResource ) -> None :
180
283
self ._event_tags = event_tags
181
284
285
+ self .create = async_to_streamed_response_wrapper (
286
+ event_tags .create ,
287
+ )
182
288
self .delete = async_to_streamed_response_wrapper (
183
289
event_tags .delete ,
184
290
)
0 commit comments