Skip to content

Commit 1160970

Browse files
committed
feat: adds retrieve_batch tracker function
1 parent e70e516 commit 1160970

File tree

4 files changed

+163
-0
lines changed

4 files changed

+163
-0
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
## v7.1.0 (2025-06-18)
44

55
- Adds support for `UspsShipAccount`
6+
- Adds `tracker.retrieve_batch` function
67

78
## v7.1.0 (2025-06-18)
89

lib/easypost/services/tracker.rb

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,13 @@ def all(params = {})
2929
get_all_helper('trackers', MODEL_CLASS, params, filters)
3030
end
3131

32+
# Retrieve a batch of Trackers
33+
def retrieve_batch(params = {})
34+
response = @client.make_request(:post, 'trackers/batch', params)
35+
36+
EasyPost::InternalUtilities::Json.convert_json_to_object(response, MODEL_CLASS)
37+
end
38+
3239
# Get the next page of trackers.
3340
def get_next_page(collection, page_size = nil)
3441
raise EasyPost::Errors::EndOfPaginationError.new unless more_pages?(collection)

spec/cassettes/tracker/EasyPost_Services_Tracker_retrieve_batch_retrieves_a_batch_of_trackers.yml

Lines changed: 141 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

spec/tracker_spec.rb

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,20 @@
6060
end
6161
end
6262

63+
describe '.retrieve_batch' do
64+
it 'retrieves a batch of trackers' do
65+
tracker = client.tracker.create(
66+
tracking_code: 'EZ1000000001',
67+
)
68+
69+
trackers = client.tracker.retrieve_batch(
70+
tracking_codes: [tracker.tracking_code],
71+
)
72+
73+
expect(trackers).to be_an_instance_of(EasyPost::Models::Tracker)
74+
end
75+
end
76+
6377
describe '.get_next_page' do
6478
it 'retrieves the next page of a collection' do
6579
first_page = client.tracker.all(

0 commit comments

Comments
 (0)