vapi_client/models/
workflow_nodes_inner.rs

1/*
2 * Vapi API
3 *
4 * API for building voice assistants
5 *
6 * The version of the OpenAPI document: 1.0
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11use serde::{Deserialize, Serialize};
12use utoipa::ToSchema;
13
14
15use crate::models;
16
17#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, ToSchema)]
18#[serde(untagged)]
19pub enum WorkflowNodesInner {
20    Say(models::Say),
21    Gather(models::Gather),
22    ApiRequest(models::ApiRequest),
23    Hangup(models::Hangup),
24    Transfer(models::Transfer),
25}
26
27impl Default for WorkflowNodesInner {
28    fn default() -> Self {
29        Self::Say(Default::default())
30    }
31}
32///
33#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize, ToSchema)]
34pub enum Type {
35    #[serde(rename = "say")]
36    Say,
37    #[serde(rename = "gather")]
38    Gather,
39    #[serde(rename = "apiRequest")]
40    ApiRequest,
41    #[serde(rename = "hangup")]
42    Hangup,
43    #[serde(rename = "transfer")]
44    Transfer,
45}
46
47impl Default for Type {
48    fn default() -> Type {
49        Self::Say
50    }
51}
52///
53#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize, ToSchema)]
54pub enum Method {
55    #[serde(rename = "POST")]
56    Post,
57    #[serde(rename = "GET")]
58    Get,
59}
60
61impl Default for Method {
62    fn default() -> Method {
63        Self::Post
64    }
65}
66/// This is the mode of the Api Request. We only support BLOCKING and BACKGROUND for now.
67#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize, ToSchema)]
68pub enum Mode {
69    #[serde(rename = "blocking")]
70    Blocking,
71    #[serde(rename = "background")]
72    Background,
73}
74
75impl Default for Mode {
76    fn default() -> Mode {
77        Self::Blocking
78    }
79}