class EasyPost::Services::Insurance

Constants

MODEL_CLASS

An Insurance object represents insurance for packages purchased both via the EasyPost API as well as shipments purchased through third parties and later registered with EasyPost.

Public Instance Methods

all(params = {}) click to toggle source

Retrieve all Insurance objects

# File lib/easypost/services/insurance.rb, line 22
def all(params = {})
  filters = { key: 'insurances' }

  get_all_helper('insurances', MODEL_CLASS, params, filters)
end
create(params = {}) click to toggle source

Create an Insurance object

# File lib/easypost/services/insurance.rb, line 7
def create(params = {})
  wrapped_params = { insurance: params }
  response = @client.make_request(:post, 'insurances', wrapped_params)

  EasyPost::InternalUtilities::Json.convert_json_to_object(response, MODEL_CLASS)
end
get_next_page(collection, page_size = nil) click to toggle source

Get the next page of insurances.

# File lib/easypost/services/insurance.rb, line 29
def get_next_page(collection, page_size = nil)
  raise EasyPost::Errors::EndOfPaginationError.new unless more_pages?(collection)

  params = { before_id: collection.insurances.last.id }
  params[:page_size] = page_size unless page_size.nil?

  all(params)
end
refund(id) click to toggle source

Refund an Insurance object

# File lib/easypost/services/insurance.rb, line 39
def refund(id)
  response = @client.make_request(:post, "insurances/#{id}/refund")

  EasyPost::InternalUtilities::Json.convert_json_to_object(response, MODEL_CLASS)
end
retrieve(id) click to toggle source

Retrieve an Insurance object

# File lib/easypost/services/insurance.rb, line 15
def retrieve(id)
  response = @client.make_request(:get, "insurances/#{id}")

  EasyPost::InternalUtilities::Json.convert_json_to_object(response, MODEL_CLASS)
end