- Adds
all_children
function to the User class for retrieving paginated lists of children users, and removes the beta function - Adds
get_next_page_of_children
function to the User class for retrieving next paginated lists of children users, and removes the beta function
- Fixes a bug where
get_next_page
functions threw an error, preventing users from retrieving the final page of results
- Adds beta
all_children
function to the User class for retrieving paginated lists of children users
- Fixes a bug where
Payload
didn't inheritEasyPostObject
which could throw errors when retrieving event payloads (closes #284)
- Adds
retrieve_estimated_delivery_date
function to the Shipment class
- Adds beta
retrieve_carrier_metadata
function - Improves error deserialization to handle bad format returned from the JSON
- Adds
get_next_page
function that retrieves the next page of results for a paginated collection
- Adds beta
retrieve_stateless_rates
function - Adds
get_lowest_stateless_rate
function to filter the lowest stateless rate
- Adds
all
function toPickup
to retrieve all pickups - Adds
retrieve_payload
andretrieve_all_payloads
functions toEvent
- Adds new beta billing functionality for ReferralCustomer users
add_payment_method
can add a pre-existing Stripe bank account or credit card to your EasyPost accountrefund_by_amount
refunds your wallet by a dollar amountrefund_by_payment_log
refunds you wallet by a PaymentLog ID
- Routes requests for creating a carrier account with a custom workflow (eg: FedEx, UPS) to the correct endpoint when using the
create
function
- Concatenates
error.message
if it incorrectly comes back from the API as a list
- Adds support to pass
end_shipper_id
on the buy call of a Shipment - Migrates the Partner White Label (Referral) functions from beta to the general library namespace and deprecates the beta functions
- Adds the
EndShipper
class withcreate
,retrieve
,all
, andsave
functions
- Adds Carbon Offset support
- Adds ability to create a shipment with carbon_offset
- Adds ability to buy a shipment with carbon_offset
- Adds ability to one-call-buy a shipment with carbon_offset
- Adds ability to rerate a shipment with carbon_offset
- Adds
validate_webhook
function that returns your webhook or raises an error if there is awebhook_secret
mismatch
- Adds ability to generate forms for shipments via
generate_form()
function
- Adds
Billing.retrieve_payment_methods()
,Billing.fund_wallet()
, andBilling.delete_payment_method()
functions - Removes the unusable
carrier
param fromAddress.verify()
along with the deadmessage
conditional check that was missed in v7.0.0 - Adds OS specific details to the user-agent header
- API keys are now required for every request and will fail fast if not present
- Swaps update functions to use
patch
instead ofput
behind the scenes to better match the API behavior and documentation. Behavior of these functions should be unchanged
- Fixes the inclusion of the new
beta
module
- Adds a
lowest_rate()
function to Orders and Pickups - Adds a
Shipment.get_lowest_smartrate()
function and ashipment.lowest_smartrate()
function - Adds beta Referral class for Partner White Label API with these new functions:
create()
,update_email()
,all()
, andadd_credit_card()
Upgrading major versions of this project? Refer to the Upgrade Guide.
- Bumps minimum Python version from 2.7 to 3.6
- Bumps all dependencies
- Removes
shipment.get_rates()
method since the shipment object already has rates. If you need to get new rates for a shipment, please use theshipment.regenerate_rates()
method. - Removes
track_with_code
in shipment class since it's no longer being used - Removes the unusable
carrier
param fromAddress.create_and_verify()
along with the deadmessage
conditional check - Must pass a list object to
shipment.lowest_rate()
rather than a comma-separated list
- Adds the
update_brand()
method to the User object - Adds Python version to user-agent header on requests
- Adds
retrieve_me()
convenience function that allow users to retrieve without specifying an ID.
- Broke out the entire project into separate modules based on object
- Removes
_max_timeout
and instead uses a flat 60-second timeout for requests - Added Makefile for much easier development management
- Added typehints throughout the project
- Consolidated all dependencies from various requirements files to
setup.py
- Added a comprehensive test suite that tests all interfaces of the project
- Documented each interface of the project via docstrings
Upgrading major versions of this project? Refer to the Upgrade Guide.
- JSON encodes POST bodies instead of form encoding them
- Adds support for
tax_identifiers
- Black formatting and iSort tools added to repo
- Bumps
requests
from v1 to v2 - Various refactor efforts and code cleanup
- Remove 2015-vintage experimental "
all_updated
" action from trackers - Correct references of
[email protected]
to[email protected]
- Clean up address verify property and some miscellaneous request logic
- Strips away the
result
key from SmartRate and simply returns an array of SmartRate objects
- fix: stops appending smartrates to Shipment object
- Adds
SmartRate
functionality to theShipments
object (available by callingget_smartrates()
on a shipment)
- Add
all
method for retrieving Events - [backwards-compatibility break] Remove
all
method for some un-supported types: CustomsItem, CustomsInfo, Pickup, and Order
- change tests to use vcrpy so they are more reliable
- add
original_exception
toeasypost.Error
in cases where we are re-raising an underlying error (e.g., an HTTP exception) - fix a bunch of flake8 warnings
- [potentially-breaking] soft-deprecate Python 3.3 and 3.4. these have been dropped by most of the libraries we use, so probably don't work anyway.
- Swap GET to POST on Refund method
- cleaned up how the
__version__
attribute is populated to no longer throw warnings (#95, #98, #104) - added some misding reports
- fix stale tests
- move testing infrastructure from travis-ci.org to travis-ci.com
- Fixed a bug that would not create reports properly
- Fixed stale unit tests
- Update some
setup.py
fields - Formally remove Python 2.6 support (which has been broken for several years)
- Fix broken pickup tests
- Fix broken reports tests
- Make tests run on Python 3.7
- Fix typo in
install_requires
causingsix
to not be installed by pip (gh-84 from @roehnan)
NOTE: This version was never released
- Update user tests
- Fix issue with responses that contain an
api_key
field (gh-67) - Fix tests to take into account new label fee
- Report.retrieve no longer requires a type to be passed
- Modernize tests; make tests able to run in parallel; etc.
- Clarify in README and
setup.py
the supported Python versions - Add top-level
timeout
variable for setting the HTTP timeout on requests
- Changed Report CRUD signatures. requires report type to be passed
- Added
get_rates
method to Order objects
- Fixed create for ScanForms
- Added basic CRUD methods for Webhook Objects
- Fixed Order test
- Added session pooling
- Added support for Report objects
- Added support for Insurance objects
- Added
to_json
method for EasyPost object. Thanks ThePsyjo!
- Remove
api_keys
from object dumps - Fixed address tests to keep them in line with the new API messages
- This was previously known as version 3.1.3
- Added a suite of unittest tests. Thanks wyounas!
- Added ability to interact with Users (create, retrieve and update)
- Add verifications to Address.create
- Added Blob.retrieve for fetching urls for blobs stored by EasyPost.
- Changed the interface on
Tracker.create_list
to return True rather than the Trackers themselves
- Minor bugfix
- Added a
Tracker.all_updated
method for retrieving a large number of Trackers by status ortracking_details
updated datetime
- Added a
Tracker.create_list
method for creating a large number of Trackers at once
- Fixed some examples and added some new ones, particularly dealing with Tracker.all
- Fixed bug where retrieving a shipment by tracking code or reference doesn't set the ID properly
- Added ability to interact with carrier accounts (full CRUD)
- Fixed bug with address verification url rendering
- Fix numerous bugs, including Python3 encoding
- Added python3 support
- Added tracker to shipment response
- Added tracker example
- Added Order support.
- Added Pickup cancellation method.
- Added Pickup resource for scheduling pickups.
- Added Event resource for webhook digestion.
- Added buy method to Batch.
- Bug Fix: UTF-8 input handled more gracefully.
- API Addition: Tracker resource added. Trackers can be used to register any tracking code with EasyPost webhooks.
- API Addition:
Shipment.track_with_code
returns tracking details for any tracking code.
- Bug fix:
address.create_and_verify
is now a classmethod.
- Added function to Address to all creating and verifying at the same time.
- Add label function to Shipment to request specific label
file_formats
(pdf, epl2, zpl). - Add insure function to Shipment. Add insurance to any shipment in one call!
- Fixed
shipment.get_rates
bug.