Releases: EasyPost/easypost-php
v6.4.0
- Add
getNextPagefunction that retrieves the next page of results for a paginated collection
v6.3.1
- Adds missing
status_detailproperty to Tracker - Fixes spelling of
weightproperty on Parcel
v6.3.0
- Adds beta
retrieveStatelessRatesfunction - Adds
getLowestStatelessRateutility - Correct HTTP 403 status responses to throw
ForbiddenException - Various other small corrections and improvements
v6.2.0
- Added function to retrieve all pickups via
$client->pickup->all() - Added payload functions
retrievePayloadandretrieveAllPayloadsmethods, accessible via$client->eventservice.
v6.1.0
- Adds new beta billing functionality for referral customer users, accessible via the
$client->betaReferralCustomerserviceaddPaymentMethodto add an existing Stripe bank account or credit card to your EasyPost accountrefundByAmountrefunds you wallet balance by a specified amountrefundByPaymentLogrefunds you wallet balance by a specified payment log
v6.0.0
-
Release final version of v6 that contains all the changes in the
v6.0.0-rc1listed below: -
PHP 7.3 is no longer supported
-
Added a new
EasyPostClientobject which encapsulates the API key. All functions are called against this client allowing for thread-safety (eg:$client->shipment->create())- All instance methods and the ability to have objects update in-place has been removed due to this rearchitecture. When updating objects or performing actions on them (eg: creating a label/scanform), you will need to assign the return value to a variable and use that moving forward instead of relying on the object getting updated without capturing the new return value
->save()instance methods are nowupdate()static methods- Functions no longer accept an API key as an optional parameter
- EasyPost objects no longer contain the logic associated with them; instead, we have
Servicesfor each EasyPost object. All the services are properties of anEasyPostClient. You can then call functions on a Service.
-
All function and parameter names are now camelCase. Previously we used a mix of camel and snake cases
-
Improves error exception handling (closes #7)
- Introduced ~2 dozen new exception types that extend from either
ApiExceptionorEasyPostException - ApiExceptions will behave like the previous EasyPostException class did. They will include a
message,errors,code,httpStatusandhttpBody. This class extends the more generic EasyPostException which only contains a message, used for exceptions thrown directly from this library - The
ecodeproperty of anApiExceptionis now justcode
- Introduced ~2 dozen new exception types that extend from either
-
Functions that previously returned
truenow return void as there is no response body from the API (eg:fundWallet,deletePaymentMethod,updateEmail,createList) -
Adopts
Guzzleas the HTTP client for this library. This should provide a much more consistent experience, better encoding, and faster request times in some cases -
The results of calling
allApiKeysis no longer double wrapped with the mode of the API key (these are still accessible inside of each object) -
Requestorhas moved toHttp, constants fromEasyPostnow live inConstants,Errormoved toException -
Occurances of
smartrateare nowsmartRateandSmartrateare nowSmartRateto match the documentation and API expectations -
Referralis nowReferralCustomerto better match documentation and API expectation -
validateWebhook,getLowestSmartRate, andreceiveEventare now underEasyPost\Util\Utilas they do not make any API calls and do not need the associated client object- The
receivefunction previously in the namespace ofEventis now calledreceiveEventsince it has been relocated to the generic Util namespace - Internal, library only utilities have been moved to
EasyPost\Util\InternalUtil
- The
-
The beta
EndShipperclass has been removed, please use the generally availableEndShipperclass -
Various properties and functions that were previously intended for private/protected use but were public have been corrected
-
All phpdoc type hints, descriptions, return values, and throws references were corrected or updated
-
All dependencies were bumped
-
Various other bug fixes and improvements were made along with addressing deprecation warnings
v6.0.0-rc1
- PHP 7.3 is no longer supported
- Added a new
EasyPostClientobject which encapsulates the API key. All functions are called against this client allowing for thread-safety (eg:$client->shipment->create())- All instance methods and the ability to have objects update in-place has been removed due to this rearchitecture. When updating objects or performing actions on them (eg: creating a label/scanform), you will need to assign the return value to a variable and use that moving forward instead of relying on the object getting updated without capturing the new return value
->save()instance methods are nowupdate()static methods- Functions no longer accept an API key as an optional parameter
- EasyPost objects no longer contain the logic associated with them; instead, we have
Servicesfor each EasyPost object. All the services are properties of anEasyPostClient. You can then call functions on a Service.
- All function and parameter names are now camelCase. Previously we used a mix of camel and snake cases
- Improves error exception handling (closes #7)
- Introduced ~2 dozen new exception types that extend from either
ApiExceptionorEasyPostException - ApiExceptions will behave like the previous EasyPostException class did. They will include a
message,errors,code,httpStatusandhttpBody. This class extends the more generic EasyPostException which only contains a message, used for exceptions thrown directly from this library - The
ecodeproperty of anApiExceptionis now justcode
- Introduced ~2 dozen new exception types that extend from either
- Functions that previously returned
truenow return void as there is no response body from the API (eg:fundWallet,deletePaymentMethod,updateEmail,createList) - Adopts
Guzzleas the HTTP client for this library. This should provide a much more consistent experience, better encoding, and faster request times in some cases - The results of calling
allApiKeysis no longer double wrapped with the mode of the API key (these are still accessible inside of each object) Requestorhas moved toHttp, constants fromEasyPostnow live inConstants,Errormoved toException- Occurances of
smartrateare nowsmartRateandSmartrateare nowSmartRateto match the documentation and API expectations Referralis nowReferralCustomerto better match documentation and API expectationvalidateWebhook,getLowestSmartRate, andreceiveEventare now underEasyPost\Util\Utilas they do not make any API calls and do not need the associated client object- The
receivefunction previously in the namespace ofEventis now calledreceiveEventsince it has been relocated to the generic Util namespace - Internal, library only utilities have been moved to
EasyPost\Util\InternalUtil
- The
- The beta
EndShipperclass has been removed, please use the generally availableEndShipperclass - Various properties and functions that were previously intended for private/protected use but were public have been corrected
- All phpdoc type hints, descriptions, return values, and throws references were corrected or updated
- All dependencies were bumped
- Various other bug fixes and improvements were made along with addressing deprecation warnings
v5.8.0
- [ADDED] Carrier account creation routes requests correctly for carriers that require custom workflows
- [FIXED] Instead of returning
nullwhen a list of child API keys cannot be returned (eg: when you callapi_keyson a non-user object) it will return an empty list. The expected impact to end users is extremely low - [IMPROVED] Retrieving child user API keys for users with large numbers of child users should see much faster results as we now break on the match instead of iterating the entire list
v5.7.0
- Adds Partner White Label (Referral) Support
- Adds ability to create a referral user
- Adds ability to update a referral user's email
- Adds ability to retrieve all referral users
- Adds ability to add a credit card to a referral user's account
- Adds support to specify an
$endShipperIdon the buy call of a Shipment - Removes unreachable code in the address verification flow that checked for the existence of an address (errors will continue to be thrown on failure)
v5.6.0
- Moves EndShipper out of beta into the general library namespace