1
1
# frozen_string_literal: true
2
+
2
3
require_relative "environment"
3
4
require "faraday"
4
5
require "faraday/multipart"
5
6
require "faraday/retry"
6
- require "faraday"
7
- require "faraday"
8
- require "faraday/multipart"
9
7
require "async/http/faraday"
10
- require "faraday/retry"
11
8
12
9
module Vapi
13
10
class RequestClient
14
- # @return [Faraday]
11
+ # @return [Faraday]
15
12
attr_reader :conn
16
- # @return [String]
13
+ # @return [String]
17
14
attr_reader :base_url
18
- # @return [String]
15
+ # @return [String]
19
16
attr_reader :token
20
- # @return [String]
17
+ # @return [String]
21
18
attr_reader :default_environment
22
19
23
-
24
- # @param base_url [String]
25
- # @param environment [Vapi::Environment]
20
+ # @param base_url [String]
21
+ # @param environment [Vapi::Environment]
26
22
# @param max_retries [Long] The number of times to retry a failed request, defaults to 2.
27
- # @param timeout_in_seconds [Long]
28
- # @param token [String]
23
+ # @param timeout_in_seconds [Long]
24
+ # @param token [String]
29
25
# @return [Vapi::RequestClient]
30
- def initialize ( base_url : nil , environment : Vapi ::Environment ::DEFAULT , max_retries : nil , timeout_in_seconds : nil , token :)
26
+ def initialize ( token :, base_url : nil , environment : Vapi ::Environment ::DEFAULT , max_retries : nil ,
27
+ timeout_in_seconds : nil )
31
28
@default_environment = environment
32
29
@base_url = environment || base_url
33
30
@token = "Bearer #{ token } "
34
- @conn = Faraday . new do | faraday |
35
- faraday . request :multipart
36
- faraday . request :json
37
- faraday . response :raise_error , include_request : true
38
- unless max_retries . nil?
39
- faraday . request :retry , { max : max_retries }
40
- end
41
- unless timeout_in_seconds . nil?
42
- faraday . options . timeout = timeout_in_seconds
43
- end
44
- end
31
+ @conn = Faraday . new do |faraday |
32
+ faraday . request :multipart
33
+ faraday . request :json
34
+ faraday . response :raise_error , include_request : true
35
+ faraday . request :retry , { max : max_retries } unless max_retries . nil?
36
+ faraday . options . timeout = timeout_in_seconds unless timeout_in_seconds . nil?
37
+ end
45
38
end
46
- # @param request_options [Vapi::RequestOptions]
39
+
40
+ # @param request_options [Vapi::RequestOptions]
47
41
# @return [String]
48
42
def get_url ( request_options : nil )
49
43
request_options &.base_url || @default_environment || @base_url
50
44
end
45
+
51
46
# @return [Hash{String => String}]
52
47
def get_headers
53
- headers = { "X-Fern-Language" : ' Ruby' , "X-Fern-SDK-Name" : ' vapi_server_sdk' , "X-Fern-SDK-Version" : ' 0.9.0' }
48
+ headers = { "X-Fern-Language" : " Ruby" , "X-Fern-SDK-Name" : " vapi_server_sdk" , "X-Fern-SDK-Version" : " 0.9.1" }
54
49
headers [ "Authorization" ] = ( ( @token . is_a? Method ) ? @token . call : @token ) unless @token . nil?
55
- headers
50
+ headers
56
51
end
57
52
end
53
+
58
54
class AsyncRequestClient
59
- # @return [Faraday]
55
+ # @return [Faraday]
60
56
attr_reader :conn
61
- # @return [String]
57
+ # @return [String]
62
58
attr_reader :base_url
63
- # @return [String]
59
+ # @return [String]
64
60
attr_reader :token
65
- # @return [String]
61
+ # @return [String]
66
62
attr_reader :default_environment
67
63
68
-
69
- # @param base_url [String]
70
- # @param environment [Vapi::Environment]
64
+ # @param base_url [String]
65
+ # @param environment [Vapi::Environment]
71
66
# @param max_retries [Long] The number of times to retry a failed request, defaults to 2.
72
- # @param timeout_in_seconds [Long]
73
- # @param token [String]
67
+ # @param timeout_in_seconds [Long]
68
+ # @param token [String]
74
69
# @return [Vapi::AsyncRequestClient]
75
- def initialize ( base_url : nil , environment : Vapi ::Environment ::DEFAULT , max_retries : nil , timeout_in_seconds : nil , token :)
70
+ def initialize ( token :, base_url : nil , environment : Vapi ::Environment ::DEFAULT , max_retries : nil ,
71
+ timeout_in_seconds : nil )
76
72
@default_environment = environment
77
73
@base_url = environment || base_url
78
74
@token = "Bearer #{ token } "
79
- @conn = Faraday . new do | faraday |
80
- faraday . request :multipart
81
- faraday . request :json
82
- faraday . response :raise_error , include_request : true
83
- faraday . adapter :async_http
84
- unless max_retries . nil?
85
- faraday . request :retry , { max : max_retries }
86
- end
87
- unless timeout_in_seconds . nil?
88
- faraday . options . timeout = timeout_in_seconds
89
- end
90
- end
75
+ @conn = Faraday . new do |faraday |
76
+ faraday . request :multipart
77
+ faraday . request :json
78
+ faraday . response :raise_error , include_request : true
79
+ faraday . adapter :async_http
80
+ faraday . request :retry , { max : max_retries } unless max_retries . nil?
81
+ faraday . options . timeout = timeout_in_seconds unless timeout_in_seconds . nil?
82
+ end
91
83
end
92
- # @param request_options [Vapi::RequestOptions]
84
+
85
+ # @param request_options [Vapi::RequestOptions]
93
86
# @return [String]
94
87
def get_url ( request_options : nil )
95
88
request_options &.base_url || @default_environment || @base_url
96
89
end
90
+
97
91
# @return [Hash{String => String}]
98
92
def get_headers
99
- headers = { "X-Fern-Language" : ' Ruby' , "X-Fern-SDK-Name" : ' vapi_server_sdk' , "X-Fern-SDK-Version" : ' 0.9.0' }
93
+ headers = { "X-Fern-Language" : " Ruby" , "X-Fern-SDK-Name" : " vapi_server_sdk" , "X-Fern-SDK-Version" : " 0.9.1" }
100
94
headers [ "Authorization" ] = ( ( @token . is_a? Method ) ? @token . call : @token ) unless @token . nil?
101
- headers
95
+ headers
102
96
end
103
97
end
104
- # Additional options for request-specific configuration when calling APIs via the
105
- # SDK.
98
+
99
+ # Additional options for request-specific configuration when calling APIs via the
100
+ # SDK.
106
101
class RequestOptions
107
- # @return [String]
102
+ # @return [String]
108
103
attr_reader :base_url
109
- # @return [String]
104
+ # @return [String]
110
105
attr_reader :token
111
- # @return [Hash{String => Object}]
106
+ # @return [Hash{String => Object}]
112
107
attr_reader :additional_headers
113
- # @return [Hash{String => Object}]
108
+ # @return [Hash{String => Object}]
114
109
attr_reader :additional_query_parameters
115
- # @return [Hash{String => Object}]
110
+ # @return [Hash{String => Object}]
116
111
attr_reader :additional_body_parameters
117
- # @return [Long]
112
+ # @return [Long]
118
113
attr_reader :timeout_in_seconds
119
114
120
-
121
- # @param base_url [String]
122
- # @param token [String]
123
- # @param additional_headers [Hash{String => Object}]
124
- # @param additional_query_parameters [Hash{String => Object}]
125
- # @param additional_body_parameters [Hash{String => Object}]
126
- # @param timeout_in_seconds [Long]
115
+ # @param base_url [String]
116
+ # @param token [String]
117
+ # @param additional_headers [Hash{String => Object}]
118
+ # @param additional_query_parameters [Hash{String => Object}]
119
+ # @param additional_body_parameters [Hash{String => Object}]
120
+ # @param timeout_in_seconds [Long]
127
121
# @return [Vapi::RequestOptions]
128
- def initialize ( base_url : nil , token : nil , additional_headers : nil , additional_query_parameters : nil , additional_body_parameters : nil , timeout_in_seconds : nil )
122
+ def initialize ( base_url : nil , token : nil , additional_headers : nil , additional_query_parameters : nil ,
123
+ additional_body_parameters : nil , timeout_in_seconds : nil )
129
124
@base_url = base_url
130
125
@token = token
131
126
@additional_headers = additional_headers
@@ -134,31 +129,32 @@ def initialize(base_url: nil, token: nil, additional_headers: nil, additional_qu
134
129
@timeout_in_seconds = timeout_in_seconds
135
130
end
136
131
end
137
- # Additional options for request-specific configuration when calling APIs via the
138
- # SDK.
132
+
133
+ # Additional options for request-specific configuration when calling APIs via the
134
+ # SDK.
139
135
class IdempotencyRequestOptions
140
- # @return [String]
136
+ # @return [String]
141
137
attr_reader :base_url
142
- # @return [String]
138
+ # @return [String]
143
139
attr_reader :token
144
- # @return [Hash{String => Object}]
140
+ # @return [Hash{String => Object}]
145
141
attr_reader :additional_headers
146
- # @return [Hash{String => Object}]
142
+ # @return [Hash{String => Object}]
147
143
attr_reader :additional_query_parameters
148
- # @return [Hash{String => Object}]
144
+ # @return [Hash{String => Object}]
149
145
attr_reader :additional_body_parameters
150
- # @return [Long]
146
+ # @return [Long]
151
147
attr_reader :timeout_in_seconds
152
148
153
-
154
- # @param base_url [String]
155
- # @param token [String]
156
- # @param additional_headers [Hash{String => Object}]
157
- # @param additional_query_parameters [Hash{String => Object}]
158
- # @param additional_body_parameters [Hash{String => Object}]
159
- # @param timeout_in_seconds [Long]
149
+ # @param base_url [String]
150
+ # @param token [String]
151
+ # @param additional_headers [Hash{String => Object}]
152
+ # @param additional_query_parameters [Hash{String => Object}]
153
+ # @param additional_body_parameters [Hash{String => Object}]
154
+ # @param timeout_in_seconds [Long]
160
155
# @return [Vapi::IdempotencyRequestOptions]
161
- def initialize ( base_url : nil , token : nil , additional_headers : nil , additional_query_parameters : nil , additional_body_parameters : nil , timeout_in_seconds : nil )
156
+ def initialize ( base_url : nil , token : nil , additional_headers : nil , additional_query_parameters : nil ,
157
+ additional_body_parameters : nil , timeout_in_seconds : nil )
162
158
@base_url = base_url
163
159
@token = token
164
160
@additional_headers = additional_headers
@@ -167,4 +163,4 @@ def initialize(base_url: nil, token: nil, additional_headers: nil, additional_qu
167
163
@timeout_in_seconds = timeout_in_seconds
168
164
end
169
165
end
170
- end
166
+ end
0 commit comments