pub struct CreateApiRequestToolDto {
pub messages: Option<Vec<CreateDtmfToolDtoMessagesInner>>,
pub type: TypeTrue,
pub method: MethodTrue,
pub timeout_seconds: Option<f64>,
pub name: Option<String>,
pub description: Option<String>,
pub url: String,
pub body: Option<JsonSchema>,
pub headers: Option<JsonSchema>,
pub backoff_plan: Option<BackoffPlan>,
pub variable_extraction_plan: Option<VariableExtractionPlan>,
pub function: Option<OpenAiFunction>,
}
Fields§
§messages: Option<Vec<CreateDtmfToolDtoMessagesInner>>
These are the messages that will be spoken to the user as the tool is running. For some tools, this is auto-filled based on special fields like tool.destinations
. For others like the function tool, these can be custom configured.
type: TypeTrue
The type of tool. "apiRequest" for API request tool.
method: MethodTrue
§timeout_seconds: Option<f64>
This is the timeout in seconds for the request. Defaults to 20 seconds. @default 20
name: Option<String>
This is the name of the tool. This will be passed to the model. Must be a-z, A-Z, 0-9, or contain underscores and dashes, with a maximum length of 40.
description: Option<String>
This is the description of the tool. This will be passed to the model.
url: String
This is where the request will be sent.
body: Option<JsonSchema>
This is the body of the request.
headers: Option<JsonSchema>
These are the headers to send in the request.
backoff_plan: Option<BackoffPlan>
This is the backoff plan if the request fails. Defaults to undefined (the request will not be retried). @default undefined (the request will not be retried)
variable_extraction_plan: Option<VariableExtractionPlan>
This is the plan that controls the variable extraction from the tool’s response.
function: Option<OpenAiFunction>
This is the function definition of the tool. For endCall
, transferCall
, and dtmf
tools, this is auto-filled based on tool-specific fields like tool.destinations
. But, even in those cases, you can provide a custom function definition for advanced use cases. An example of an advanced use case is if you want to customize the message that’s spoken for endCall
tool. You can specify a function where it returns an argument "reason". Then, in messages
array, you can have many "request-complete" messages. One of these messages will be triggered if the messages[].conditions
matches the "reason" argument.
Implementations§
Source§impl CreateApiRequestToolDto
impl CreateApiRequestToolDto
pub fn new( type: TypeTrue, method: MethodTrue, url: String, ) -> CreateApiRequestToolDto
Trait Implementations§
Source§impl Clone for CreateApiRequestToolDto
impl Clone for CreateApiRequestToolDto
Source§fn clone(&self) -> CreateApiRequestToolDto
fn clone(&self) -> CreateApiRequestToolDto
1.0.0 · Source§const fn clone_from(&mut self, source: &Self)
const fn clone_from(&mut self, source: &Self)
source
. Read more