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