2019-07 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 |
---|---|
July 1, 2019 | July 1, 2020 |
The 2019-07 release focuses on improving performance by removing page-based pagination and introducing a more efficient way to paginate through resources using cursor-based pagination. Cursor-based pagination has been implemented across various endpoints, and more are expected to support cursor-paged pagination in upcoming versions.
The GraphQL Admin API is growing in 2019-07. Among some of the GraphQL API changes is the introduction of delivery profiles, which now gives developers the ability to set per-product and per-location shipping rules. Support for billing and automatic discounting is also now available in GraphQL. Metafields can now be accessed and published to the Storefront API in 2019-07.
What’s new in 2019-07
-
Storefront API was added to our admin versioning scheme
-
Page-based pagination has been replaced by cursor-based pagination across multiple REST endpoints
-
Delivery profiles was added to allow you to set per-product and per-location shipping rules
-
Added GraphQL support for billing
-
Improved sorting of metafields
-
Improved interoperability for consuming webhook data with the addition GraphQL Admin API IDs
-
Metafields were made available through Storefront API
-
New discount types added in GraphQL
Below are all the changes introduced to the REST Admin API, the GraphQL Admin API, and the Storefront API in 2019-07.
Anchor to Breaking changesBreaking changes
These changes require special attention as failure to migrate can result in broken requests in the future.
Anchor to PaginationPagination
Page-based pagination has been removed, and has been replaced with cursor-based pagination on many endpoints.
To migrate, see our guide on cursor-based pagination.
Anchor to Featured field removed from CollectFeatured field removed from Collect
The featured
field was removed from the collect endpoint.
To migrate, update the URL of all your requests to the collect endpoint to API version 2019-07
or later.
Anchor to GraphQL Admin ID added to webhooksGraph QL Admin ID added to webhooks
Added the admin_graphql_api_id
property to webhook payloads for many resources.
This is a breaking change exclusive to apps that use versions of the shopify_app
gem lower than 10.0.0 and Rails versions lower than 5.2.1.1. See the shopify_app
gem changelog for more details.
To migrate, update webhook API version to API version 2019-07
or later.
Anchor to Developer previewDeveloper preview
There is no developer preview for the API changes in version 2019-07. Use a development store for your development environments.
To use the new API features, call the 2019-07 version of the API.
Anchor to REST Admin API changesREST Admin API changes
- Added new route
/admin/api/2019-07/abandoned_checkouts.json
to access the Abandoned checkouts API.
- Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/article_saved_searches.json
.
- Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/balance_transaction_saved_searches.json
.
- Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/blog_saved_searches.json
.
- Removed the
X-Shopify-Checkout-Version
header support fromGET /admin/checkouts.json
.
- Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/checkout_saved_searches.json
.
- Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/collects.json
. - Removed the
featured
property.
- Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/collection_listings.json
. - Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/collection_listings/#{collection_listing_id}/product_ids.json
.
Anchor to CollectionsCollections
- Requests that pass a value for
title
will match only if the value is the same as the complete title. Partial matches aren't supported. - Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/collections.json
.
- Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/collection_saved_searches.json
.
Anchor to CommentSavedSearchComment Saved Search
- Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/comment_saved_searches.json
.
- Removed the ability to update a province's code.
- Added
tax_exemptions
property.
- Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/customer_saved_searches.json
.
- Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/discount_code_saved_searches.json
.
- Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/draft_order_saved_searches.json
.
- Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/events.json
.
- Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/file_saved_searches.json
.
- Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/gift_card_saved_searches.json
.
- Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/inventory_transfer_saved_searches.json
.
- By default, metafields are now sorted by ID instead of namespace and key.
- Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/metafields.json
.
- Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/order_saved_searches.json
.
- Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/page_saved_searches.json
.
- Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/price_rule_saved_searches.json
.
- Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/products.json
. - Requests that pass a value for
title
will match only if the value is the same as the complete title. Partial matches aren't supported.
- Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/product_listings.json
.
- Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/product_saved_searches.json
.
- Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/variants/search.json
.
- Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/product_variant_saved_searches.json
.
- Removed the ability to update a province's code.
- Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/redirect_saved_searches.json
.
- Added
profile_id
,location_group_id
, andadmin_graphql_api_id
properties. Learn more.
- Removed the
page
filter, and replaced page-based pagination with cursor-based pagination forGET /admin/api/2019-07/transfer_saved_searches.json
.
- Added the
admin_graphql_api_id
property to webhook payloads for many resources for easier interoperability. The property returns the resource's GraphQL Admin API ID in the global ID format:gid://shopify/Order/1234
.
This is a breaking change exclusive to apps that use versions of the shopify_app
gem lower than 10.0.0 and Rails versions lower than 5.2.1.1. See the shopify_app
gem changelog for more details.
Anchor to GraphQL Admin API changesGraph QL Admin API changes
Anchor to Schema changesSchema changes
Anchor to Changes to QueryRootChanges to Query Root
The following fields were added
activatedCarrierServices
availableCarrierServices
automaticDiscounts
automaticDiscountSavedSearches
automaticDiscountNodes
automaticDiscountNode
automaticDiscount
carrierService
codeDiscountSavedSearches
codeDiscountNodes
codeDiscountNode
codeDiscountNodeByCode
deliveryProfile
deliveryProfiles
deliverySettings
locationsAvailableForDeliveryProfiles
metafieldStorefrontVisibilities
metafieldStorefrontVisibility
Anchor to Changes to objectsChanges to objects
The following fields were added
-
activeSubscriptions
was added to AppInstallation -
activityListUrl
was added to MarketingActivity -
allSubscriptions
was added to AppInstallation -
createdAt
was added to ShopifyPaymentsBankAccount -
credits
was added to AppInstallation -
deliveryProfiles
was added to ShopFeatures -
duplicateSkuCount
was added to InventoryItem -
oneTimePurchases
was added to AppInstallation -
ownerType
was added to Metafield -
subscriptions
was added to AppInstallationThe following objects were added
Anchor to Changes to input objectsChanges to input objects
The following fields were added
-
metafields
was added to CollectionInput -
metafields
was added to OrderInput -
title
was added to MarketingActivityUpdateInputThe following input objects were added
Anchor to Changes to mutationsChanges to mutations
The following mutations were added
- appCreditCreate
- appPurchaseOneTimeCreate
- appSubscriptionCancel
- appSubscriptionCreate
- appSubscriptionLineItemUpdate
- appUsageRecordCreate
- deliveryProfileCreate
- deliveryProfileRemove
- deliveryProfileUpdate
- deliverySettingUpdate
- discountCodeFreeShippingUpdate
- discountCodeFreeShippingCreate
- discountCodeDelete
- discountCodeDeActivate
- discountCodeBxgyUpdate
- discountCodeBxgyCreate
- discountCodeBasicUpdate
- discountCodeBasicCreate
- discountCodeActivate
- discountAutomaticDelete
- discountAutomaticDeActivate
- discountAutomaticBxgyUpdate
- discountAutomaticBxgyCreate
- discountAutomaticBulkDelete
- discountAutomaticBasicUpdate
- discountAutomaticBasicCreate
- discountAutomaticActivate
kitSkillTriggerRequest
- metafieldStorefrontVisibilityCreate
- metafieldStorefrontVisibilityDelete
- shippingPackageDelete
- shippingPackageMakeDefault
- shippingPackageUpdate
Anchor to Changes to enumsChanges to enums
The following enum values were added
-
APP_PURCHASES_ONE_TIME_UPDATE
was added to WebhookSubscriptionTopic -
APP_SUBSCRIPTIONS_UPDATE
was added to WebhookSubscriptionTopic -
DISCOUNTS_AUTOMATIC
was added to ResourceExportableType -
DISCOUNTS_AUTOMATIC
was added to ResourceTypeThe following enum types were added
Anchor to Other changesOther changes
- Argument
sort: ShopTagSort
was added toShop.orderTags
field
Anchor to Storefront APIStorefront API
Version 2019-07
is the base version of the GraphQL API. This base version is a snapshot of the existing API, which means that there are no changes in this initial release. You can begin adopting API calls to this version in your apps without needing to make changes to your code base.
We strongly recommend that you update your apps to call a stable API version. Updating your apps to use the latest stable version lets you spend less time configuring your apps to be version aware, and helps you to be first to market by adopting new API changes when they are released.
Anchor to Corresponding Buy SDK versionsCorresponding Buy SDK versions
SDK | Supported Versions |
---|---|
Mobile Buy SDK Android | 3.5.0 |
Mobile Buy SDK iOS | 3.6.0 |
Unity Buy SDK | 1.1.0 |
JS Buy SDK | 2.6.1, 2.7.0, 2.7.1, 2.7.2 |
Buy Button JS | 0.12.0, 0.12.1, 1.0.0, 1.0.1, 1.0.2, 1.0.3, 1.0.4, 2.0.0 |