2020-04 release notes
We're no longer publishing API release notes. Instead, you can find the latest updates on Shopify APIs in our developer changelog. You can filter updates by area. For example, you can filter API updates by the API name and version, such as GraphQL Admin API changes in version 2025-04.
Release date | Date version is no longer supported |
---|---|
April 1, 2020 | July 1, 2021 |
Due to the late notice given for a breaking change in 2020-07, the availability of the 2020-04 API version has been extended until July 1, 2021 for existing apps.
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.
Anchor to Breaking changesBreaking 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.
Anchor to Price reductions removedPrice reductions removed
The productBulkAddPriceReductions
and productBulkRemovePriceReductions
GraphQL mutations have been removed as of 2020-04.
Anchor to New error codes for media objectsNew 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.
Anchor to New error codes for customers on Storefront APINew 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.
Anchor to REST Admin API changesREST Admin API changes
Anchor to Get localized country and province names with the Location resourceGet localized country and province names with the Location resource
The Location resource now returns the localized names for the location's country and province.
New properties
localized_country_name
property was added to Location resourcelocalized_province_name
property was added to Location resource
Anchor to Manage duties and taxes on orders,[object Object]Manage duties and taxes on orders
The Order, Refund, and AbandonedCheckout resources have been updated to help manage duties and taxes.
Anchor to Order updatesOrder 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.
Anchor to Refund updatesRefund updates
New properties
- Added list of
duties
to Refund resource.
Anchor to Abandoned checkout updatesAbandoned checkout updates
New properties
- Added
total_duties
property to Abandoned checkout resource.
Anchor to Fulfillment updatesFulfillment updates
New properties
- Added list of
duties
toline_items
object in Fulfillment resource.
Anchor to Update a fulfillment service's inventory management field,[object Object]Update a fulfillment service's inventory management field
Updated properties
inventory_management
property on FulfillmentService resource can now be edited.
Anchor to GraphQL Admin API changesGraph QL Admin API changes
Below are all the changes introduced in the 2020-04 version of the GraphQL Admin API.
Anchor to Remove bulk price reductionsRemove bulk price reductions
Anchor to BreakingBreaking
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 removed -
PriceReductionInput
was removed -
ProductBulkAddPriceReductionsPayload
was removed
Anchor to New error codes for media objectsNew error codes for media objects
Anchor to BreakingBreaking
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
Anchor to Updates to metafields,[object Object]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
Anchor to Generate account activation URL ,[object Object]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
Anchor to Manage duties and taxes on orders,[object Object]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 added -
RefundDutyRefundType
enum was added -
RefundDutyInput
was added -
RefundDuty
was addedUpdated mutations
refundDuties
optional argument was added to refundCreate.
Anchor to Retrieve filename of videos and 3D models ,[object Object]Retrieve filename of videos and 3D models
The Video and Model3d object types now return the filename field.
New fields
Anchor to Updates to delivery profiles,[object Object]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 DeliveryLocationGroupZoneNew types
-
DeliveryMethodDefinitionType
was added -
DeliveryMethodDefinitionCounts
was added
Anchor to Query fulfillment service provider,[object Object]Query fulfillment service provider
You can now query a fulfillment service by ID.
New fields
fulfillmentService
was added toQueryRoot
Anchor to Storefront API changesStorefront API changes
Below are all the changes introduced in the 2020-04 version of the Storefront API.
Anchor to New error code for customerNew error code for customer
Anchor to BreakingBreaking
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
Anchor to Additional fields and types added for enhanced visibility into ordersAdditional 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 added -
OrderFulfillmentStatus
was added -
OrderFinancialStatus
was addedNew fields
-
discountedTotalPrice
was added to object type OrderLineItem -
currentQuantity
was added to object type OrderLineItem -
originalTotalPrice
was added to object type OrderLineItem -
originalTotalPrice
was added to object type Order -
fulfillmentStatus
was added to object type Order -
financialStatus
was added to object type Order -
edited
was added to object type Order -
currentTotalTax
was added to object type Order -
currentTotalPrice
was added to object type Order -
currentSubtotalPrice
was added to object type Order -
canceledAt
was added to object type Order -
cancelReason
was added to object type Order
Anchor to Updates to metafields,[object Object]Updates to metafields
You can now return the updatedAt
and createdAt
dates for metafields.
New fields
updatedAt
field was added to object type MetafieldcreatedAt
field was added to object type Metafield
Anchor to Updates to tokenized payment checkout,[object Object]Updates to tokenized payment checkout
A new checkoutComplete mutation with updated token type requirements.
New mutations
-
checkoutCompleteWithTokenizedPaymentV3
was addedNew types
-
PaymentTokenType
was added -
TokenizedPaymentInputV3
was added -
CheckoutCompleteWithTokenizedPaymentV3Payload
was added
Anchor to Activate customer accounts by URL ,[object Object]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
Anchor to Create customer access tokens using multipass ,[object Object]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 addedNew types
-
CustomerAccessTokenCreateWithMultipassPayload
was added
Anchor to Updates to product and product variants ,[object Object]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
Anchor to Query the unit price of checkout line items ,[object Object]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
Anchor to Corresponding Buy SDK versionsCorresponding 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 |