- Added Orders
- Added Pickups
- Added CirclCi
- Allow multiple accounts in a single service/application
- Updated rest client depndency
- Remove json dependency
- Fix require relative issues
- Fix shipment create parcel -> parcels
- Fix rate call for Shipments
- Removed deprecated methods
- Removed hash payload in GET
- Made RestClient timeouts configurable
- Suppressed Hashie warnings
- Updated rest client dependency
- Version 3 changes
- Object fields removed/updated
- Credentials inserted for tests
- Add Batch API with example code
- Creation
- Retrieval
- Adding shipments to Batch objects
- Removing shipments from Batch objects
- Purchasing
- Add Track API with example code
- Retrieving tracking status of a shipment
- Registering a tracking webhook
- Add mock tests using VCR (for Batch and Track API)
- Fixed bug preventing address validation
- Removed trailing slash from base URL, added spec test to ensure this configuration
- Added address validation example
- Updated basic shipment example to include how to access the Shippo object id
- Fixed bug to send request with correct API version header
- Updated README.md
- now possible to send API version
- Rails5 Compatibility via relaxed dependencies
- removing mime-types dependency
- relaxing activesupport to allow version 5
- reorganizing exceptions to enable subclassing with additional parameters and more readable #to_s method
- adding bin/console for easy irb-ing
- Handled RestClient::BadRequest to show response content
- Removed gem dependency
colored2
as directly decorating object and string was causing Rals Rack to throw errors when users uploaded large files. - Fixed url for
CarrierAccount
- README fixes
- Added a concept of List transformer in order to properly coerce received hashes into proper model objects
- updated to_s and inspect on models and ApiObject
- added a large number of new tests
- Library refactoring and reorganization
- Consolidating operations under the Shippo::API::Operations namespace
- Instead of doing
include <operation module>
using newoperations :list, :create, ...
class methods - Instead of setting a global class instance variable
@custom_url
, use new class methodurl "/custom/uri"
to set the custom URI component - Added
actievesupport
gem dependency for#pluralize
and#constantize
instead of rolling our own - Token should now be set via
Shippo::API.token =
, althoughShippo.api_token =
is also supported - Renamed
Api
toAPI
in line with Ruby conventions - Consolidated
Resource
andContainerObject
into one class - Extracted a new class
Shippo::API::Request
- Extracted
#validate
and#rates
into operations - Created 2nd-level namspaces to separate models from operations from utility classes such as
Request
andResource
- Consolidated models under Shippo namespace
- Converted existing unit test into an RSpec
- Improved overall exception handling
- split up and organized Exceptions
- mapping TCP-specific errors to
ConnectionError
- mapping JSON parser and server errors
- Improved the Example script
- Added exception handling clause similar to how the API should be used in real life
- Reading API token from the environment
- Moved example script into
bin/example
- Miscellaneous:
- Reformatting and updated README
- Added a rake task for documentation generation
rake shippo:doc
- Added Yardoc parameters and class descriptions to key entities
- Updated syntax for Ruby 2+
- Renamed the gem from
shippo
toshippo-api
.
- added support for Carrier Accounts
- changed auth to use ShippoToken (vs username and password)
- added optional parameter for shipment.rates()
- added validate method to address
- added manifest, customs_item, customs_declaration, and refund classes