@@ -49,8 +49,23 @@ class OperatingPoint(str, Enum):
4949class NotificationContents (str , Enum ):
5050 """Notification content options."""
5151
52- SUMMARY = "summary"
53- DETAILED = "detailed"
52+ DATA = "data"
53+ TEXT = "text"
54+ JOBINFO = "jobinfo"
55+ TRANSCRIPT = "transcript"
56+ TRANSCRIPT_JSON_V2 = "transcript.json-v2"
57+ TRANSCRIPT_TXT = "transcript.txt"
58+ TRANSCRIPT_SRT = "transcript.srt"
59+ ALIGNMENT = "alignment"
60+ ALIGNMENT_WORD_START_AND_END = "alignment.word_start_and_end"
61+ ALIGNMENT_ONE_PER_LINE = "alignment.one_per_line"
62+
63+
64+ class NotificationMethod (str , Enum ):
65+ "Notification method."
66+
67+ POST = "post"
68+ PUT = "put"
5469
5570
5671class FormatType (str , Enum ):
@@ -138,8 +153,9 @@ class NotificationConfig:
138153 """Configuration for job completion notifications."""
139154
140155 url : str
141- contents : Optional [NotificationContents ] = None
142- auth_headers : Optional [dict [str , str ]] = None
156+ contents : Optional [list [NotificationContents ]] = None
157+ auth_headers : Optional [list [str ]] = None
158+ method : Optional [str ] = None
143159
144160 def to_dict (self ) -> dict [str , Any ]:
145161 """Convert to dictionary, excluding None values."""
@@ -267,7 +283,7 @@ class JobConfig:
267283 fetch_data : Optional [FetchData ] = None
268284 transcription_config : Optional [TranscriptionConfig ] = None
269285 alignment_config : Optional [AlignmentConfig ] = None
270- notification_config : Optional [NotificationConfig ] = None
286+ notification_config : Optional [list [ NotificationConfig ] ] = None
271287 tracking : Optional [TrackingConfig ] = None
272288 translation_config : Optional [TranslationConfig ] = None
273289 language_identification_config : Optional [LanguageIdentificationConfig ] = None
@@ -288,7 +304,7 @@ def to_dict(self) -> dict[str, Any]:
288304 if self .alignment_config :
289305 config ["alignment_config" ] = self .alignment_config .to_dict ()
290306 if self .notification_config :
291- config ["notification_config" ] = self . notification_config . to_dict ()
307+ config ["notification_config" ] = [ nc . to_dict () for nc in self . notification_config ]
292308 if self .tracking :
293309 config ["tracking" ] = self .tracking .to_dict ()
294310 if self .translation_config :
@@ -326,7 +342,7 @@ def from_dict(cls, data: dict[str, Any]) -> JobConfig:
326342 notification_config = None
327343 if "notification_config" in data :
328344 nc_data = data ["notification_config" ]
329- notification_config = NotificationConfig (** nc_data )
345+ notification_config = [ NotificationConfig (** nc ) for nc in nc_data ]
330346
331347 tracking = None
332348 if "tracking" in data :
0 commit comments