Class: Revox::Models::CallRetrieveResponse::Call::Assistant::CustomTool

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/revox/models/call_retrieve_response.rb,
sig/revox/models/call_retrieve_response.rbs

Defined Under Namespace

Modules: Method Classes: Header, InputSchema, QueryParam

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Internal::Type::BaseModel

==, #==, #[], coerce, #deconstruct_keys, #deep_to_h, dump, fields, hash, #hash, inherited, inspect, #inspect, known_fields, optional, recursively_to_h, required, #to_h, #to_json, #to_s, to_sorbet_type, #to_yaml

Methods included from Internal::Type::Converter

#coerce, coerce, #dump, dump, inspect, #inspect, meta_info, new_coerce_state, type_info

Methods included from Internal::Util::SorbetRuntimeSupport

#const_missing, #define_sorbet_constant!, #sorbet_constant_defined?, #to_sorbet_type, to_sorbet_type

Constructor Details

#initialize(key:, value:) ⇒ Object



# File 'lib/revox/models/call_retrieve_response.rb', line 997


Instance Attribute Details

#body_template ⇒ String?

JSON body template for the request. Use quoted {variable} placeholders (e.g. "{name}") for dynamic values



912
# File 'lib/revox/models/call_retrieve_response.rb', line 912

required :body_template, String, nil?: true

#description ⇒ String

Human-readable description of what the tool does, used by the LLM to decide when to call it



919
# File 'lib/revox/models/call_retrieve_response.rb', line 919

required :description, String

#headers ⇒ Array<Revox::Models::CallRetrieveResponse::Call::Assistant::CustomTool::Header>

HTTP headers to include in the request. Values support {variable} placeholders



925
926
# File 'lib/revox/models/call_retrieve_response.rb', line 925

required :headers,
-> { Revox::Internal::Type::ArrayOf[Revox::Models::CallRetrieveResponse::Call::Assistant::CustomTool::Header] }

#input_schema ⇒ Array<Revox::Models::CallRetrieveResponse::Call::Assistant::CustomTool::InputSchema>

Schema defining the parameters the LLM should extract from the conversation to pass to this tool



933
934
# File 'lib/revox/models/call_retrieve_response.rb', line 933

required :input_schema,
-> { Revox::Internal::Type::ArrayOf[Revox::Models::CallRetrieveResponse::Call::Assistant::CustomTool::InputSchema] }

#method_ ⇒ Symbol, Revox::Models::CallRetrieveResponse::Call::Assistant::CustomTool::Method

HTTP method to use when calling the API endpoint



940
941
942
# File 'lib/revox/models/call_retrieve_response.rb', line 940

required :method_,
enum: -> { Revox::Models::CallRetrieveResponse::Call::Assistant::CustomTool::Method },
api_name: :method

#name ⇒ String

Unique tool name in lowercase_snake_case (e.g. check_inventory)



948
# File 'lib/revox/models/call_retrieve_response.rb', line 948

required :name, String

#query_params ⇒ Array<Revox::Models::CallRetrieveResponse::Call::Assistant::CustomTool::QueryParam>

Query string parameters appended to the URL. Values support {variable} placeholders



955
956
# File 'lib/revox/models/call_retrieve_response.rb', line 955

required :query_params,
-> { Revox::Internal::Type::ArrayOf[Revox::Models::CallRetrieveResponse::Call::Assistant::CustomTool::QueryParam] }

#url ⇒ String

Full URL of the API endpoint. Supports {variable} placeholders for dynamic values



963
# File 'lib/revox/models/call_retrieve_response.rb', line 963

required :url, String

Class Method Details

.values ⇒ Array<Symbol>



# File 'lib/revox/models/call_retrieve_response.rb', line 1047


Instance Method Details

#to_hash ⇒ {



643
# File 'sig/revox/models/call_retrieve_response.rbs', line 643

def to_hash: -> {