- Adds
PaymentMethod::all()
,CreditCard::fund()
, andCreditCard::delete()
functions - Adds OS specific details to the
User-Agent
header
- Fixes a missing parameter bug by setting the
beta
parameter in therefresh
function tofalse
by default
- Adds the
EndShipper
Beta class withcreate
,retrieve
,all
, andsave
functions
- Adds present but unimported supplemental EasyPost object classes such as
TrackingDetails
to the lib (closes #164)
- Adds a
lowest_rate()
function to Orders and Pickups - Adds
Shipment::get_lowest_smartrate()
and$shipment.lowest_smartrate()
functions - Removes the
params
from theAddress->verify()
method since it's non-static and unused - Removes dead conditional
message
check inAddress::create_and_verify
Upgrading major versions of this project? Refer to the Upgrade Guide.
- Bumped minimum PHP version supported from
5.3
to7.3
- Adds a full test suite, all functions are now tested for each object
- Adds class properties to every class (closes #96)
- Updates and adds docblocks to each function throughout the library
- Switched from
array()
syntax to[]
throughout the project - Adds the
update_brand()
method on theUser
object - Set a default timeout of 30 seconds for connections and 60 seconds for requests
- Fixes the
create_list()
Tracker andcreate_and_buy()
Batch method's encodings to properly send through the parameters - Adds the PHP version used to the
User-Agent
header - Removed unusable
all()
method on theParcel
object - Removed unpaginated
all()
method on theOrder
,CustomsInfo
, andCustomsItem
objects - Removed the
get_rates()
method on the Shipment object since a Shipment object already has rates. If you need new rates for a shipment, use theregenerate_rates()
method instead - Ignores return types for now on
ArrayAccess
andIterator
methods (closes #124) - Bumps dev dependencies
- Various other small improvements and bug fixes
- Further fixes JSON encoding by dropping null key/values, sending values as strings where necessary (returning to previous behavior), and removing the
array_filter
from the previous release
- Properly handles empty lists and objects with JSON encoding (closes #114)
Upgrading major versions of this project? Refer to the Upgrade Guide.
- JSON encodes POST bodies instead of form encoding them
- Adds TaxIdentifier support
- Corrects references of
[email protected]
to[email protected]
- Bumps patch versions of dependencies
- Adds
SmartRate
functionality to theShipments
object (available by callingget_smartrates()
on a shipment)
- Added event retrieval methods
- Fixed a bug that did not allow carrier accounts to be deleted
- Fixed a bug that did not allow users to be deleted
- Removed various pieces of old code
- Added "Refund" and "Shipment Invoice" to the prefix and type lists
- Version bump with updated author
- Bumped version in package.json for Packagist
- Updated README with release instructions
- Fixed a bug that would not create reports properly
- Added unit tests for reports
- Added ability to set connection and response timeouts for all EasyPost actions (thanks mattjanssen!)
- Renamed
Object
classEasyPostObject
since Object is a keyword in PHP7.2
- Fixed confusing Pickup example
- Enabled Reports to retrieve without a type parameter
- Use X-Client-User-Agent over X-EasyPost-Client-User-Agent
- Added get_rates method to Order objects
- Fixed compatibility issues with older PHP versions and the Report class
- Fixed Create for ScanForms
- Added basic CRUD methods for Webhooks
- Fixed error in Util.php they may have affected shipment_reports retrievals
- Added ability to create Report objects for shipment, tracker and payment_log reports
- Fixed warning message from Address Verify/VerifyStrict
- Added create_list for trackers
- Added Insurance support
- Renamed "Resource" class to "EasypostResource" since Resource is reserved in PHP7 (thanks ccovey!)
- Added ability to create top-level users
- Added 'verify' and 'verify_strict' options to Address creation
- Updated ReadMe (thanks browner12!)
- Added DocBlock annotations to all methods (thanks browner12!)
- Fixed Shipment Retrieve by tracking_code
- Added Tracker.all example, and updated some old examples
- Removed cURL options for SSL version, timeout, and connect timeout. The default values for these options are acceptable.
- Added User and CarrierAccount resources and examples for each.
- Modified EasyPost Object setter to record the change in the top level parent object rather than the object that the change was made in. This allows you to change sub objects and then call save() on the parent to have all properties saved.
- Removed EasyPost Object transientValues and made unsavedValues act as a representation of the params to send on save, rather than a flag to indicate if a property had been changed.
- Added support for EasyPost's new error format: {"error": {"message": "...", "code": ..., "errors": {...}}} as well as a prettyPrint function to better display errors in development.
- Added support for additional HTTP methods PATCH and PUT.
- EasyPost Objects are now Iterable.
- Added pickup class
- Added pickup example
- Added tracker to shipment buy response
- Updated tracker examples
- Added Item, Container, and Order resources.
- Updated the CA cert bundle.
- Added the ability to add negative filters to Shipment->lowest_rate by starting them with an exclamation mark.
- Added endpoint to create shipment from tracking code.
- Added Event resource for webhooks.
- API Addition: Batch.buy method added. Trigger the purchasing of labels after a successful Batch.create.
- API Addition: Batch.scan_form method added. Quickly generate a scan_form for an entire batch.
- API Addition: Tracker objects added. Trackers can be used to register any tracking code with EasyPost webhooks.
- Bug fix: error messages should no longer be truncated to their first character.
- 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!