2020-04 release notes
Release date | Date version is no longer supported |
---|---|
April 1, 2020 | July 1, 2021 |
The 2020-04 release contains changes to support order editing on the Storefront API, viewing and refunding duties on orders on the Admin API, and offers more information about media that has been embedded on product pages through product media.
What's new in 2020-04
The following features were added in version 2020-04 of Shopify’s APIs:
Duties and Taxes are now available for testing through the "Duties and taxes" developer preview. Duties are calculated per line item on international orders, and can be viewed as a part of the LineItem in GraphQL. Visit our doc on testing with developer preview to get started.
Additional fields were added to the Order and OrderLineItem objects in the Storefront API to better support order editing and provide better visibility into an order's state.
3D models and videos embedded on product pages using Media will now expose the filename, which allows for easier identification of relevant resources.
Breaking changes
Anchor link to section titled "Breaking changes"These changes require special attention. If your app uses these API resources, and you don’t adjust your usage of the resources according to the following instructions, then your app might break when you update to this API version.
Price reductions removed
Anchor link to section titled "Price reductions removed"The productBulkAddPriceReductions
and productBulkRemovePriceReductions
GraphQL mutations have been removed as of 2020-04.
New error codes for media objects
Anchor link to section titled "New error codes for media objects"New values have been added to the MediaErrorCode type to better represent the different types of errors that can occur when creating media objects.
New error codes for customers on Storefront API
Anchor link to section titled "New error codes for customers on Storefront API"More specific error codes have been added to the CustomerErrorCode when a customer provides an invalid email domain during checkout. These errors were previously returned as generic invalid customer or token errors.
REST Admin API changes
Anchor link to section titled "REST Admin API changes"Get localized country and province names with the Location resource
Manage duties and taxes on orders
The Order, Refund, and AbandonedCheckout resources have been updated to help manage duties and taxes.
Order updates
Anchor link to section titled "Order updates"New properties
- Added
current_total_duties_set
property to Order resource. - Added
original_total_duties_set
property to Order resource. - Added list of
duties
toline_items
object in Order resource.
Updated properties
- Updated
total_price_set
property to include any duties that have been charged during checkout on an international order.
Refund updates
Anchor link to section titled "Refund updates"New properties
- Added list of
duties
to Refund resource.
Abandoned checkout updates
Anchor link to section titled "Abandoned checkout updates"New properties
- Added
total_duties
property to Abandoned checkout resource.
Fulfillment updates
Anchor link to section titled "Fulfillment updates"New properties
- Added list of
duties
toline_items
object in Fulfillment resource.
Update a fulfillment service's inventory management field
Updated properties
inventory_management
property on FulfillmentService resource can now be edited.
GraphQL Admin API changes
Anchor link to section titled "GraphQL Admin API changes"Below are all the changes introduced in the 2020-04 version of the GraphQL Admin API.
Remove bulk price reductions
Bulk price reduction mutations and associated fields have been removed.
Removed fields
productBulkRemovePriceReductions
was removed from object typeMutation
productBulkAddPriceReductions
was removed from object typeMutation
Removed types
ProductBulkRemovePriceReductionsPayload
was removedPriceReductionInput
was removedProductBulkAddPriceReductionsPayload
was removed
New error codes for media objects
New values have been added to the MediaErrorCode type to better represent the different types of errors that can occur when creating media objects.
Updated types
EXTERNAL_VIDEO_INVALID_ASPECT_RATIO
value was added to enum MediaErrorCodeMODEL3D_VALIDATION_ERROR
value was added to enum MediaErrorCodeMEDIA_TIMEOUT_ERROR
value was added to enum MediaErrorCodeIMAGE_PROCESSING_FAILURE
value was added to enum MediaErrorCodeIMAGE_DOWNLOAD_FAILURE
value was added to enum MediaErrorCodeEXTERNAL_VIDEO_UNLISTED
value was added to enum MediaErrorCodeEXTERNAL_VIDEO_NOT_FOUND
value was added to enum MediaErrorCodeVIDEO_VALIDATION_ERROR
value was added to enum MediaErrorCode
Updates to metafields
You can now return the updatedAt
and createdAt
dates for metafields and private metafields.
New fields
updatedAt
field was added to object type PrivateMetafieldcreatedAt
field was added to object type PrivateMetafieldupdatedAt
field was added to object type MetafieldcreatedAt
field was added to object type Metafield
Generate account activation URL
You can now generate an account activation URL that customers can use to activate their account.
New mutations
customerGenerateAccountActivationUrl
was added.
New types
CustomerGenerateAccountActivationUrlPayload
was added
Manage duties and taxes on orders
You can now manage the taxes and duties applied to orders that ship internationally.
New fields
totalDutiesSet
field was added to object typeSuggestedRefund
refundDuties
field was added to object typeSuggestedRefund
refundDuties
optional argument was added toSuggestedRefund
duties
field was added to object typeRefund
duties
field was added to object typeLineItem
originalTotalDutiesSet
field was added to object typeOrder
currentTotalDutiesSet
field was added to object typeOrder
refundDuties
field was added to input object typeRefundInput
New types
Duty
was addedRefundDutyRefundType
enum was addedRefundDutyInput
was addedRefundDuty
was added
Updated mutations
refundDuties
optional argument was added to refundCreate.
Retrieve filename of videos and 3D models
Updates to delivery profiles
The following changes have been made to delivery profiles:
Updated fields
DeliveryMethodDefinitionType
argument was added to fieldDeliveryLocationGroupZone.methodDefinitions
New fields
methodDefinitionCounts
field was added to object type DeliveryLocationGroupZone
New types
DeliveryMethodDefinitionType
was addedDeliveryMethodDefinitionCounts
was added
Query fulfillment service provider
You can now query a fulfillment service by ID.
New fields
fulfillmentService
was added toQueryRoot
Storefront API changes
Anchor link to section titled "Storefront API changes"Below are all the changes introduced in the 2020-04 version of the Storefront API.
New error code for customer
A new error code that's returned when a customer provides an invalid email domain during checkout.
Updated types
BAD_DOMAIN
value was added to enumCustomerErrorCode
Additional fields and types added for enhanced visibility into orders
You can now query order editing information using the Storefront API and have better visibility into order state.
New types
OrderCancelReason
was addedOrderFulfillmentStatus
was addedOrderFinancialStatus
was added
New fields
discountedTotalPrice
was added to object type OrderLineItemcurrentQuantity
was added to object type OrderLineItemoriginalTotalPrice
was added to object type OrderLineItemoriginalTotalPrice
was added to object type OrderfulfillmentStatus
was added to object type OrderfinancialStatus
was added to object type Orderedited
was added to object type OrdercurrentTotalTax
was added to object type OrdercurrentTotalPrice
was added to object type OrdercurrentSubtotalPrice
was added to object type OrdercanceledAt
was added to object type OrdercancelReason
was added to object type Order
Updates to metafields
Updates to tokenized payment checkout
A new checkoutComplete mutation with updated token type requirements.
New mutations
checkoutCompleteWithTokenizedPaymentV3
was added
New types
PaymentTokenType
was addedTokenizedPaymentInputV3
was addedCheckoutCompleteWithTokenizedPaymentV3Payload
was added
Activate customer accounts by URL
You can now activate customer accounts using a generated URL.
New mutations
customerActivateByUrl
was added.
New types
CustomerActivateByUrlPayload
was added
Create customer access tokens using multipass
You can now create customer access tokens for the Storefront API using multipass.
Updated types
INVALID_MULTIPASS_REQUEST
value was added to enumCustomerErrorCode
New mutations
customerAccessTokenCreateWithMultipass
was added
New types
CustomerAccessTokenCreateWithMultipassPayload
was added
Updates to product and product variants
You can now view additional inventory and stock information on products and product variants.
New fields
totalInventory
field was added to object typeProduct
compareAtPriceRange
field was added to object typeProduct
quantityAvailable
field was added to object typeProductVariant
currentlyNotInStock
field was added to object typeProductVariant
Query the unit price of checkout line items
You can now query the unit price of checkout line items.
New fields
unitPrice
field was added to object typeCheckoutLineItem
Corresponding Buy SDK versions
Anchor link to section titled "Corresponding Buy SDK versions"SDK | Supported Versions |
---|---|
Mobile Buy SDK Android | 5.0.0 |
Mobile Buy SDK iOS | 4.0.0 |
Unity Buy SDK | N/A |
JS Buy SDK | 2.10.0 |
Buy Button JS | 2.1.3 |