vapi_client/models/
server_message_end_of_call_report.rs

1/*
2 * Vapi API
3 *
4 * Voice AI for developers.
5 *
6 * The version of the OpenAPI document: 1.0
7 * 
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct ServerMessageEndOfCallReport {
16    #[serde(rename = "phoneNumber", skip_serializing_if = "Option::is_none")]
17    pub phone_number: Option<Box<models::ServerMessageAssistantRequestPhoneNumber>>,
18    /// This is the type of the message. \"end-of-call-report\" is sent when the call ends and post-processing is complete.
19    #[serde(rename = "type")]
20    pub r#type: Type,
21    /// This is the reason the call ended. This can also be found at `call.endedReason` on GET /call/:id.
22    #[serde(rename = "endedReason")]
23    pub ended_reason: EndedReason,
24    /// This is the cost of the call in USD. This can also be found at `call.cost` on GET /call/:id.
25    #[serde(rename = "cost", skip_serializing_if = "Option::is_none")]
26    pub cost: Option<f64>,
27    /// These are the costs of individual components of the call in USD. This can also be found at `call.costs` on GET /call/:id.
28    #[serde(rename = "costs", skip_serializing_if = "Option::is_none")]
29    pub costs: Option<Vec<models::CallCostsInner>>,
30    /// This is the ISO-8601 formatted timestamp of when the message was sent.
31    #[serde(rename = "timestamp", skip_serializing_if = "Option::is_none")]
32    pub timestamp: Option<String>,
33    /// These are the artifacts from the call. This can also be found at `call.artifact` on GET /call/:id.
34    #[serde(rename = "artifact")]
35    pub artifact: Box<models::Artifact>,
36    /// This is the assistant that is currently active. This is provided for convenience.  This matches one of the following: - `call.assistant`, - `call.assistantId`, - `call.squad[n].assistant`, - `call.squad[n].assistantId`, - `call.squadId->[n].assistant`, - `call.squadId->[n].assistantId`.
37    #[serde(rename = "assistant", skip_serializing_if = "Option::is_none")]
38    pub assistant: Option<Box<models::CreateAssistantDto>>,
39    /// This is the customer associated with the call.  This matches one of the following: - `call.customer`, - `call.customerId`.
40    #[serde(rename = "customer", skip_serializing_if = "Option::is_none")]
41    pub customer: Option<Box<models::CreateCustomerDto>>,
42    /// This is the call object.  This matches what was returned in POST /call.  Note: This might get stale during the call. To get the latest call object, especially after the call is ended, use GET /call/:id.
43    #[serde(rename = "call", skip_serializing_if = "Option::is_none")]
44    pub call: Option<Box<models::Call>>,
45    /// This is the analysis of the call. This can also be found at `call.analysis` on GET /call/:id.
46    #[serde(rename = "analysis")]
47    pub analysis: Box<models::Analysis>,
48    /// This is the ISO 8601 date-time string of when the call started. This can also be found at `call.startedAt` on GET /call/:id.
49    #[serde(rename = "startedAt", skip_serializing_if = "Option::is_none")]
50    pub started_at: Option<String>,
51    /// This is the ISO 8601 date-time string of when the call ended. This can also be found at `call.endedAt` on GET /call/:id.
52    #[serde(rename = "endedAt", skip_serializing_if = "Option::is_none")]
53    pub ended_at: Option<String>,
54}
55
56impl ServerMessageEndOfCallReport {
57    pub fn new(r#type: Type, ended_reason: EndedReason, artifact: models::Artifact, analysis: models::Analysis) -> ServerMessageEndOfCallReport {
58        ServerMessageEndOfCallReport {
59            phone_number: None,
60            r#type,
61            ended_reason,
62            cost: None,
63            costs: None,
64            timestamp: None,
65            artifact: Box::new(artifact),
66            assistant: None,
67            customer: None,
68            call: None,
69            analysis: Box::new(analysis),
70            started_at: None,
71            ended_at: None,
72        }
73    }
74}
75/// This is the type of the message. \"end-of-call-report\" is sent when the call ends and post-processing is complete.
76#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
77pub enum Type {
78    #[serde(rename = "end-of-call-report")]
79    EndOfCallReport,
80}
81
82impl Default for Type {
83    fn default() -> Type {
84        Self::EndOfCallReport
85    }
86}
87/// This is the reason the call ended. This can also be found at `call.endedReason` on GET /call/:id.
88#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
89pub enum EndedReason {
90    #[serde(rename = "assistant-not-valid")]
91    AssistantNotValid,
92    #[serde(rename = "assistant-not-provided")]
93    AssistantNotProvided,
94    #[serde(rename = "call-start-error-neither-assistant-nor-server-set")]
95    CallStartErrorNeitherAssistantNorServerSet,
96    #[serde(rename = "assistant-request-failed")]
97    AssistantRequestFailed,
98    #[serde(rename = "assistant-request-returned-error")]
99    AssistantRequestReturnedError,
100    #[serde(rename = "assistant-request-returned-unspeakable-error")]
101    AssistantRequestReturnedUnspeakableError,
102    #[serde(rename = "assistant-request-returned-invalid-assistant")]
103    AssistantRequestReturnedInvalidAssistant,
104    #[serde(rename = "assistant-request-returned-no-assistant")]
105    AssistantRequestReturnedNoAssistant,
106    #[serde(rename = "assistant-request-returned-forwarding-phone-number")]
107    AssistantRequestReturnedForwardingPhoneNumber,
108    #[serde(rename = "assistant-ended-call")]
109    AssistantEndedCall,
110    #[serde(rename = "assistant-said-end-call-phrase")]
111    AssistantSaidEndCallPhrase,
112    #[serde(rename = "assistant-ended-call-with-hangup-task")]
113    AssistantEndedCallWithHangupTask,
114    #[serde(rename = "assistant-forwarded-call")]
115    AssistantForwardedCall,
116    #[serde(rename = "assistant-join-timed-out")]
117    AssistantJoinTimedOut,
118    #[serde(rename = "customer-busy")]
119    CustomerBusy,
120    #[serde(rename = "customer-ended-call")]
121    CustomerEndedCall,
122    #[serde(rename = "customer-did-not-answer")]
123    CustomerDidNotAnswer,
124    #[serde(rename = "customer-did-not-give-microphone-permission")]
125    CustomerDidNotGiveMicrophonePermission,
126    #[serde(rename = "assistant-said-message-with-end-call-enabled")]
127    AssistantSaidMessageWithEndCallEnabled,
128    #[serde(rename = "exceeded-max-duration")]
129    ExceededMaxDuration,
130    #[serde(rename = "manually-canceled")]
131    ManuallyCanceled,
132    #[serde(rename = "phone-call-provider-closed-websocket")]
133    PhoneCallProviderClosedWebsocket,
134    #[serde(rename = "db-error")]
135    DbError,
136    #[serde(rename = "assistant-not-found")]
137    AssistantNotFound,
138    #[serde(rename = "license-check-failed")]
139    LicenseCheckFailed,
140    #[serde(rename = "pipeline-error-openai-voice-failed")]
141    PipelineErrorOpenaiVoiceFailed,
142    #[serde(rename = "pipeline-error-cartesia-voice-failed")]
143    PipelineErrorCartesiaVoiceFailed,
144    #[serde(rename = "pipeline-error-deepgram-voice-failed")]
145    PipelineErrorDeepgramVoiceFailed,
146    #[serde(rename = "pipeline-error-eleven-labs-voice-failed")]
147    PipelineErrorElevenLabsVoiceFailed,
148    #[serde(rename = "pipeline-error-playht-voice-failed")]
149    PipelineErrorPlayhtVoiceFailed,
150    #[serde(rename = "pipeline-error-lmnt-voice-failed")]
151    PipelineErrorLmntVoiceFailed,
152    #[serde(rename = "pipeline-error-azure-voice-failed")]
153    PipelineErrorAzureVoiceFailed,
154    #[serde(rename = "pipeline-error-rime-ai-voice-failed")]
155    PipelineErrorRimeAiVoiceFailed,
156    #[serde(rename = "pipeline-error-neets-voice-failed")]
157    PipelineErrorNeetsVoiceFailed,
158    #[serde(rename = "pipeline-error-smallest-ai-voice-failed")]
159    PipelineErrorSmallestAiVoiceFailed,
160    #[serde(rename = "pipeline-error-neuphonic-voice-failed")]
161    PipelineErrorNeuphonicVoiceFailed,
162    #[serde(rename = "pipeline-error-hume-voice-failed")]
163    PipelineErrorHumeVoiceFailed,
164    #[serde(rename = "pipeline-error-deepgram-transcriber-failed")]
165    PipelineErrorDeepgramTranscriberFailed,
166    #[serde(rename = "pipeline-error-gladia-transcriber-failed")]
167    PipelineErrorGladiaTranscriberFailed,
168    #[serde(rename = "pipeline-error-speechmatics-transcriber-failed")]
169    PipelineErrorSpeechmaticsTranscriberFailed,
170    #[serde(rename = "pipeline-error-assembly-ai-transcriber-failed")]
171    PipelineErrorAssemblyAiTranscriberFailed,
172    #[serde(rename = "pipeline-error-talkscriber-transcriber-failed")]
173    PipelineErrorTalkscriberTranscriberFailed,
174    #[serde(rename = "pipeline-error-azure-speech-transcriber-failed")]
175    PipelineErrorAzureSpeechTranscriberFailed,
176    #[serde(rename = "pipeline-error-vapi-llm-failed")]
177    PipelineErrorVapiLlmFailed,
178    #[serde(rename = "pipeline-error-vapi-400-bad-request-validation-failed")]
179    PipelineErrorVapi400BadRequestValidationFailed,
180    #[serde(rename = "pipeline-error-vapi-401-unauthorized")]
181    PipelineErrorVapi401Unauthorized,
182    #[serde(rename = "pipeline-error-vapi-403-model-access-denied")]
183    PipelineErrorVapi403ModelAccessDenied,
184    #[serde(rename = "pipeline-error-vapi-429-exceeded-quota")]
185    PipelineErrorVapi429ExceededQuota,
186    #[serde(rename = "pipeline-error-vapi-500-server-error")]
187    PipelineErrorVapi500ServerError,
188    #[serde(rename = "pipeline-no-available-model")]
189    PipelineNoAvailableModel,
190    #[serde(rename = "worker-shutdown")]
191    WorkerShutdown,
192    #[serde(rename = "unknown-error")]
193    UnknownError,
194    #[serde(rename = "vonage-disconnected")]
195    VonageDisconnected,
196    #[serde(rename = "vonage-failed-to-connect-call")]
197    VonageFailedToConnectCall,
198    #[serde(rename = "vonage-completed")]
199    VonageCompleted,
200    #[serde(rename = "phone-call-provider-bypass-enabled-but-no-call-received")]
201    PhoneCallProviderBypassEnabledButNoCallReceived,
202    #[serde(rename = "vapifault-phone-call-worker-setup-socket-error")]
203    VapifaultPhoneCallWorkerSetupSocketError,
204    #[serde(rename = "vapifault-phone-call-worker-worker-setup-socket-timeout")]
205    VapifaultPhoneCallWorkerWorkerSetupSocketTimeout,
206    #[serde(rename = "vapifault-phone-call-worker-could-not-find-call")]
207    VapifaultPhoneCallWorkerCouldNotFindCall,
208    #[serde(rename = "vapifault-transport-never-connected")]
209    VapifaultTransportNeverConnected,
210    #[serde(rename = "vapifault-web-call-worker-setup-failed")]
211    VapifaultWebCallWorkerSetupFailed,
212    #[serde(rename = "vapifault-transport-connected-but-call-not-active")]
213    VapifaultTransportConnectedButCallNotActive,
214    #[serde(rename = "vapifault-call-started-but-connection-to-transport-missing")]
215    VapifaultCallStartedButConnectionToTransportMissing,
216    #[serde(rename = "pipeline-error-openai-llm-failed")]
217    PipelineErrorOpenaiLlmFailed,
218    #[serde(rename = "pipeline-error-azure-openai-llm-failed")]
219    PipelineErrorAzureOpenaiLlmFailed,
220    #[serde(rename = "pipeline-error-groq-llm-failed")]
221    PipelineErrorGroqLlmFailed,
222    #[serde(rename = "pipeline-error-google-llm-failed")]
223    PipelineErrorGoogleLlmFailed,
224    #[serde(rename = "pipeline-error-xai-llm-failed")]
225    PipelineErrorXaiLlmFailed,
226    #[serde(rename = "pipeline-error-mistral-llm-failed")]
227    PipelineErrorMistralLlmFailed,
228    #[serde(rename = "pipeline-error-inflection-ai-llm-failed")]
229    PipelineErrorInflectionAiLlmFailed,
230    #[serde(rename = "pipeline-error-cerebras-llm-failed")]
231    PipelineErrorCerebrasLlmFailed,
232    #[serde(rename = "pipeline-error-deep-seek-llm-failed")]
233    PipelineErrorDeepSeekLlmFailed,
234    #[serde(rename = "pipeline-error-openai-400-bad-request-validation-failed")]
235    PipelineErrorOpenai400BadRequestValidationFailed,
236    #[serde(rename = "pipeline-error-openai-401-unauthorized")]
237    PipelineErrorOpenai401Unauthorized,
238    #[serde(rename = "pipeline-error-openai-403-model-access-denied")]
239    PipelineErrorOpenai403ModelAccessDenied,
240    #[serde(rename = "pipeline-error-openai-429-exceeded-quota")]
241    PipelineErrorOpenai429ExceededQuota,
242    #[serde(rename = "pipeline-error-openai-500-server-error")]
243    PipelineErrorOpenai500ServerError,
244    #[serde(rename = "pipeline-error-google-400-bad-request-validation-failed")]
245    PipelineErrorGoogle400BadRequestValidationFailed,
246    #[serde(rename = "pipeline-error-google-401-unauthorized")]
247    PipelineErrorGoogle401Unauthorized,
248    #[serde(rename = "pipeline-error-google-403-model-access-denied")]
249    PipelineErrorGoogle403ModelAccessDenied,
250    #[serde(rename = "pipeline-error-google-429-exceeded-quota")]
251    PipelineErrorGoogle429ExceededQuota,
252    #[serde(rename = "pipeline-error-google-500-server-error")]
253    PipelineErrorGoogle500ServerError,
254    #[serde(rename = "pipeline-error-xai-400-bad-request-validation-failed")]
255    PipelineErrorXai400BadRequestValidationFailed,
256    #[serde(rename = "pipeline-error-xai-401-unauthorized")]
257    PipelineErrorXai401Unauthorized,
258    #[serde(rename = "pipeline-error-xai-403-model-access-denied")]
259    PipelineErrorXai403ModelAccessDenied,
260    #[serde(rename = "pipeline-error-xai-429-exceeded-quota")]
261    PipelineErrorXai429ExceededQuota,
262    #[serde(rename = "pipeline-error-xai-500-server-error")]
263    PipelineErrorXai500ServerError,
264    #[serde(rename = "pipeline-error-mistral-400-bad-request-validation-failed")]
265    PipelineErrorMistral400BadRequestValidationFailed,
266    #[serde(rename = "pipeline-error-mistral-401-unauthorized")]
267    PipelineErrorMistral401Unauthorized,
268    #[serde(rename = "pipeline-error-mistral-403-model-access-denied")]
269    PipelineErrorMistral403ModelAccessDenied,
270    #[serde(rename = "pipeline-error-mistral-429-exceeded-quota")]
271    PipelineErrorMistral429ExceededQuota,
272    #[serde(rename = "pipeline-error-mistral-500-server-error")]
273    PipelineErrorMistral500ServerError,
274    #[serde(rename = "pipeline-error-inflection-ai-400-bad-request-validation-failed")]
275    PipelineErrorInflectionAi400BadRequestValidationFailed,
276    #[serde(rename = "pipeline-error-inflection-ai-401-unauthorized")]
277    PipelineErrorInflectionAi401Unauthorized,
278    #[serde(rename = "pipeline-error-inflection-ai-403-model-access-denied")]
279    PipelineErrorInflectionAi403ModelAccessDenied,
280    #[serde(rename = "pipeline-error-inflection-ai-429-exceeded-quota")]
281    PipelineErrorInflectionAi429ExceededQuota,
282    #[serde(rename = "pipeline-error-inflection-ai-500-server-error")]
283    PipelineErrorInflectionAi500ServerError,
284    #[serde(rename = "pipeline-error-deep-seek-400-bad-request-validation-failed")]
285    PipelineErrorDeepSeek400BadRequestValidationFailed,
286    #[serde(rename = "pipeline-error-deep-seek-401-unauthorized")]
287    PipelineErrorDeepSeek401Unauthorized,
288    #[serde(rename = "pipeline-error-deep-seek-403-model-access-denied")]
289    PipelineErrorDeepSeek403ModelAccessDenied,
290    #[serde(rename = "pipeline-error-deep-seek-429-exceeded-quota")]
291    PipelineErrorDeepSeek429ExceededQuota,
292    #[serde(rename = "pipeline-error-deep-seek-500-server-error")]
293    PipelineErrorDeepSeek500ServerError,
294    #[serde(rename = "pipeline-error-azure-openai-400-bad-request-validation-failed")]
295    PipelineErrorAzureOpenai400BadRequestValidationFailed,
296    #[serde(rename = "pipeline-error-azure-openai-401-unauthorized")]
297    PipelineErrorAzureOpenai401Unauthorized,
298    #[serde(rename = "pipeline-error-azure-openai-403-model-access-denied")]
299    PipelineErrorAzureOpenai403ModelAccessDenied,
300    #[serde(rename = "pipeline-error-azure-openai-429-exceeded-quota")]
301    PipelineErrorAzureOpenai429ExceededQuota,
302    #[serde(rename = "pipeline-error-azure-openai-500-server-error")]
303    PipelineErrorAzureOpenai500ServerError,
304    #[serde(rename = "pipeline-error-groq-400-bad-request-validation-failed")]
305    PipelineErrorGroq400BadRequestValidationFailed,
306    #[serde(rename = "pipeline-error-groq-401-unauthorized")]
307    PipelineErrorGroq401Unauthorized,
308    #[serde(rename = "pipeline-error-groq-403-model-access-denied")]
309    PipelineErrorGroq403ModelAccessDenied,
310    #[serde(rename = "pipeline-error-groq-429-exceeded-quota")]
311    PipelineErrorGroq429ExceededQuota,
312    #[serde(rename = "pipeline-error-groq-500-server-error")]
313    PipelineErrorGroq500ServerError,
314    #[serde(rename = "pipeline-error-cerebras-400-bad-request-validation-failed")]
315    PipelineErrorCerebras400BadRequestValidationFailed,
316    #[serde(rename = "pipeline-error-cerebras-401-unauthorized")]
317    PipelineErrorCerebras401Unauthorized,
318    #[serde(rename = "pipeline-error-cerebras-403-model-access-denied")]
319    PipelineErrorCerebras403ModelAccessDenied,
320    #[serde(rename = "pipeline-error-cerebras-429-exceeded-quota")]
321    PipelineErrorCerebras429ExceededQuota,
322    #[serde(rename = "pipeline-error-cerebras-500-server-error")]
323    PipelineErrorCerebras500ServerError,
324    #[serde(rename = "pipeline-error-anthropic-400-bad-request-validation-failed")]
325    PipelineErrorAnthropic400BadRequestValidationFailed,
326    #[serde(rename = "pipeline-error-anthropic-401-unauthorized")]
327    PipelineErrorAnthropic401Unauthorized,
328    #[serde(rename = "pipeline-error-anthropic-403-model-access-denied")]
329    PipelineErrorAnthropic403ModelAccessDenied,
330    #[serde(rename = "pipeline-error-anthropic-429-exceeded-quota")]
331    PipelineErrorAnthropic429ExceededQuota,
332    #[serde(rename = "pipeline-error-anthropic-500-server-error")]
333    PipelineErrorAnthropic500ServerError,
334    #[serde(rename = "pipeline-error-anthropic-llm-failed")]
335    PipelineErrorAnthropicLlmFailed,
336    #[serde(rename = "pipeline-error-together-ai-400-bad-request-validation-failed")]
337    PipelineErrorTogetherAi400BadRequestValidationFailed,
338    #[serde(rename = "pipeline-error-together-ai-401-unauthorized")]
339    PipelineErrorTogetherAi401Unauthorized,
340    #[serde(rename = "pipeline-error-together-ai-403-model-access-denied")]
341    PipelineErrorTogetherAi403ModelAccessDenied,
342    #[serde(rename = "pipeline-error-together-ai-429-exceeded-quota")]
343    PipelineErrorTogetherAi429ExceededQuota,
344    #[serde(rename = "pipeline-error-together-ai-500-server-error")]
345    PipelineErrorTogetherAi500ServerError,
346    #[serde(rename = "pipeline-error-together-ai-llm-failed")]
347    PipelineErrorTogetherAiLlmFailed,
348    #[serde(rename = "pipeline-error-anyscale-400-bad-request-validation-failed")]
349    PipelineErrorAnyscale400BadRequestValidationFailed,
350    #[serde(rename = "pipeline-error-anyscale-401-unauthorized")]
351    PipelineErrorAnyscale401Unauthorized,
352    #[serde(rename = "pipeline-error-anyscale-403-model-access-denied")]
353    PipelineErrorAnyscale403ModelAccessDenied,
354    #[serde(rename = "pipeline-error-anyscale-429-exceeded-quota")]
355    PipelineErrorAnyscale429ExceededQuota,
356    #[serde(rename = "pipeline-error-anyscale-500-server-error")]
357    PipelineErrorAnyscale500ServerError,
358    #[serde(rename = "pipeline-error-anyscale-llm-failed")]
359    PipelineErrorAnyscaleLlmFailed,
360    #[serde(rename = "pipeline-error-openrouter-400-bad-request-validation-failed")]
361    PipelineErrorOpenrouter400BadRequestValidationFailed,
362    #[serde(rename = "pipeline-error-openrouter-401-unauthorized")]
363    PipelineErrorOpenrouter401Unauthorized,
364    #[serde(rename = "pipeline-error-openrouter-403-model-access-denied")]
365    PipelineErrorOpenrouter403ModelAccessDenied,
366    #[serde(rename = "pipeline-error-openrouter-429-exceeded-quota")]
367    PipelineErrorOpenrouter429ExceededQuota,
368    #[serde(rename = "pipeline-error-openrouter-500-server-error")]
369    PipelineErrorOpenrouter500ServerError,
370    #[serde(rename = "pipeline-error-openrouter-llm-failed")]
371    PipelineErrorOpenrouterLlmFailed,
372    #[serde(rename = "pipeline-error-perplexity-ai-400-bad-request-validation-failed")]
373    PipelineErrorPerplexityAi400BadRequestValidationFailed,
374    #[serde(rename = "pipeline-error-perplexity-ai-401-unauthorized")]
375    PipelineErrorPerplexityAi401Unauthorized,
376    #[serde(rename = "pipeline-error-perplexity-ai-403-model-access-denied")]
377    PipelineErrorPerplexityAi403ModelAccessDenied,
378    #[serde(rename = "pipeline-error-perplexity-ai-429-exceeded-quota")]
379    PipelineErrorPerplexityAi429ExceededQuota,
380    #[serde(rename = "pipeline-error-perplexity-ai-500-server-error")]
381    PipelineErrorPerplexityAi500ServerError,
382    #[serde(rename = "pipeline-error-perplexity-ai-llm-failed")]
383    PipelineErrorPerplexityAiLlmFailed,
384    #[serde(rename = "pipeline-error-deepinfra-400-bad-request-validation-failed")]
385    PipelineErrorDeepinfra400BadRequestValidationFailed,
386    #[serde(rename = "pipeline-error-deepinfra-401-unauthorized")]
387    PipelineErrorDeepinfra401Unauthorized,
388    #[serde(rename = "pipeline-error-deepinfra-403-model-access-denied")]
389    PipelineErrorDeepinfra403ModelAccessDenied,
390    #[serde(rename = "pipeline-error-deepinfra-429-exceeded-quota")]
391    PipelineErrorDeepinfra429ExceededQuota,
392    #[serde(rename = "pipeline-error-deepinfra-500-server-error")]
393    PipelineErrorDeepinfra500ServerError,
394    #[serde(rename = "pipeline-error-deepinfra-llm-failed")]
395    PipelineErrorDeepinfraLlmFailed,
396    #[serde(rename = "pipeline-error-runpod-400-bad-request-validation-failed")]
397    PipelineErrorRunpod400BadRequestValidationFailed,
398    #[serde(rename = "pipeline-error-runpod-401-unauthorized")]
399    PipelineErrorRunpod401Unauthorized,
400    #[serde(rename = "pipeline-error-runpod-403-model-access-denied")]
401    PipelineErrorRunpod403ModelAccessDenied,
402    #[serde(rename = "pipeline-error-runpod-429-exceeded-quota")]
403    PipelineErrorRunpod429ExceededQuota,
404    #[serde(rename = "pipeline-error-runpod-500-server-error")]
405    PipelineErrorRunpod500ServerError,
406    #[serde(rename = "pipeline-error-runpod-llm-failed")]
407    PipelineErrorRunpodLlmFailed,
408    #[serde(rename = "pipeline-error-custom-llm-400-bad-request-validation-failed")]
409    PipelineErrorCustomLlm400BadRequestValidationFailed,
410    #[serde(rename = "pipeline-error-custom-llm-401-unauthorized")]
411    PipelineErrorCustomLlm401Unauthorized,
412    #[serde(rename = "pipeline-error-custom-llm-403-model-access-denied")]
413    PipelineErrorCustomLlm403ModelAccessDenied,
414    #[serde(rename = "pipeline-error-custom-llm-429-exceeded-quota")]
415    PipelineErrorCustomLlm429ExceededQuota,
416    #[serde(rename = "pipeline-error-custom-llm-500-server-error")]
417    PipelineErrorCustomLlm500ServerError,
418    #[serde(rename = "pipeline-error-custom-llm-llm-failed")]
419    PipelineErrorCustomLlmLlmFailed,
420    #[serde(rename = "pipeline-error-custom-voice-failed")]
421    PipelineErrorCustomVoiceFailed,
422    #[serde(rename = "pipeline-error-cartesia-socket-hang-up")]
423    PipelineErrorCartesiaSocketHangUp,
424    #[serde(rename = "pipeline-error-cartesia-requested-payment")]
425    PipelineErrorCartesiaRequestedPayment,
426    #[serde(rename = "pipeline-error-cartesia-500-server-error")]
427    PipelineErrorCartesia500ServerError,
428    #[serde(rename = "pipeline-error-cartesia-503-server-error")]
429    PipelineErrorCartesia503ServerError,
430    #[serde(rename = "pipeline-error-cartesia-522-server-error")]
431    PipelineErrorCartesia522ServerError,
432    #[serde(rename = "pipeline-error-eleven-labs-voice-not-found")]
433    PipelineErrorElevenLabsVoiceNotFound,
434    #[serde(rename = "pipeline-error-eleven-labs-quota-exceeded")]
435    PipelineErrorElevenLabsQuotaExceeded,
436    #[serde(rename = "pipeline-error-eleven-labs-unauthorized-access")]
437    PipelineErrorElevenLabsUnauthorizedAccess,
438    #[serde(rename = "pipeline-error-eleven-labs-unauthorized-to-access-model")]
439    PipelineErrorElevenLabsUnauthorizedToAccessModel,
440    #[serde(rename = "pipeline-error-eleven-labs-professional-voices-only-for-creator-plus")]
441    PipelineErrorElevenLabsProfessionalVoicesOnlyForCreatorPlus,
442    #[serde(rename = "pipeline-error-eleven-labs-blocked-free-plan-and-requested-upgrade")]
443    PipelineErrorElevenLabsBlockedFreePlanAndRequestedUpgrade,
444    #[serde(rename = "pipeline-error-eleven-labs-blocked-concurrent-requests-and-requested-upgrade")]
445    PipelineErrorElevenLabsBlockedConcurrentRequestsAndRequestedUpgrade,
446    #[serde(rename = "pipeline-error-eleven-labs-blocked-using-instant-voice-clone-and-requested-upgrade")]
447    PipelineErrorElevenLabsBlockedUsingInstantVoiceCloneAndRequestedUpgrade,
448    #[serde(rename = "pipeline-error-eleven-labs-system-busy-and-requested-upgrade")]
449    PipelineErrorElevenLabsSystemBusyAndRequestedUpgrade,
450    #[serde(rename = "pipeline-error-eleven-labs-voice-not-fine-tuned")]
451    PipelineErrorElevenLabsVoiceNotFineTuned,
452    #[serde(rename = "pipeline-error-eleven-labs-invalid-api-key")]
453    PipelineErrorElevenLabsInvalidApiKey,
454    #[serde(rename = "pipeline-error-eleven-labs-invalid-voice-samples")]
455    PipelineErrorElevenLabsInvalidVoiceSamples,
456    #[serde(rename = "pipeline-error-eleven-labs-voice-disabled-by-owner")]
457    PipelineErrorElevenLabsVoiceDisabledByOwner,
458    #[serde(rename = "pipeline-error-eleven-labs-blocked-account-in-probation")]
459    PipelineErrorElevenLabsBlockedAccountInProbation,
460    #[serde(rename = "pipeline-error-eleven-labs-blocked-content-against-their-policy")]
461    PipelineErrorElevenLabsBlockedContentAgainstTheirPolicy,
462    #[serde(rename = "pipeline-error-eleven-labs-missing-samples-for-voice-clone")]
463    PipelineErrorElevenLabsMissingSamplesForVoiceClone,
464    #[serde(rename = "pipeline-error-eleven-labs-voice-not-fine-tuned-and-cannot-be-used")]
465    PipelineErrorElevenLabsVoiceNotFineTunedAndCannotBeUsed,
466    #[serde(rename = "pipeline-error-eleven-labs-voice-not-allowed-for-free-users")]
467    PipelineErrorElevenLabsVoiceNotAllowedForFreeUsers,
468    #[serde(rename = "pipeline-error-eleven-labs-500-server-error")]
469    PipelineErrorElevenLabs500ServerError,
470    #[serde(rename = "pipeline-error-eleven-labs-max-character-limit-exceeded")]
471    PipelineErrorElevenLabsMaxCharacterLimitExceeded,
472    #[serde(rename = "pipeline-error-eleven-labs-blocked-voice-potentially-against-terms-of-service-and-awaiting-verification")]
473    PipelineErrorElevenLabsBlockedVoicePotentiallyAgainstTermsOfServiceAndAwaitingVerification,
474    #[serde(rename = "pipeline-error-playht-request-timed-out")]
475    PipelineErrorPlayhtRequestTimedOut,
476    #[serde(rename = "pipeline-error-playht-invalid-voice")]
477    PipelineErrorPlayhtInvalidVoice,
478    #[serde(rename = "pipeline-error-playht-unexpected-error")]
479    PipelineErrorPlayhtUnexpectedError,
480    #[serde(rename = "pipeline-error-playht-out-of-credits")]
481    PipelineErrorPlayhtOutOfCredits,
482    #[serde(rename = "pipeline-error-playht-invalid-emotion")]
483    PipelineErrorPlayhtInvalidEmotion,
484    #[serde(rename = "pipeline-error-playht-voice-must-be-a-valid-voice-manifest-uri")]
485    PipelineErrorPlayhtVoiceMustBeAValidVoiceManifestUri,
486    #[serde(rename = "pipeline-error-playht-401-unauthorized")]
487    PipelineErrorPlayht401Unauthorized,
488    #[serde(rename = "pipeline-error-playht-403-forbidden-out-of-characters")]
489    PipelineErrorPlayht403ForbiddenOutOfCharacters,
490    #[serde(rename = "pipeline-error-playht-403-forbidden-api-access-not-available")]
491    PipelineErrorPlayht403ForbiddenApiAccessNotAvailable,
492    #[serde(rename = "pipeline-error-playht-429-exceeded-quota")]
493    PipelineErrorPlayht429ExceededQuota,
494    #[serde(rename = "pipeline-error-playht-502-gateway-error")]
495    PipelineErrorPlayht502GatewayError,
496    #[serde(rename = "pipeline-error-playht-504-gateway-error")]
497    PipelineErrorPlayht504GatewayError,
498    #[serde(rename = "pipeline-error-tavus-video-failed")]
499    PipelineErrorTavusVideoFailed,
500    #[serde(rename = "pipeline-error-custom-transcriber-failed")]
501    PipelineErrorCustomTranscriberFailed,
502    #[serde(rename = "pipeline-error-11labs-transcriber-failed")]
503    PipelineError11labsTranscriberFailed,
504    #[serde(rename = "pipeline-error-deepgram-returning-403-model-access-denied")]
505    PipelineErrorDeepgramReturning403ModelAccessDenied,
506    #[serde(rename = "pipeline-error-deepgram-returning-401-invalid-credentials")]
507    PipelineErrorDeepgramReturning401InvalidCredentials,
508    #[serde(rename = "pipeline-error-deepgram-returning-404-not-found")]
509    PipelineErrorDeepgramReturning404NotFound,
510    #[serde(rename = "pipeline-error-deepgram-returning-400-no-such-model-language-tier-combination")]
511    PipelineErrorDeepgramReturning400NoSuchModelLanguageTierCombination,
512    #[serde(rename = "pipeline-error-deepgram-returning-500-invalid-json")]
513    PipelineErrorDeepgramReturning500InvalidJson,
514    #[serde(rename = "pipeline-error-deepgram-returning-502-network-error")]
515    PipelineErrorDeepgramReturning502NetworkError,
516    #[serde(rename = "pipeline-error-deepgram-returning-502-bad-gateway-ehostunreach")]
517    PipelineErrorDeepgramReturning502BadGatewayEhostunreach,
518    #[serde(rename = "pipeline-error-google-transcriber-failed")]
519    PipelineErrorGoogleTranscriberFailed,
520    #[serde(rename = "silence-timed-out")]
521    SilenceTimedOut,
522    #[serde(rename = "sip-gateway-failed-to-connect-call")]
523    SipGatewayFailedToConnectCall,
524    #[serde(rename = "twilio-failed-to-connect-call")]
525    TwilioFailedToConnectCall,
526    #[serde(rename = "twilio-reported-customer-misdialed")]
527    TwilioReportedCustomerMisdialed,
528    #[serde(rename = "vonage-rejected")]
529    VonageRejected,
530    #[serde(rename = "voicemail")]
531    Voicemail,
532}
533
534impl Default for EndedReason {
535    fn default() -> EndedReason {
536        Self::AssistantNotValid
537    }
538}
539