Exception: Anthropic::Errors::APIStatusError
- Defined in:
- lib/anthropic/errors.rb
Direct Known Subclasses
AuthenticationError, BadRequestError, ConflictError, InternalServerError, NotFoundError, PermissionDeniedError, RateLimitError, UnprocessableEntityError
Instance Attribute Summary collapse
Attributes inherited from APIError
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(url:, status:, headers:, body:, request:, response:, message: nil) ⇒ APIStatusError
constructor
private
A new instance of APIStatusError.
Constructor Details
#initialize(url:, status:, headers:, body:, request:, response:, message: nil) ⇒ APIStatusError
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Returns a new instance of APIStatusError.
182 183 184 185 186 187 188 189 190 191 192 193 |
# File 'lib/anthropic/errors.rb', line 182 def initialize(url:, status:, headers:, body:, request:, response:, message: nil) ||= {url: url.to_s, status: status, body: body} super( url: url, status: status, headers: headers, body: body, request: request, response: response, message: &.to_s ) end |
Instance Attribute Details
#status ⇒ Integer
2 3 4 |
# File 'lib/anthropic/errors.rb', line 2 def status @status end |
Class Method Details
.for(url:, status:, headers:, body:, request:, response:, message: nil) ⇒ self
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 |
# File 'lib/anthropic/errors.rb', line 135 def self.for(url:, status:, headers:, body:, request:, response:, message: nil) kwargs = { url: url, status: status, headers: headers, body: body, request: request, response: response, message: } case status in 400 Anthropic::Errors::BadRequestError.new(**kwargs) in 401 Anthropic::Errors::AuthenticationError.new(**kwargs) in 403 Anthropic::Errors::PermissionDeniedError.new(**kwargs) in 404 Anthropic::Errors::NotFoundError.new(**kwargs) in 409 Anthropic::Errors::ConflictError.new(**kwargs) in 422 Anthropic::Errors::UnprocessableEntityError.new(**kwargs) in 429 Anthropic::Errors::RateLimitError.new(**kwargs) in (500..) Anthropic::Errors::InternalServerError.new(**kwargs) else Anthropic::Errors::APIStatusError.new(**kwargs) end end |