Class: Vellum::RequestClient

Inherits:
Object
  • Object
show all
Defined in:
lib/requests.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(api_key:, environment: Environment::PRODUCTION, max_retries: nil, timeout_in_seconds: nil) ⇒ RequestClient

Parameters:

  • environment (Environment) (defaults to: Environment::PRODUCTION)
  • max_retries (Long) (defaults to: nil)

    The number of times to retry a failed request, defaults to 2.

  • timeout_in_seconds (Long) (defaults to: nil)
  • api_key (String)


18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# File 'lib/requests.rb', line 18

def initialize(api_key:, environment: Environment::PRODUCTION, max_retries: nil, timeout_in_seconds: nil)
  @default_environment = environment
  @headers = {
    "X-Fern-Language": "Ruby",
    "X-Fern-SDK-Name": "Vellum",
    "X-Fern-SDK-Version": "0.3.15",
    "X_API_KEY": api_key.to_s
  }
  @conn = Faraday.new(headers: @headers) do |faraday|
    faraday.request :multipart
    faraday.request :json
    faraday.response :raise_error, include_request: true
    faraday.request :retry, { max: max_retries } unless max_retries.nil?
    faraday.options.timeout = timeout_in_seconds unless timeout_in_seconds.nil?
  end
end

Instance Attribute Details

#connObject (readonly)

Returns the value of attribute conn.



11
12
13
# File 'lib/requests.rb', line 11

def conn
  @conn
end

#default_environmentObject (readonly)

Returns the value of attribute default_environment.



11
12
13
# File 'lib/requests.rb', line 11

def default_environment
  @default_environment
end

#headersObject (readonly)

Returns the value of attribute headers.



11
12
13
# File 'lib/requests.rb', line 11

def headers
  @headers
end