Class: FlexOps::Resources::Shipping

Inherits:
Object
  • Object
show all
Defined in:
lib/flexops/resources/shipping.rb

Instance Method Summary collapse

Constructor Details

#initialize(http, ws_id_proc) ⇒ Shipping

Returns a new instance of Shipping.



12
13
14
15
# File 'lib/flexops/resources/shipping.rb', line 12

def initialize(http, ws_id_proc)
  @http = http
  @ws_id = ws_id_proc
end

Instance Method Details

#cancel_label(label_id) ⇒ Object



33
34
35
# File 'lib/flexops/resources/shipping.rb', line 33

def cancel_label(label_id)
  @http.delete("#{ws_path}/shipping/labels/#{label_id}")
end

#create_batch(request) ⇒ Object



45
46
47
# File 'lib/flexops/resources/shipping.rb', line 45

def create_batch(request)
  @http.post("#{ws_path}/labels/batch", body: request)
end

#create_label(request) ⇒ Object



29
30
31
# File 'lib/flexops/resources/shipping.rb', line 29

def create_label(request)
  @http.post("#{ws_path}/shipping/labels", body: request)
end

#download_batch_label(job_id, item_id) ⇒ Object



57
58
59
# File 'lib/flexops/resources/shipping.rb', line 57

def download_batch_label(job_id, item_id)
  @http.get("#{ws_path}/labels/batch/#{job_id}/items/#{item_id}/label")
end

#get_batch_status(job_id) ⇒ Object



53
54
55
# File 'lib/flexops/resources/shipping.rb', line 53

def get_batch_status(job_id)
  @http.get("#{ws_path}/labels/batch/#{job_id}")
end

#get_carriersObject



61
62
63
# File 'lib/flexops/resources/shipping.rb', line 61

def get_carriers
  @http.get("#{ws_path}/shipping/carriers")
end

#get_cheapest_rate(request) ⇒ Object



21
22
23
# File 'lib/flexops/resources/shipping.rb', line 21

def get_cheapest_rate(request)
  @http.post("#{ws_path}/shipping/rates/cheapest", body: request)
end

#get_fastest_rate(request) ⇒ Object



25
26
27
# File 'lib/flexops/resources/shipping.rb', line 25

def get_fastest_rate(request)
  @http.post("#{ws_path}/shipping/rates/fastest", body: request)
end

#get_rates(request) ⇒ Object



17
18
19
# File 'lib/flexops/resources/shipping.rb', line 17

def get_rates(request)
  @http.post("#{ws_path}/shipping/rates", body: request)
end

#get_recommendations(request) ⇒ Object



65
66
67
# File 'lib/flexops/resources/shipping.rb', line 65

def get_recommendations(request)
  @http.post("#{ws_path}/shipping/recommendations", body: request)
end

#get_savingsObject



73
74
75
# File 'lib/flexops/resources/shipping.rb', line 73

def get_savings
  @http.get("#{ws_path}/shipping/savings")
end

#predict_delivery(request) ⇒ Object



69
70
71
# File 'lib/flexops/resources/shipping.rb', line 69

def predict_delivery(request)
  @http.post("#{ws_path}/shipping/predictions/delivery", body: request)
end

#preview_batch(request) ⇒ Object



49
50
51
# File 'lib/flexops/resources/shipping.rb', line 49

def preview_batch(request)
  @http.post("#{ws_path}/labels/batch/preview", body: request)
end

#track(tracking_number) ⇒ Object



37
38
39
# File 'lib/flexops/resources/shipping.rb', line 37

def track(tracking_number)
  @http.get("#{ws_path}/shipping/track/#{tracking_number}")
end

#validate_address(address) ⇒ Object



41
42
43
# File 'lib/flexops/resources/shipping.rb', line 41

def validate_address(address)
  @http.post("#{ws_path}/shipping/addresses/validate", body: address)
end