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