vapi-client 0.4.2

Unofficial crate for Vapi - Voice AI for developers.
Documentation
/*
 * Vapi API
 *
 * Voice AI for developers.
 *
 * The version of the OpenAPI document: 1.0
 *
 * Generated by: https://openapi-generator.tech
 */

use crate::models;
use serde::{Deserialize, Serialize};

#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
#[serde(tag = "type")]
pub enum ToolControllerUpdateRequest {
    #[serde(rename = "apiRequest")]
    ApiRequest(models::UpdateApiRequestToolDto),
    #[serde(rename = "dtmf")]
    Dtmf(models::UpdateDtmfToolDto),
    #[serde(rename = "endCall")]
    EndCall(models::UpdateEndCallToolDto),
    #[serde(rename = "function")]
    Function(models::UpdateFunctionToolDto),
    #[serde(rename = "ghl")]
    Ghl(models::UpdateGhlToolDto),
    #[serde(rename = "make")]
    Make(models::UpdateMakeToolDto),
    #[serde(rename = "transferCall")]
    TransferCall(models::UpdateTransferCallToolDto),
    #[serde(rename = "output")]
    Output(models::UpdateOutputToolDto),
    #[serde(rename = "bash")]
    Bash(models::UpdateBashToolDto),
    #[serde(rename = "computer")]
    Computer(models::UpdateComputerToolDto),
    #[serde(rename = "textEditor")]
    TextEditor(models::UpdateTextEditorToolDto),
    #[serde(rename = "query")]
    Query(models::UpdateQueryToolDto),
    #[serde(rename = "google.calendar.event.create")]
    GooglePeriodCalendarPeriodEventPeriodCreate(models::UpdateGoogleCalendarCreateEventToolDto),
    #[serde(rename = "google.sheets.row.append")]
    GooglePeriodSheetsPeriodRowPeriodAppend(models::UpdateGoogleSheetsRowAppendToolDto),
    #[serde(rename = "google.calendar.availability.check")]
    GooglePeriodCalendarPeriodAvailabilityPeriodCheck(
        models::UpdateGoogleCalendarCheckAvailabilityToolDto,
    ),
    #[serde(rename = "slack.message.send")]
    SlackPeriodMessagePeriodSend(models::UpdateSlackSendMessageToolDto),
    #[serde(rename = "sms")]
    Sms(models::UpdateSmsToolDto),
    #[serde(rename = "mcp")]
    Mcp(models::UpdateMcpToolDto),
    #[serde(rename = "gohighlevel.calendar.availability.check")]
    GohighlevelPeriodCalendarPeriodAvailabilityPeriodCheck(
        models::UpdateGoHighLevelCalendarAvailabilityToolDto,
    ),
    #[serde(rename = "gohighlevel.calendar.event.create")]
    GohighlevelPeriodCalendarPeriodEventPeriodCreate(
        models::UpdateGoHighLevelCalendarEventCreateToolDto,
    ),
    #[serde(rename = "gohighlevel.contact.create")]
    GohighlevelPeriodContactPeriodCreate(models::UpdateGoHighLevelContactCreateToolDto),
    #[serde(rename = "gohighlevel.contact.get")]
    GohighlevelPeriodContactPeriodGet(models::UpdateGoHighLevelContactGetToolDto),
}

impl Default for ToolControllerUpdateRequest {
    fn default() -> Self {
        Self::ApiRequest(Default::default())
    }
}

///
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum MethodTrue {
    #[serde(rename = "POST")]
    Post,
    #[serde(rename = "GET")]
    Get,
}

impl Default for MethodTrue {
    fn default() -> MethodTrue {
        Self::Post
    }
}
/// The name of the tool, fixed to 'str_replace_editor'
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum NameTrue {
    #[serde(rename = "str_replace_editor")]
    StrReplaceEditor,
}

impl Default for NameTrue {
    fn default() -> NameTrue {
        Self::StrReplaceEditor
    }
}
/// The sub type of tool.
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum SubTypeTrue {
    #[serde(rename = "text_editor_20241022")]
    TextEditor20241022,
}

impl Default for SubTypeTrue {
    fn default() -> SubTypeTrue {
        Self::TextEditor20241022
    }
}