2023.04.20 - Enhanced Error Codes
API Changes
Introduced new error codes:
CartErrorCode.CART_MODIFICATION_FORBIDDEN
StoreErrorCode.STORE_MODIFICATION_FORBIDDEN
SubmitStoreResultErrorCode.ALREADY_SUBMITTED
SubmitCartResultErrorCode.ALREADY_SUBMITTED
Modification and submission of an already submitted cart is now forbidden.
Previous behavior:
- Cart modification: A submitted cart could be modified with no restrictions.
- Cart submission: A submitted cart could be submitted again. The response was the same as for the first submission, but the actual submission (payment transactions/placing orders) did not happen.
New behavior:
- Cart modification: A cart error with
CART_MODIFICATION_FORBIDDEN
code is returned when attempting to modify a cart with all stores submitted. A store error withSTORE_MODIFICATION_FORBIDDEN
code is returned when attempting to modify a cart with a particular store submitted. - Cart submission: A cart error with
ALREADY_SUBMITTED
code is returned when attempting to submit a cart with all stores submitted. A store error withALREADY_SUBMITTED
code is returned when attempting to submit a cart with a particular store submitted.
Updated Country
enum - added the following country codes:
- "Kosovo"
XK
- "Ascension Island"
AC
- "Tristan da Cunha"
TA
- "Turkey"
TR
shipsToCountries
field has been added toAmazonStore
andShopifyStore
types. This field returns an array of country codes of countries available for shipping for this store.
Note: The list represents all countries supported by the store, but some products may not be shippable to all these countries.
BuyerIdentity:city
field is now optional.
- Introduced a new error code:
OfferErrorCode.PROVINCE_REQUIRED_FOR_PROVIDED_COUNTRY
Presence of BuyerIdentity:provinceCode is now validated if AmazonStore.offer or ShopifyStore.offer field is queried. provinceCode must be provided for countries that have provinces/states.
- Submitted cart is now fully idempotent:
selectedShippingMethod
field is added toAmazonOffer
andShopifyOffer
. The field is populated for an already submitted cart and contains shipping information that was provided upon cart submission. All other offer fields for a submitted cart return null or an empty array. Querying the submitted cart will always result in the same data.
integratedShopifyStore
query was added, it allows getting paginated shopify store collections`shopifyCollection
query was added , it allows getting shopify store collection metadata, includingtitle
anddescription
as well as products inside the collection. The products list can be paginated too.- Added a city validation for buyer identity and billing address - it checks if the city exists for a provided country and returns
BUYER_IDENTITY_INVALID_CITY
error code if the city was not found.
Resolved Issues
Validation of BuyerIdentity:provinceCode
is now case-insensitive.