Exception: Tavily::APIError

Inherits:
Error
  • Object
show all
Defined in:
lib/tavily/errors.rb

Overview

Base class for errors returned by the Tavily API (non-2xx responses). Carries the HTTP status, parsed body, and request id when available.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(message = nil, status: nil, body: nil, request_id: nil) ⇒ APIError

Returns a new instance of APIError.

Parameters:

  • message (String, nil) (defaults to: nil)

    human-readable error message

  • status (Integer, nil) (defaults to: nil)

    HTTP status code

  • body (Object, nil) (defaults to: nil)

    parsed response body

  • request_id (String, nil) (defaults to: nil)

    Tavily request id



31
32
33
34
35
36
# File 'lib/tavily/errors.rb', line 31

def initialize(message = nil, status: nil, body: nil, request_id: nil)
  @status = status
  @body = body
  @request_id = request_id
  super(build_message(message))
end

Instance Attribute Details

#bodyObject? (readonly)

Returns parsed response body (Hash, Array, or String).

Returns:

  • (Object, nil)

    parsed response body (Hash, Array, or String).



23
24
25
# File 'lib/tavily/errors.rb', line 23

def body
  @body
end

#request_idString? (readonly)

Returns Tavily request id, useful for support tickets.

Returns:

  • (String, nil)

    Tavily request id, useful for support tickets.



25
26
27
# File 'lib/tavily/errors.rb', line 25

def request_id
  @request_id
end

#statusInteger? (readonly)

Returns HTTP status code.

Returns:

  • (Integer, nil)

    HTTP status code.



21
22
23
# File 'lib/tavily/errors.rb', line 21

def status
  @status
end