All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning.
- Pluralized namespace to APIs for consistency. Direct references to APIs will need to be updated from
Peddler::API::SomeAPI
toPeddler::APIs::SomeAPI
. The shorthand methodPeddler.some_api
remains unchanged.
- Allow custom parser
- Marketplace.id and Marketplace.ids shorthands
- Add new operations to Fulfillment Inbound v2024-03-20
- Add upload_feed_document method to Feeds API
- Set failed http response in a custom attribute instead of cause
3.0.0 - 2024-10-04
- Add new APIS
- Application Integrations 2024-04-01
- Finances 2024-06-19
- Invoices 2024-06-19
- Implement sandbox mode
- Add convenience methods for the APIs at the top level
- Add (back) marketplace model
- Refactor token to handle authorization workflows
3.0.0.beta1 - 2024-09-15
- Complete rewrite—now wraps the Selling Partner API (SP-API)
- Add Poland endpoint
2.4.4 - 2020-10-30
- Add Sweden endpoint
2.4.3 - 2020-08-07
- Fix file permission issue in published gem
2.4.2 - 2020-08-03 [YANKED]
- Work around another bad charset name?
- Parse XML browse tree data reports
- Do not support Ruby 2.4
2.4.1 - 2020-05-05
- Support for binary files in the Feeds API
2.4.0 - 2020-04-13
- Add Netherlands endpoint
- Work around bad charset name
2.3.0 - 2020-01-27
- Add Egypt, Saudi Arabia, and Singapore endpoints
- Add Easy Ship API
- Add Shipment Invoicing API
- Support Ruby 2.7
- Remove China. It is no longer supported starting 1st October 2019.
- Remove Off-Amazon Payments. This is no longer under the MWS umbrella and has its own official Ruby client.
2.2.0 - 2019-09-04
- Add Amazon United Arab Emirates to marketplaces.
- Fix query format in FulfillmentOutboundShipment#GetFulfillmentPreview.
- Handle missing error response in HTTP status error
2.1.1 - 2019-04-05
- Parse flat files correctly if charset passed in response header.
- Do not support Ruby 2.3.
2.1.0 - 2019-02-15
- Add Amazon Turkey to marketplaces.
- Work around upstream bug in FulfillmentInboundShipment#get_prep_instructions_for_asin.
2.0.4 - 2018-07-02
- Properly massage inbound shipment items in FulfillmentInboundShipment#create_inbound_shipment and FulfillmentInboundShipment#update_inbound_shipment_plan.
- Require inbound shipment items argument.
2.0.3 - 2018-06-29
- Structure nested structured lists.
2.0.2 - 2018-06-22
- Parse flat files with blank rows.
2.0.1 - 2018-06-01
- Fix FulfillmentInboundShipment#create_inbound_shipment_plan.
2.0.0 - 2018-03-02
- Allow using country code instead of ID when setting marketplace in a client.
- Do not default to primary marketplace in any operation.
- Shorten #primary_marketplace_id to #marketplace in client.
- Use custom errors for MWS specific errors.
- Update list of error codes created up front.
- Add mws prefix to MWS header accessors.
- Fix parameters of FulfillmentOutboundShipment#list_all_fulfillment_orders.
- Remove custom error callbacks.
- Remove deprecated methods in Client.
- Remove ENV var for Client#primary_marketplace_id.
- Remove ENV var for Client#merchant_id.
- Do not support Ruby 2.2.
1.6.7 - 2018-03-02
- Improve enabling new error handler.
- Do not support Ruby 2.1.
1.6.6 - 2018-02-22
- Bump mininum version of Jeff dependency because Amazon no longer supports the deprecated Content-MD5 header.
- Leave it up to user to use Hash#dig polyfill.
- Remove errors there's no value in creating up front.
1.6.5 - 2017-12-08
### Changed
- Optional arguments when instantiating errors for more legible tests.
1.6.4 - 2017-12-08
- Add InternalError and InvalidAccessKeyId error codes.
1.6.3 - 2017-09-25
- Add Amazon Brazil marketplace.
- Updated hostnames for MWS endpoints.
1.6.2 - 2017-09-13
- Add Amazon Australia marketplace.
- Add ListReturnReasonCodes and CreateFulfillmentReturn operations to the FulfillmentOutboundShipment client.
- Parse UTF8-encoded flat files correctly.
1.6.1 - 2017-05-24
- Scrub body of flat file response.
- Encode flat file request bodies.
- Clear request body after posting successfully.
- Handle when headers have no quota metadata.
1.6.0 - 2017-02-15
- Parse MWS headers.
- Delegate to Hash#dig in Peddler::XMLParser.
- Add InvalidRequest and MalformedInput to known error codes.
- Use ContentMD5Value parameter instead of Content-MD5 header. To retain old behaviour, peg version of the Jeff gem to ~> 1.5.
- Post multibyte characters correctly.
- Fix parsing XML with 'Message'.
1.5.0 - 2017-01-13
- Add GetInboundGuidanceForSKU, GetInboundGuidanceForASIN, GetPreorderInfo, ConfirmPreorder, GetPrepInstructionsForSKU, GetPrepInstructionsForASIN, GetUniquePackageLabels, and GetPalletLabels operations to the FullfillmentInboundShipment client.
- Add known error types to Peddler::Errors.
- Don't camelise symbol keys with capital letters.
- Parse XML reports.
1.4.1 - 2016-09-03
- Make Errors::Builder thread-safe.
- Support pallet lists in the FullfillmentInboundShipment/PutTransportContent operation.
1.4.0 - 2016-08-15
- Add GetPackageTrackingDetails operation to the FulfillmentOutboundShipment client.
- Add GetMyFeesEstimate operation to the Products client.
- Raise error if one of two required keywords is not specified when listing orders.
- Add optional handler that makes API errors more expressive. This will become default next major version bump.
- Remove obsolete Webstore API, Cart Information, and Customer Information APIs.
- Parse summaries of non-English flat files.
- Fix Excon error handling after breaking changes in its 0.50.0 release.
1.3.0 - 2016-01-21
- Add Merchant Fulfillment API.
1.2.0 - 2016-01-06
- Rewrite VCR Matcher.
1.1.1 - 2015-12-27
- Encode with CP-1252 in place of ISO-8859-1.
- Encode with Windows-31J in place of Shift_JIS.
- Fix CancelFeedSubmissions operation in the Feeds client.
1.1.0 - 2015-10-28
- Add GetLowestPricedOffersForSKU and GetLowestPricedOffersForASIN operations to the Products client.
1.0.2 - 2015-10-25
- Improve XML parser: not all top nodes end with "Result"
1.0.1 - 2015-09-25
- Extract VCR matcher to a reusable file
- Improve XML parser: handle responses with no Content-Type header