Class: Vapi::Files::Client
- Inherits:
-
Object
- Object
- Vapi::Files::Client
- Defined in:
- lib/vapi/files/client.rb
Instance Method Summary collapse
- #create(request_options: {}, **params) ⇒ Vapi::Types::File
- #delete(request_options: {}, **params) ⇒ Vapi::Types::File
- #get(request_options: {}, **params) ⇒ Vapi::Types::File
- #initialize(client:) ⇒ void constructor
- #list(request_options: {}, **params) ⇒ Array[Vapi::Types::File]
- #update(request_options: {}, **params) ⇒ Vapi::Types::File
Constructor Details
#initialize(client:) ⇒ void
9 10 11 |
# File 'lib/vapi/files/client.rb', line 9 def initialize(client:) @client = client end |
Instance Method Details
#create(request_options: {}, **params) ⇒ Vapi::Types::File
51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 |
# File 'lib/vapi/files/client.rb', line 51 def create(request_options: {}, **params) params = Vapi::Internal::Types::Utils.normalize_keys(params) body = Internal::Multipart::FormData.new body.add_part(params[:file].to_form_data_part(name: "file")) if params[:file] request = Vapi::Internal::Multipart::Request.new( base_url: [:base_url], method: "POST", path: "file", body: body, request_options: ) begin response = @client.send(request) rescue Net::HTTPRequestTimeout raise Vapi::Errors::TimeoutError end code = response.code.to_i if code.between?(200, 299) Vapi::Types::File.load(response.body) else error_class = Vapi::Errors::ResponseError.subclass_for_code(code) raise error_class.new(response.body, code: code) end end |
#delete(request_options: {}, **params) ⇒ Vapi::Types::File
120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 |
# File 'lib/vapi/files/client.rb', line 120 def delete(request_options: {}, **params) params = Vapi::Internal::Types::Utils.normalize_keys(params) request = Vapi::Internal::JSON::Request.new( base_url: [:base_url], method: "DELETE", path: "file/#{URI.encode_uri_component(params[:id].to_s)}", request_options: ) begin response = @client.send(request) rescue Net::HTTPRequestTimeout raise Vapi::Errors::TimeoutError end code = response.code.to_i if code.between?(200, 299) Vapi::Types::File.load(response.body) else error_class = Vapi::Errors::ResponseError.subclass_for_code(code) raise error_class.new(response.body, code: code) end end |
#get(request_options: {}, **params) ⇒ Vapi::Types::File
88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 |
# File 'lib/vapi/files/client.rb', line 88 def get(request_options: {}, **params) params = Vapi::Internal::Types::Utils.normalize_keys(params) request = Vapi::Internal::JSON::Request.new( base_url: [:base_url], method: "GET", path: "file/#{URI.encode_uri_component(params[:id].to_s)}", request_options: ) begin response = @client.send(request) rescue Net::HTTPRequestTimeout raise Vapi::Errors::TimeoutError end code = response.code.to_i if code.between?(200, 299) Vapi::Types::File.load(response.body) else error_class = Vapi::Errors::ResponseError.subclass_for_code(code) raise error_class.new(response.body, code: code) end end |
#list(request_options: {}, **params) ⇒ Array[Vapi::Types::File]
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/vapi/files/client.rb', line 22 def list(request_options: {}, **params) Vapi::Internal::Types::Utils.normalize_keys(params) request = Vapi::Internal::JSON::Request.new( base_url: [:base_url], method: "GET", path: "file", request_options: ) begin response = @client.send(request) rescue Net::HTTPRequestTimeout raise Vapi::Errors::TimeoutError end code = response.code.to_i return if code.between?(200, 299) error_class = Vapi::Errors::ResponseError.subclass_for_code(code) raise error_class.new(response.body, code: code) end |
#update(request_options: {}, **params) ⇒ Vapi::Types::File
152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 |
# File 'lib/vapi/files/client.rb', line 152 def update(request_options: {}, **params) params = Vapi::Internal::Types::Utils.normalize_keys(params) request_data = Vapi::Files::Types::UpdateFileDto.new(params).to_h non_body_param_names = ["id"] body = request_data.except(*non_body_param_names) request = Vapi::Internal::JSON::Request.new( base_url: [:base_url], method: "PATCH", path: "file/#{URI.encode_uri_component(params[:id].to_s)}", body: body, request_options: ) begin response = @client.send(request) rescue Net::HTTPRequestTimeout raise Vapi::Errors::TimeoutError end code = response.code.to_i if code.between?(200, 299) Vapi::Types::File.load(response.body) else error_class = Vapi::Errors::ResponseError.subclass_for_code(code) raise error_class.new(response.body, code: code) end end |