class AfterShip::V4::Tracking

Public Class Methods

create(tracking_number, params = {}) click to toggle source

POST /trackings

# File lib/aftership/v4/tracking.rb, line 7
def self.create(tracking_number, params = {})
  if tracking_number.empty? || tracking_number.nil?
    raise ArgumentError, 'tracking_number is required.'
  else
    query_hash = { tracking_number: tracking_number }
    query_hash.merge!(params)
    body = { tracking: query_hash }
    new(:post, 'trackings', {}, body).call
  end
end
delete(slug, tracking_number, params = {}) click to toggle source

DELETE /trackings/:slug/:tracking_number

# File lib/aftership/v4/tracking.rb, line 28
def self.delete(slug, tracking_number, params = {})
  if slug.empty? || slug.nil? || tracking_number.empty? || tracking_number.nil?
    raise ArgumentError, 'slug and tracking_number are required.'
  end

  new(:delete, "trackings/#{slug}/#{tracking_number}", params).call
end
delete_by_id(id) click to toggle source

DELETE /trackings/:id

# File lib/aftership/v4/tracking.rb, line 37
def self.delete_by_id(id)
  raise ArgumentError, 'id is required.' if id.empty? || id.nil?

  new(:delete, "trackings/#{id}").call
end
export(params = {}) click to toggle source

GET /trackings/exports

# File lib/aftership/v4/tracking.rb, line 65
def self.export(params = {})
  new(:get, 'trackings/exports', params).call
end
get(slug, tracking_number, params = {}) click to toggle source

GET /trackings/:slug/:tracking_number

# File lib/aftership/v4/tracking.rb, line 44
def self.get(slug, tracking_number, params = {})
  if slug.empty? || slug.nil? || tracking_number.empty? || tracking_number.nil?
    raise ArgumentError, 'slug and tracking_number are required.'
  end

  new(:get, "trackings/#{slug}/#{tracking_number}", params).call
end
get_all(params = {}) click to toggle source

GET /trackings

# File lib/aftership/v4/tracking.rb, line 60
def self.get_all(params = {})
  new(:get, 'trackings', params).call
end
get_by_id(id, params = {}) click to toggle source

GET /trackings/:id

# File lib/aftership/v4/tracking.rb, line 53
def self.get_by_id(id, params = {})
  raise ArgumentError, 'id is required.' if id.empty? || id.nil?

  new(:get, "trackings/#{id}", params).call
end
reactivate(_slug, _tracking_number) click to toggle source

Deprecated POST /trackings/:slug/:tracking_number/reactivate

# File lib/aftership/v4/tracking.rb, line 81
def self.reactivate(_slug, _tracking_number)
  raise StandardError, 'This method is deprecated, please use "retrack" instead'
end
retrack(slug, tracking_number, params = {}) click to toggle source

POST /trackings/:slug/:tracking_number/retrack

# File lib/aftership/v4/tracking.rb, line 19
def self.retrack(slug, tracking_number, params = {})
  if slug.empty? || slug.nil? || tracking_number.empty? || tracking_number.nil?
    raise ArgumentError, 'slug and tracking_number are required.'
  end

  new(:post, "trackings/#{slug}/#{tracking_number}/retrack", params).call
end
update(slug, tracking_number, params = {}) click to toggle source

PUT /trackings/:slug/:tracking_number

# File lib/aftership/v4/tracking.rb, line 70
def self.update(slug, tracking_number, params = {})
  if slug.empty? || slug.nil? || tracking_number.empty? || tracking_number.nil?
    raise ArgumentError, 'slug and tracking_number are required.'
  end

  body = { tracking: params }
  new(:put, "trackings/#{slug}/#{tracking_number}", {}, body).call
end