Class: PBShipping::Tracking
- Inherits:
-
ShippingApiResource
- Object
- ApiObject
- ApiResource
- ShippingApiResource
- PBShipping::Tracking
- Defined in:
- lib/pbshipping/tracking.rb
Instance Method Summary collapse
-
#updateStatus(auth_obj) ⇒ Object
TRACKING API: GET /tracking/trackingNumber API signature: get/tracking/…
Methods inherited from ApiObject
#[], #[]=, #add_accessors, #as_json, convert_to_api_object, #create_accessor, #each, #initialize, #inspect, #key?, #keys, #metaclass, #respond_to?, #to_hash, #to_json, #to_s, #update, #values
Constructor Details
This class inherits a constructor from PBShipping::ApiObject
Instance Method Details
#updateStatus(auth_obj) ⇒ Object
TRACKING API: GET /tracking/trackingNumber API signature: get/tracking/…
Shipment labels that are printed using the Pitney Bowes APIs are automatically tracked and their package status can be easily retrieved using this implementation of the GET operation.
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
# File 'lib/pbshipping/tracking.rb', line 31 def updateStatus(auth_obj) if self.key?(:trackingNumber) == false raise MissingResourceAttribute.new(:trackingNumber) end if self.key?(:packageIdentifierType) == false self[:packageIdentifierType] = "TrackingNumber" end if self.key?(:carrier) == false self[:carrier] = "USPS" end params = { :carrier => self[:carrier], :packageIdentifierType => self[:packageIdentifierType] } api_sig = "get/tracking/..." api_version = PBShipping::get_api_version(api_sig) api_path = "/tracking/" + self[:trackingNumber] json_resp = PBShipping::api_request( auth_obj, :get, api_version, api_path, {}, params, {}) self.update(json_resp) end |