88
99from .._models import BaseModel
1010from .metadata import Metadata
11+ from .base_webhook_event import BaseWebhookEvent
1112
12- __all__ = ["UploadPreTransformSuccessEvent" , "Data" , "DataAITag" , "DataExtensionStatus" , "DataVersionInfo" , "Request" ]
13+ __all__ = [
14+ "UploadPreTransformSuccessEvent" ,
15+ "UploadPreTransformSuccessEventData" ,
16+ "UploadPreTransformSuccessEventDataAITag" ,
17+ "UploadPreTransformSuccessEventDataExtensionStatus" ,
18+ "UploadPreTransformSuccessEventDataVersionInfo" ,
19+ "UploadPreTransformSuccessEventRequest" ,
20+ ]
1321
1422
15- class DataAITag (BaseModel ):
23+ class UploadPreTransformSuccessEventDataAITag (BaseModel ):
1624 confidence : Optional [float ] = None
1725 """Confidence score of the tag."""
1826
@@ -27,7 +35,7 @@ class DataAITag(BaseModel):
2735 """
2836
2937
30- class DataExtensionStatus (BaseModel ):
38+ class UploadPreTransformSuccessEventDataExtensionStatus (BaseModel ):
3139 ai_auto_description : Optional [Literal ["success" , "pending" , "failed" ]] = FieldInfo (
3240 alias = "ai-auto-description" , default = None
3341 )
@@ -43,16 +51,16 @@ class DataExtensionStatus(BaseModel):
4351 remove_bg : Optional [Literal ["success" , "pending" , "failed" ]] = FieldInfo (alias = "remove-bg" , default = None )
4452
4553
46- class DataVersionInfo (BaseModel ):
54+ class UploadPreTransformSuccessEventDataVersionInfo (BaseModel ):
4755 id : Optional [str ] = None
4856 """Unique identifier of the file version."""
4957
5058 name : Optional [str ] = None
5159 """Name of the file version."""
5260
5361
54- class Data (BaseModel ):
55- ai_tags : Optional [List [DataAITag ]] = FieldInfo (alias = "AITags" , default = None )
62+ class UploadPreTransformSuccessEventData (BaseModel ):
63+ ai_tags : Optional [List [UploadPreTransformSuccessEventDataAITag ]] = FieldInfo (alias = "AITags" , default = None )
5664 """An array of tags assigned to the uploaded file by auto tagging."""
5765
5866 audio_codec : Optional [str ] = FieldInfo (alias = "audioCodec" , default = None )
@@ -95,7 +103,9 @@ class Data(BaseModel):
95103 response.
96104 """
97105
98- extension_status : Optional [DataExtensionStatus ] = FieldInfo (alias = "extensionStatus" , default = None )
106+ extension_status : Optional [UploadPreTransformSuccessEventDataExtensionStatus ] = FieldInfo (
107+ alias = "extensionStatus" , default = None
108+ )
99109 """
100110 Extension names with their processing status at the time of completion of the
101111 request. It could have one of the following status values:
@@ -167,7 +177,7 @@ class Data(BaseModel):
167177 url : Optional [str ] = None
168178 """A publicly accessible URL of the file."""
169179
170- version_info : Optional [DataVersionInfo ] = FieldInfo (alias = "versionInfo" , default = None )
180+ version_info : Optional [UploadPreTransformSuccessEventDataVersionInfo ] = FieldInfo (alias = "versionInfo" , default = None )
171181 """An object containing the file or file version's `id` (versionId) and `name`."""
172182
173183 video_codec : Optional [str ] = FieldInfo (alias = "videoCodec" , default = None )
@@ -177,24 +187,21 @@ class Data(BaseModel):
177187 """Width of the image in pixels (Only for Images)"""
178188
179189
180- class Request (BaseModel ):
190+ class UploadPreTransformSuccessEventRequest (BaseModel ):
181191 transformation : str
182192 """The requested pre-transformation string."""
183193
184194 x_request_id : str
185195 """Unique identifier for the originating request."""
186196
187197
188- class UploadPreTransformSuccessEvent (BaseModel ):
189- id : str
190- """Unique identifier for the event."""
191-
198+ class UploadPreTransformSuccessEvent (BaseWebhookEvent ):
192199 created_at : datetime
193200 """Timestamp of when the event occurred in ISO8601 format."""
194201
195- data : Data
202+ data : UploadPreTransformSuccessEventData
196203 """Object containing details of a successful upload."""
197204
198- request : Request
205+ request : UploadPreTransformSuccessEventRequest
199206
200- type : Literal ["upload.pre-transform.success" ]
207+ type : Literal ["upload.pre-transform.success" ] # type: ignore
0 commit comments