Releases: EasyPost/easypost-java
Releases · EasyPost/easypost-java
v6.4.0
- Adds
getNextPage
function to each service which retrieves the next page of a collection when thehas_more
key is present in the response (eg:client.address.getNextPage(addressCollection)
) - Adds missing Event
status
property
v6.3.1
v6.3.0
- Adds beta
retrieveStatelessRates
function to get stateless rates - Adds
getLowestStatelessRate
function to filter the lowest stateless rate
v6.2.0
- Adds
all
function toPickup
to retrieve all pickups - Adds
retrieveAllPayloads
andretrievePayload
to retrieve all payloads or a single event payload
v6.1.0
- Adds new beta billing functionality for ReferralCustomer users
addPaymentMethod
can add a pre-existing Stripe bank account or credit card to your EasyPost accountrefundByAmount
refunds your wallet by a dollar amountrefundByPaymentLog
refunds you wallet by a PaymentLog ID
v6.0.0
Includes all the changes from v6.0.0-rc1
listed below in addition to the following:
- All constants are now defined in the top-level
Constants
class (com.easypost.Constants
)- Users who are utilizing the constants for exception message parsing should account for the new namespace
- Added support for creating/registering carrier accounts that require custom workflows (e.g. FedEx, UPS)
- Swapped the parameters for the following functions, making
id
the first argumentShipment.generateForm()
EndShipper.update()
CarrierAccount.update()
- Fixed a typo,
ServiceUnavailablError
is nowServiceUnavailableError
- Fixed a typo:
Smartrate
is nowSmartRate
,apikeys
is nowapiKey
,scanform
is nowscanForm
- Moved
validateWebook
,findLowestSmartrate
, andgetLowestSmartRate
from Services to Utilities since it does not required an EasyPost client object - Added a root level
APIException
class for all HTTP exceptions
Breaking Changes
- Library is now thread-safe
- Initialize an
EasyPostClient
object with an API key. Optionally set connection and readtime params - All methods (i.e.
create
,retrieve
,all
) exist in services, accessed via property of the client (eg:client.shipment.create()
)- E.g. Static method ->
Shipment shipment = client.address.create(params)
- E.g. Instance methods are now static ->
Shipment boughtShipment = client.shipment.buy(shipmentID, lowestRate)
- E.g. Static method ->
- All functions are now taking object ID instead of an object, which means the functions are returning the response value directly instead of updating the current object
- E.g.
Shipment boughtShipment = client.shipment.buy(shipmentID, lowestRate)
- E.g.
- Initialize an
- Improves error exception handling
- Specific error types for each category of error
- API error message may be an array rather than a string. Arrays will be concatenated (by comma) and returned as a string.
- Removes
createAndVerifyWithCarrier
function - Removes
verifyWithCarrier
function - Removes
getUpdate
andsetUpdate
from Tracker class - Removes all beta features and corrsponding unit tests
- Removes
serviceCode
fromRate
class since this value is internal use only - Removes invalid function
User.create()
since creating a child-user requires a name - Removes deprecated class
CreditCard
and its associated classesPrimaryPaymentMethod
,SecondaryPaymentMethod
, andBaseCreditCard
, please use alternativeBilling
class - Removes all the setters of each object
- Removes the
refresh()
function in all classes, please useretrieve()
function instead - Removes invalid functions that allow users to make an API request without providing required parameters
- Changes the type of Insurance
Amount
from Float to String - Changes the type
hasMore
in ReferralCustomerCollection fromboolean
toBoolean
- Renames some getters
- Pickup class:
getPickoutRates()
->getPickupRates()
- PaymentMethod class:
getPrimaryPaymentMethodObject()
->getPrimaryPaymentMethod()
- PaymentMethod class:
getSecondaryPaymentMethodObject()
->getSecondaryPaymentMethod()
- Pickup class:
- Converts return type from a boolean to void when we receive an empty response body from the API
fundWallet()
anddeletePaymentMethod()
in Billing classcreateList()
in Tracker classupdateEmail()
in ReferralCustomer class
- Changes the type
result
of Event fromEasyPostResource
toMap<String, Object>
Bug Fixes
- Adds two missing attributes in the Event class:
pendingUrls
andcompletedUrls
- AppEngine default timeout is now the same as connection timeout
v6.0.0-rc1
Breaking Changes
- Library is now thread-safe
- Initialize an
EasyPostClient
object with an API key. Optionally set connection and readtime params - All methods (i.e.
create
,retrieve
,all
) exist in services, accessed via property of the client (eg:client.shipment.create()
)- E.g. Static method ->
Shipment shipment = client.address.create(params)
- E.g. Instance methods are now static ->
Shipment boughtShipment = client.shipment.buy(shipmentID, lowestRate)
- E.g. Static method ->
- All functions are now taking object ID instead of an object, which means the functions are returning the response value directly instead of updating the current object
- E.g.
Shipment boughtShipment = client.shipment.buy(shipmentID, lowestRate)
- E.g.
- Initialize an
- Improves error exception handling
- Specific error types for each category of error
- API error message may be an array rather than a string. Arrays will be concatenated (by comma) and returned as a string.
- Removes
createAndVerifyWithCarrier
function - Removes
verifyWithCarrier
function - Removes
getUpdate
andsetUpdate
from Tracker class - Removes all beta features and corrsponding unit tests
- Removes
serviceCode
fromRate
class since this value is internal use only - Removes invalid function
User.create()
since creating a child-user requires a name - Removes deprecated class
CreditCard
and its associated classesPrimaryPaymentMethod
,SecondaryPaymentMethod
, andBaseCreditCard
, please use alternativeBilling
class - Removes all the setters of each object
- Removes the
refresh()
function in all classes, please useretrieve()
function instead - Removes invalid functions that allow users to make an API request without providing required parameters
- Changes the type of Insurance
Amount
from Float to String - Changes the type
hasMore
in ReferralCustomerCollection fromboolean
toBoolean
- Renames some getters
- Pickup class:
getPickoutRates()
->getPickupRates()
- PaymentMethod class:
getPrimaryPaymentMethodObject()
->getPrimaryPaymentMethod()
- PaymentMethod class:
getSecondaryPaymentMethodObject()
->getSecondaryPaymentMethod()
- Pickup class:
- Converts return type from a boolean to void when we receive an empty response body from the API
fundWallet()
anddeletePaymentMethod()
in Billing classcreateList()
in Tracker classupdateEmail()
in ReferralCustomer class
- Changes the type
result
of Event fromEasyPostResource
toMap<String, Object>
Bug Fixes
- Adds two missing attributes in the Event class:
pendingUrls
andcompletedUrls
- AppEngine default timeout is now the same as connection timeout
v5.10.0
- Adds support to pass an
EndShipper ID
when buying a shipment - Removes the unusable overload shipment
buy
functions that did not contain a rate parameter - Add White Label support:
- Create a referral customer
- Update a referral customer's email address
- List all referral customers
- Add a credit card to a referral customer's account
v5.9.0
- Moves EndShipper out of beta into the general library namespace
- Removes the unusable
ParcelCollection
andall
function of the Parcel object
v5.8.1
- Fixes a bug where an erroneous API call to retrieve smartrates would be made behind the scenes whenever a shipment object was updated locally from the API (such as when regenerating rates) due to the deprecated function name being called
getSmartrates
and the library assuming this was a getter and attempting to use it to update the shipment data