TrackingMore API

Ruby Class Example 

  • The class of api
    //www.trackingmore.com/api-class_ruby.html

        Installation:
            1. Download this Class to desired location
            2. Fill in Trackingmore-Api-Key in this Class in line "protected $apiKey = 'YOUR API KEY';"
            3. Require this class in your project.


    List all supported couriers and corresponding courier code at TrackingMore.
    url="http://api.trackingmore.com/v2/carriers/"
    postData = ""
    tracker = Trackingmore.new()
    res = tracker.tracker(url,postData,"GET")
    puts "Response #{res.code} #{res.message}: #{res.body}"
    
    Detect a carrier by tracking code
    url="http://api.trackingmore.com/v2/carriers/detect"
    postData = {"tracking_number":"EA152563251CN"}
    tracker = Trackingmore.new()
    res = tracker.tracker(url,postData,"POST")
    puts "Response #{res.code} #{res.message}: #{res.body}"
    
    Get tracking results of multiple trackings.
    url="http://api.trackingmore.com/v2/trackings/get?page=1&limit=100&created_at_min=1521314361&created_at_max=1541314361&update_time_min=1521314361&update_time_max=1541314361&order_created_time_min=1521314361&order_created_time_max=1541314361&numbers=BYS006086078&orders=#123&lang=en"
    postData = ""
    tracker = Trackingmore.new()
    res = tracker.tracker(url,postData,"GET")
    puts "Response #{res.code} #{res.message}: #{res.body}"
    
    Create a tracking.
    url="http://api.trackingmore.com/v2/trackings/post"
    postData = {"tracking_number":"BYS006086078","carrier_code":"yanwen","title":"chase chen","customer_name":"chase","customer_email":"[email protected]","order_id":"#123","order_create_time":"1521314361","destination_code":"IL","tracking_ship_date":"1521314361","tracking_postal_code":"13ES20","lang":"en","logistics_channel":"4PX挂号小包"}
    tracker = Trackingmore.new()
    res = tracker.tracker(url,postData,"POST")
    puts "Response #{res.code} #{res.message}: #{res.body}"
    
    Create multiple trackings.
    url="http://api.trackingmore.com/v2/trackings/batch"
    postData = [
       {"tracking_number": "BYS006086087","carrier_code":"yanwen","title":"chase chen","customer_name":"chase","customer_email":"[email protected]","order_id":"#123","order_create_time":"2018-05-11 12:00","destination_code":"IL","tracking_ship_date":"1521314361","tracking_postal_code":"13ES20","lang":"en","logistics_channel":"4545454"},
       {"tracking_number": "BYS006086076","carrier_code":"yanwen","title":"chase chen","customer_name":"chase","customer_email":"[email protected]","order_id":"#123","order_create_time":"2018-05-10 12:00","destination_code":"IL","tracking_ship_date":"1521314361","tracking_postal_code":"13ES20","lang":"en","logistics_channel":"4PX挂号小包"}
    ]
    tracker = Trackingmore.new()
    res = tracker.tracker(url,postData,"POST")
    puts "Response #{res.code} #{res.message}: #{res.body}"
    
    Get tracking results of a single tracking.
    url="http://api.trackingmore.com/v2/trackings/yanwen/RX478151565DE"
    postData =""
    tracker  = Trackingmore.new()
    res      = tracker.tracker(url,postData,"GET")
    puts "Response #{res.code} #{res.message}: #{res.body}"
    
    Modify order id, order title, shipment status and other additional fields of a single tracking.
    url="http://api.trackingmore.com/v2/trackings/yanwen/BYS006086079"
    postData = {"title":"ruby test","customer_name":"test","customer_email":"[email protected]","order_id":"#1234567","logistics_channel":"4PX挂号小包"}
    tracker = Trackingmore.new()
    res = tracker.tracker(url,postData,"PUT")
    puts "Response #{res.code} #{res.message}: #{res.body}"
    
    Delete a tracking.
    url="http://api.trackingmore.com/v2/trackings/yanwen/RX478151548DE"
    postData =""
    tracker  = Trackingmore.new()
    res      = tracker.tracker(url,postData,"DELETE")
    puts "Response #{res.code} #{res.message}: #{res.body}"
    
    Get realtime tracking results of a single tracking.
    url="http://api.trackingmore.com/v2/trackings/realtime"
    postData = {"tracking_number": "RO454978691CN","carrier_code":"china-post","destination_code": "United States","tracking_ship_date":"deutsch-post","tracking_postal_code":"postnl-3s","specialNumberDestination":"postnl-3s","order":"#123123","order_create_time":"1521314361","lang":"en"}
    tracker = Trackingmore.new()
    res = tracker.tracker(url,postData,"POST")
    puts "Response #{res.code} #{res.message}: #{res.body}"
    
    Delete multiple trackings.
    url="http://api.trackingmore.com/v2/trackings/delete"
    postData = [{"tracking_number":"BYS006086077","carrier_code":"yanwen"},{"tracking_number":"BYS006086088","carrier_code":"yanwen"}]
    tracker = Trackingmore.new()
    res = tracker.tracker(url,postData,"POST")
    puts "Response #{res.code} #{res.message}: #{res.body}"
    
    Modify courier code
    url="http://api.trackingmore.com/v2/trackings/update"
    postData = {"tracking_number":"BYS006086077","carrier_code":"dhl","update_carrier_code":"yanwen"}
    tracker = Trackingmore.new()
    res = tracker.tracker(url,postData,"POST")
    puts "Response #{res.code} #{res.message}: #{res.body}"
    
    Get account info
    url="http://api.trackingmore.com/v2/trackings/getuserinfo"
    postData = ""
    tracker = Trackingmore.new()
    res = tracker.tracker(url,postData,"GET")
    puts "Response #{res.code} #{res.message}: #{res.body}"
    
    Get number of trackings in each package status.
    url="http://api.trackingmore.com/v2/trackings/getstatusnumber"
    postData = ""
    tracker = Trackingmore.new()
    res = tracker.tracker(url,postData,"GET")
    puts "Response #{res.code} #{res.message}: #{res.body}"
    
    Stop updating trackings
    url="http://api.trackingmore.com/v2/trackings/notupdate"
    postData = [
       {"tracking_number":"BYS006086077","carrier_code":"yanwen"},
       {"tracking_number":"BYS006086088","carrier_code":"yanwen"}
    ]
    tracker = Trackingmore.new()
    res = tracker.tracker(url,postData,"POST")
    puts "Response #{res.code} #{res.message}: #{res.body}"
    
    Check if a shipment is sent to remote area.
    url="http://api.trackingmore.com/v2/trackings/remote"
    postData = [{"country":"CN","postcode":"400422","company":"dhl"},{"country":"CN","postcode":"412000","company":"dhl"}]
    tracker = Trackingmore.new()
    res = tracker.tracker(url,postData,"POST")
    puts "Response #{res.code} #{res.message}: #{res.body}"
    
    Get courier aging results
    url="http://api.trackingmore.com/v2/trackings/costtime"
    postData = [{"carrier_code":"dhl","destination":"US","original":"CN"},{"carrier_code":"dhl","destination":"RU","original":"CN"}]
    tracker = Trackingmore.new()
    res = tracker.tracker(url,postData,"POST")
    puts "Response #{res.code} #{res.message}: #{res.body}"
    
    Modify order id, order title, shipment status and other additional fields of multiple trackings.
    url="http://api.trackingmore.com/v2/trackings/updatemore"
    postData =[{"tracking_number":"BYS006086087","carrier_code":"yanwen","title":"chase chen111","customer_name":"chaseddd","customer_email":"[email protected]","order_id":"#123457777774","destination_code":"IL","status":"4","logistics_channel":"4PX挂号小包"},{"tracking_number":"BYS006086076","carrier_code":"yanwen","title":"chase chen222","customer_name":"chase dsd","customer_email":"[email protected]","order_id":"#1234577777","destination_code":"IL","status":"4","logistics_channel":"4PX挂号小包"}]
    tracker = Trackingmore.new()
    res = tracker.tracker(url,postData,"POST")
    puts "Response #{res.code} #{res.message}: #{res.body}"
    

Take your post-purchase order tracking experience to the next level