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