vapi_client/models/
tool_controller_create_request.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(tag = "type")]
17pub enum ToolControllerCreateRequest {
18    #[serde(rename = "dtmf")]
19    Dtmf(models::CreateDtmfToolDto),
20    #[serde(rename = "endCall")]
21    EndCall(models::CreateEndCallToolDto),
22    #[serde(rename = "function")]
23    Function(models::CreateFunctionToolDto),
24    #[serde(rename = "ghl")]
25    Ghl(models::CreateGhlToolDto),
26    #[serde(rename = "make")]
27    Make(models::CreateMakeToolDto),
28    #[serde(rename = "transferCall")]
29    TransferCall(models::CreateTransferCallToolDto),
30    #[serde(rename = "output")]
31    Output(models::CreateOutputToolDto),
32    #[serde(rename = "bash")]
33    Bash(models::CreateBashToolDto),
34    #[serde(rename = "computer")]
35    Computer(models::CreateComputerToolDto),
36    #[serde(rename = "textEditor")]
37    TextEditor(models::CreateTextEditorToolDto),
38    #[serde(rename = "query")]
39    Query(models::CreateQueryToolDto),
40}
41
42impl Default for ToolControllerCreateRequest {
43    fn default() -> Self {
44        Self::Dtmf(Default::default())
45    }
46}
47
48/// The sub type of tool.
49#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
50pub enum SubType {
51    #[serde(rename = "text_editor_20241022")]
52    TextEditor20241022,
53}
54
55impl Default for SubType {
56    fn default() -> SubType {
57        Self::TextEditor20241022
58    }
59}
60/// The name of the tool, fixed to 'str_replace_editor'
61#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
62pub enum Name {
63    #[serde(rename = "str_replace_editor")]
64    StrReplaceEditor,
65}
66
67impl Default for Name {
68    fn default() -> Name {
69        Self::StrReplaceEditor
70    }
71}