vapi_client/models/
transfer.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, Default, Debug, PartialEq, Serialize, Deserialize, ToSchema)]
18pub struct Transfer {
19    #[serde(rename = "type")]
20    pub r#type: Type,
21    #[serde(rename = "destination")]
22    pub destination: serde_json::Value,
23    #[serde(rename = "name")]
24    pub name: String,
25    /// This is for metadata you want to store on the task.
26    #[serde(rename = "metadata", skip_serializing_if = "Option::is_none")]
27    pub metadata: Option<serde_json::Value>,
28}
29
30impl Transfer {
31    pub fn new(r#type: Type, destination: serde_json::Value, name: String) -> Transfer {
32        Transfer {
33            r#type,
34            destination,
35            name,
36            metadata: None,
37        }
38    }
39}
40///
41#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize, ToSchema)]
42pub enum Type {
43    #[serde(rename = "transfer")]
44    Transfer,
45}
46
47impl Default for Type {
48    fn default() -> Type {
49        Self::Transfer
50    }
51}