vapi_client/models/
tool_node_tool.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/// ToolNodeTool : This is the tool to call. To use an existing tool, send `toolId` instead.
15/// This is the tool to call. To use an existing tool, send `toolId` instead.
16#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
17#[serde(untagged)]
18pub enum ToolNodeTool {
19    CreateApiRequestToolDto(models::CreateApiRequestToolDto),
20    CreateBashToolDto(models::CreateBashToolDto),
21    CreateComputerToolDto(models::CreateComputerToolDto),
22    CreateDtmfToolDto(models::CreateDtmfToolDto),
23    CreateEndCallToolDto(models::CreateEndCallToolDto),
24    CreateFunctionToolDto(models::CreateFunctionToolDto),
25    CreateGoHighLevelCalendarAvailabilityToolDto(
26        models::CreateGoHighLevelCalendarAvailabilityToolDto,
27    ),
28    CreateGoHighLevelCalendarEventCreateToolDto(
29        models::CreateGoHighLevelCalendarEventCreateToolDto,
30    ),
31    CreateGoHighLevelContactCreateToolDto(models::CreateGoHighLevelContactCreateToolDto),
32    CreateGoHighLevelContactGetToolDto(models::CreateGoHighLevelContactGetToolDto),
33    CreateGoogleCalendarCheckAvailabilityToolDto(
34        models::CreateGoogleCalendarCheckAvailabilityToolDto,
35    ),
36    CreateGoogleCalendarCreateEventToolDto(models::CreateGoogleCalendarCreateEventToolDto),
37    CreateGoogleSheetsRowAppendToolDto(models::CreateGoogleSheetsRowAppendToolDto),
38    CreateMcpToolDto(models::CreateMcpToolDto),
39    CreateQueryToolDto(models::CreateQueryToolDto),
40    CreateSlackSendMessageToolDto(models::CreateSlackSendMessageToolDto),
41    CreateSmsToolDto(models::CreateSmsToolDto),
42    CreateTextEditorToolDto(models::CreateTextEditorToolDto),
43    CreateTransferCallToolDto(models::CreateTransferCallToolDto),
44}
45
46impl Default for ToolNodeTool {
47    fn default() -> Self {
48        Self::CreateApiRequestToolDto(Default::default())
49    }
50}
51/// The type of tool. \"apiRequest\" for API request tool.
52#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
53pub enum TypeTrue {
54    #[serde(rename = "apiRequest")]
55    ApiRequest,
56    #[serde(rename = "bash")]
57    Bash,
58    #[serde(rename = "computer")]
59    Computer,
60    #[serde(rename = "dtmf")]
61    Dtmf,
62    #[serde(rename = "endCall")]
63    EndCall,
64    #[serde(rename = "function")]
65    Function,
66    #[serde(rename = "gohighlevel.calendar.availability.check")]
67    GohighlevelPeriodCalendarPeriodAvailabilityPeriodCheck,
68    #[serde(rename = "gohighlevel.calendar.event.create")]
69    GohighlevelPeriodCalendarPeriodEventPeriodCreate,
70    #[serde(rename = "gohighlevel.contact.create")]
71    GohighlevelPeriodContactPeriodCreate,
72    #[serde(rename = "gohighlevel.contact.get")]
73    GohighlevelPeriodContactPeriodGet,
74    #[serde(rename = "google.calendar.availability.check")]
75    GooglePeriodCalendarPeriodAvailabilityPeriodCheck,
76    #[serde(rename = "google.calendar.event.create")]
77    GooglePeriodCalendarPeriodEventPeriodCreate,
78    #[serde(rename = "google.sheets.row.append")]
79    GooglePeriodSheetsPeriodRowPeriodAppend,
80    #[serde(rename = "mcp")]
81    Mcp,
82    #[serde(rename = "query")]
83    Query,
84    #[serde(rename = "slack.message.send")]
85    SlackPeriodMessagePeriodSend,
86    #[serde(rename = "sms")]
87    Sms,
88    #[serde(rename = "textEditor")]
89    TextEditor,
90    #[serde(rename = "transferCall")]
91    TransferCall,
92}
93
94impl Default for TypeTrue {
95    fn default() -> TypeTrue {
96        Self::ApiRequest
97    }
98}
99///
100#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
101pub enum MethodTrue {
102    #[serde(rename = "POST")]
103    Post,
104    #[serde(rename = "GET")]
105    Get,
106}
107
108impl Default for MethodTrue {
109    fn default() -> MethodTrue {
110        Self::Post
111    }
112}
113/// The name of the tool, fixed to 'str_replace_editor'
114#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
115pub enum NameTrue {
116    #[serde(rename = "str_replace_editor")]
117    StrReplaceEditor,
118}
119
120impl Default for NameTrue {
121    fn default() -> NameTrue {
122        Self::StrReplaceEditor
123    }
124}
125/// The sub type of tool.
126#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
127pub enum SubTypeTrue {
128    #[serde(rename = "text_editor_20241022")]
129    TextEditor20241022,
130}
131
132impl Default for SubTypeTrue {
133    fn default() -> SubTypeTrue {
134        Self::TextEditor20241022
135    }
136}