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