> Note: > We're no longer publishing API release notes. Instead, you can find the latest updates on Shopify APIs in our [developer changelog](https://shopify.dev/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. <table> <tr> <th>Release date</th> <th>Date version is no longer supported</th> </tr> <tr> <td>October 1, 2020</td> <td>October 1, 2021</td> </tr> </table> The 2020-10 release contains many changes to improve the experience of the Shopify API. This release includes the addition of checksums to the assets API, improvements to order editing, support for bulk operations when managing discounts, the addition of shipping lines and delivery methods to orders and fulfillment orders, and improvements to product management and filtering. This release also includes an entirely new API that allows apps to read and manage shop [Legal Policies](/docs/api/admin-graphql/latest/objects/shoppolicy). **What’s new in 2020-10** The following features were added in version 2020-10 of Shopify's APIs: - The [Asset](/docs/api/admin-rest/latest/resources/asset) resource now includes a `checksum` property. This property dramatically improves the performance of [Theme Kit](/docs/storefronts/themes/tools/theme-kit). - Apps can now edit orders that they created. To determine if your app can edit an order on Shopify, you can query the `merchantEditable` field on the [Order](/docs/api/admin-graphql/latest/objects/order) object. - Apps can now add discounts to line items while editing orders. - The Discounts API has received several upgrades in this version. It's now possible to retrieve usage counts for automatic discounts and perform bulk mutations to [enable](/docs/api/admin-graphql/latest/mutations/discountcodebulkactivate), [disable](/docs/api/admin-graphql/latest/mutations/discountcodebulkdeactivate), or [delete](/docs/api/admin-graphql/latest/mutations/discountcodebulkdelete) large numbers of discounts codes with a single request. - The [Order](/docs/api/admin-graphql/latest/objects/order) object now includes `shippingLines`, a list of line items that contains the shipping costs. - [Fulfillment Orders](/docs/api/admin-graphql/latest/objects/fulfillmentorder) now include a `DeliveryMethodType`, which specifies how an order was delivered. Possible values include `LOCAL`, `NONE`, `PICK_UP`, `RETAIL`, or `SHIPPING`. - [Delivery profiles](/docs/apps/build/purchase-options/deferred/delivery-and-deferment/build-delivery-profiles) now have support for `profiles/create`, `profiles/update`, and `profiles/delete` webhook topics. - The [Product](/docs/api/admin-rest/latest/resources/product) resource now supports a variety of statuses to manage and filter products: `draft`, `active`, and `archived`. - Apps can now read and write [policies](/docs/api/admin-graphql/latest/objects/shoppolicy) that merchants have configured for their store, such as their refund or privacy policies. ## 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. ### Tax field data As of version 2020-10, you can no longer create or update any tax field data using the [Country](/docs/api/admin-rest/latest/resources/country) or [Province](/docs/api/admin-rest/latest/resources/province) resources. ### Include risk analysis header We've deprecated the `include-risk-analysis` header that includes order `risks` and `risk analysis` objects in the Order payload. The existence of this deprecated header was not previously documented. The [REST Admin API](/docs/api/admin-rest/latest/resources/order-risk) and [GraphQL Admin API](/docs/api/admin-graphql/latest/objects/orderrisk) are not affected by this change. If you request the header using an API version earlier than 2020-10, then the header will still be returned. ### Type filter parameter We've deprecated the `type` filter parameter on `CodeDiscountQuery`. Use `discount_type` instead. For more information about deprecated fields, refer to [QueryRoot](/docs/api/admin-graphql/latest/objects/queryroot#deprecated-fields-2020-10). ### Deprecated fields in Refund and RefundLineItem objects We've deprecated the following fields in the GraphQL Admin API: - `restocked` field in the [`Refund`](/docs/api/admin-graphql/latest/objects/refund) object. Use `RefundLineItem.restockType` instead. - `refundType` field in the [`RefundLineItem`](/docs/api/admin-graphql/latest/objects/refundlineitem) object. Use `RefundLineItem.restockType` instead. ## GraphQL Admin API changes Below are all the changes currently introduced in the 2020-10 version of the GraphQL Admin API. <div class="accordion-container"> <div class="accordion-controls"> <button class="accordion-control" data-accordion-control-type="expand-all" type="button">Expand all</button> </div> <div class="accordion-content-container"> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>Type filter parameter <span id="type-filter-parameter" class="heading-flag breaking"></span></h3> </div> <div class="accordion-content"> <p>We've deprecated the <code class="text-highlight text-highlight--grey">type</code> filter parameter on <code class="text-highlight text-highlight--grey">CodeDiscountQuery</code>. Use <code class="text-highlight text-highlight--grey">discount_type</code> instead. For more information about deprecated fields, refer to <a href="/docs/api/admin-graphql/latest/objects/queryroot#deprecated-fields-2020-10">QueryRoot</a>.</p> </div> </div> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>Deprecated fields in Refund and RefundLineItem objects <span id="deprecated-fields" class="heading-flag breaking"></span></h3> </div> <div class="accordion-content"> <p>We've deprecated the following fields in the GraphQL Admin API:</p> <ul> <li><code class="text-highlight text-highlight--grey">restocked</code> field in the <a href="/docs/api/admin-graphql/latest/objects/refund"><code class="text-highlight text-highlight--grey">Refund</code></a> object. Use <code class="text-highlight text-highlight--grey">RefundLineItem.restockType</code> instead.</li> <li><code class="text-highlight text-highlight--grey">refundType</code> field in the <a href="/docs/api/admin-graphql/latest/objects/refundlineitem"><code class="text-highlight text-highlight--grey">RefundLineItem</code></a> object. Use <code class="text-highlight text-highlight--grey">RefundLineItem.restockType</code> instead.</li> </ul> </div> </div> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>Enhancements to discounts <span id="enhancements-to-discounts"></span></h3> </div> <div class="accordion-content"> <p>We've added new fields, mutations, arguments, and types to extend and enhance what you can do with discounts. You can now use the GraphQL Admin API to do the following:</p> <ul> <li>Retrieve usage counts for automatic discounts</li> <li>Perform new ways of searching through discounts</li> <li>Speed up the management of discounts with bulk mutations</li> </ul> <p><a href="/docs/apps/build/discounts">Learn how to manage discounts using the GraphQL Admin API</a>.</p> <p><strong>New fields</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">discountRedeemCodeSavedSearches</code> field was added to type <code class="text-highlight text-highlight--grey">QueryRoot</code></li> <li><code class="text-highlight text-highlight--grey">asyncUsageCount</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountAutomaticBasic</code></li> <li><code class="text-highlight text-highlight--grey">asyncUsageCount</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountAutomaticBxgy</code></li> <li><code class="text-highlight text-highlight--grey">hasTimelineComment</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountCodeBasic</code></li> <li><code class="text-highlight text-highlight--grey">shareableUrls</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountCodeBasic</code></li> <li><code class="text-highlight text-highlight--grey">totalSales</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountCodeBasic</code></li> <li><code class="text-highlight text-highlight--grey">asyncUsageCount</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountRedeemCode</code></li> <li><code class="text-highlight text-highlight--grey">id</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountRedeemCode</code></li> <li><code class="text-highlight text-highlight--grey">targetItemImage</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountShareableUrl</code></li> <li><code class="text-highlight text-highlight--grey">targetType</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountShareableUrl</code></li> <li><code class="text-highlight text-highlight--grey">title</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountShareableUrl</code></li> <li><code class="text-highlight text-highlight--grey">url</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountShareableUrl</code></li> <li><code class="text-highlight text-highlight--grey">hasTimelineComment</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountCodeBxgy</code></li> <li><code class="text-highlight text-highlight--grey">shareableUrls</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountCodeBxgy</code></li> <li><code class="text-highlight text-highlight--grey">totalSales</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountCodeBxgy</code></li> <li><code class="text-highlight text-highlight--grey">hasTimelineComment</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountCodeFreeShipping</code></li> <li><code class="text-highlight text-highlight--grey">maximumShippingPrice</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountCodeFreeShipping</code></li> <li><code class="text-highlight text-highlight--grey">shareableUrls</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountCodeFreeShipping</code></li> <li><code class="text-highlight text-highlight--grey">totalSales</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountCodeFreeShipping</code></li> </ul> <p><strong>New mutations</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">discountCodeBulkActivate</code> was added</li> <li><code class="text-highlight text-highlight--grey">discountCodeBulkDeactivate</code> was added</li> <li><code class="text-highlight text-highlight--grey">discountCodeBulkDelete</code> was added</li> <li><code class="text-highlight text-highlight--grey">discountCodeRedeemCodeBulkDelete</code> was added</li> </ul> <p><strong>New arguments</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">after</code> argument was added to field <code class="text-highlight text-highlight--grey">discountRedeemCodeSavedSearches</code> in type <code class="text-highlight text-highlight--grey">QueryRoot</code></li> <li><code class="text-highlight text-highlight--grey">before</code> argument was added to field <code class="text-highlight text-highlight--grey">discountRedeemCodeSavedSearches</code> in type <code class="text-highlight text-highlight--grey">QueryRoot</code></li> <li><code class="text-highlight text-highlight--grey">first</code> argument was added to field <code class="text-highlight text-highlight--grey">discountRedeemCodeSavedSearches</code> in type <code class="text-highlight text-highlight--grey">QueryRoot</code></li> <li><code class="text-highlight text-highlight--grey">last</code> argument was added to field <code class="text-highlight text-highlight--grey">discountRedeemCodeSavedSearches</code> in type <code class="text-highlight text-highlight--grey">QueryRoot</code></li> <li><code class="text-highlight text-highlight--grey">query</code> argument was added to field <code class="text-highlight text-highlight--grey">discountRedeemCodeSavedSearches</code> in type <code class="text-highlight text-highlight--grey">QueryRoot</code></li> <li><code class="text-highlight text-highlight--grey">reverse</code> argument was added to field <code class="text-highlight text-highlight--grey">discountRedeemCodeSavedSearches</code> in type <code class="text-highlight text-highlight--grey">QueryRoot</code></li> <li><code class="text-highlight text-highlight--grey">sortKey</code> argument was added to field <code class="text-highlight text-highlight--grey">discountRedeemCodeSavedSearches</code> in type <code class="text-highlight text-highlight--grey">QueryRoot</code></li> <li><code class="text-highlight text-highlight--grey">ids</code> argument was added to mutation <code class="text-highlight text-highlight--grey">discountCodeBulkActivate</code></li> <li><code class="text-highlight text-highlight--grey">savedSearchId</code> argument was added to mutation <code class="text-highlight text-highlight--grey">discountCodeBulkActivate</code></li> <li><code class="text-highlight text-highlight--grey">search</code> argument was added to mutation <code class="text-highlight text-highlight--grey">discountCodeBulkActivate</code></li> <li><code class="text-highlight text-highlight--grey">ids</code> argument was added to mutation <code class="text-highlight text-highlight--grey">discountCodeBulkDeactivate</code></li> <li><code class="text-highlight text-highlight--grey">savedSearchId</code> argument was added to mutation <code class="text-highlight text-highlight--grey">discountCodeBulkDeactivate</code></li> <li><code class="text-highlight text-highlight--grey">search</code> argument was added to mutation <code class="text-highlight text-highlight--grey">discountCodeBulkDeactivate</code></li> <li><code class="text-highlight text-highlight--grey">ids</code> argument was added to mutation <code class="text-highlight text-highlight--grey">discountCodeBulkDelete</code></li> <li><code class="text-highlight text-highlight--grey">savedSearchId</code> argument was added to mutation <code class="text-highlight text-highlight--grey">discountCodeBulkDelete</code></li> <li><code class="text-highlight text-highlight--grey">search</code> argument was added to mutation <code class="text-highlight text-highlight--grey">discountCodeBulkDelete</code></li> <li><code class="text-highlight text-highlight--grey">discountId</code> argument was added to mutation <code class="text-highlight text-highlight--grey">discountCodeRedeemCodeBulkDelete</code></li> <li><code class="text-highlight text-highlight--grey">ids</code> argument was added to mutation <code class="text-highlight text-highlight--grey">discountCodeRedeemCodeBulkDelete</code></li> <li><code class="text-highlight text-highlight--grey">savedSearchId</code> argument was added to mutation <code class="text-highlight text-highlight--grey">discountCodeRedeemCodeBulkDelete</code></li> <li><code class="text-highlight text-highlight--grey">search</code> argument was added to mutation <code class="text-highlight text-highlight--grey">discountCodeRedeemCodeBulkDelete</code></li> <li><code class="text-highlight text-highlight--grey">query</code> argument was added to field <code class="text-highlight text-highlight--grey">codes</code> in type <code class="text-highlight text-highlight--grey">DiscountCodeBasic</code></li> <li><code class="text-highlight text-highlight--grey">savedSearchId</code> argument was added to field <code class="text-highlight text-highlight--grey">codes</code> in type <code class="text-highlight text-highlight--grey">DiscountCodeBasic</code></li> <li><code class="text-highlight text-highlight--grey">sortKey</code> argument was added to field <code class="text-highlight text-highlight--grey">codes</code> in type <code class="text-highlight text-highlight--grey">DiscountCodeBasic</code></li> <li><code class="text-highlight text-highlight--grey">query</code> argument was added to field <code class="text-highlight text-highlight--grey">codes</code> in type <code class="text-highlight text-highlight--grey">DiscountCodeBxgy</code></li> <li><code class="text-highlight text-highlight--grey">savedSearchId</code> argument was added to field <code class="text-highlight text-highlight--grey">codes</code> in type <code class="text-highlight text-highlight--grey">DiscountCodeBxgy</code></li> <li><code class="text-highlight text-highlight--grey">sortKey</code> argument was added to field <code class="text-highlight text-highlight--grey">codes</code> in type <code class="text-highlight text-highlight--grey">DiscountCodeBxgy</code></li> <li><code class="text-highlight text-highlight--grey">query</code> argument was added to field <code class="text-highlight text-highlight--grey">codes</code> in type <code class="text-highlight text-highlight--grey">DiscountCodeFreeShipping</code></li> <li><code class="text-highlight text-highlight--grey">savedSearchId</code> argument was added to field <code class="text-highlight text-highlight--grey">codes</code> in type <code class="text-highlight text-highlight--grey">DiscountCodeFreeShipping</code></li> <li><code class="text-highlight text-highlight--grey">sortKey</code> argument was added to field <code class="text-highlight text-highlight--grey">codes</code> in type <code class="text-highlight text-highlight--grey">DiscountCodeFreeShipping</code></li> </ul> <p><strong>New and updated types</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">DiscountShareableUrl</code> type was added</li> <li><code class="text-highlight text-highlight--grey">DiscountCodeBulkActivatePayload</code> type was added</li> <li><code class="text-highlight text-highlight--grey">DiscountCodeBulkDeactivatePayload</code> type was added</li> <li><code class="text-highlight text-highlight--grey">DiscountShareableUrlTargetType</code> type was added</li> <li><code class="text-highlight text-highlight--grey">DiscountCodeBulkDeletePayload</code> type was added</li> <li><code class="text-highlight text-highlight--grey">DiscountCodeRedeemCodeBulkDeletePayload</code> type was added</li> <li><code class="text-highlight text-highlight--grey">DISCOUNT_CODE</code> was added to enum <code class="text-highlight text-highlight--grey">ResourceType</code></li> <li><code class="text-highlight text-highlight--grey">DISCOUNT_REDEEM_CODE</code> was added to enum <code class="text-highlight text-highlight--grey">SearchResultType</code></li> <li><code class="text-highlight text-highlight--grey">COLLECTION</code> was added to enum <code class="text-highlight text-highlight--grey">DiscountShareableUrlTargetType</code></li> <li><code class="text-highlight text-highlight--grey">HOME</code> was added to enum <code class="text-highlight text-highlight--grey">DiscountShareableUrlTargetType</code></li> <li><code class="text-highlight text-highlight--grey">PRODUCT</code> was added to enum <code class="text-highlight text-highlight--grey">DiscountShareableUrlTargetType</code></li> <li><code class="text-highlight text-highlight--grey">INCLUSION</code> was added to enum <code class="text-highlight text-highlight--grey">DiscountErrorCode</code></li> <li><code class="text-highlight text-highlight--grey">job</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountCodeBulkActivatePayload</code></li> <li><code class="text-highlight text-highlight--grey">userErrors</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountCodeBulkActivatePayload</code></li> <li><code class="text-highlight text-highlight--grey">job</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountCodeBulkDeactivatePayload</code></li> <li><code class="text-highlight text-highlight--grey">userErrors</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountCodeBulkDeactivatePayload</code></li> <li><code class="text-highlight text-highlight--grey">job</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountCodeBulkDeletePayload</code></li> <li><code class="text-highlight text-highlight--grey">userErrors</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountCodeBulkDeletePayload</code></li> <li><code class="text-highlight text-highlight--grey">job</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountCodeRedeemCodeBulkDeletePayload</code></li> <li><code class="text-highlight text-highlight--grey">userErrors</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountCodeRedeemCodeBulkDeletePayload</code></li> <li><code class="text-highlight text-highlight--grey">maximumShippingPrice</code> field was added to type <code class="text-highlight text-highlight--grey">DiscountCodeFreeShippingInput</code></li> </ul> </div> </div> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>Current representations of order values <span id="current-representations-order-values"></span></h3> </div> <div class="accordion-content"> <p>We added new fields to the <a href="/docs/api/admin-graphql/latest/objects/order"><code class="text-highlight text-highlight--grey">Order</code></a> object that capture the current representation of order values. Previously, apps could only use fields such as <code class="text-highlight text-highlight--grey">totalPriceSet</code> and <code class="text-highlight text-highlight--grey">totalTaxSet</code> and had to manually subtract order values from returns and refunds.</p> <p><strong>New fields</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">currentCartDiscountAmountSet</code> was added to object <code class="text-highlight text-highlight--grey">Order</code></li> <li><code class="text-highlight text-highlight--grey">currentSubtotalLineItemsQuantity</code> was added to object <code class="text-highlight text-highlight--grey">Order</code></li> <li><code class="text-highlight text-highlight--grey">currentSubtotalPriceSet</code> was added to object <code class="text-highlight text-highlight--grey">Order</code></li> <li><code class="text-highlight text-highlight--grey">currentTaxLines</code> was added to object <code class="text-highlight text-highlight--grey">Order</code></li> <li><code class="text-highlight text-highlight--grey">currentTotalDiscountsSet</code> was added to object <code class="text-highlight text-highlight--grey">Order</code></li> <li><code class="text-highlight text-highlight--grey">currentTotalPriceSet</code> was added to object <code class="text-highlight text-highlight--grey">Order</code></li> <li><code class="text-highlight text-highlight--grey">currentTotalTaxSet</code> was added to object <code class="text-highlight text-highlight--grey">Order</code></li> <li><code class="text-highlight text-highlight--grey">currentTotalWeight</code> was added to object <code class="text-highlight text-highlight--grey">Order</code></li> </ul> </div> </div> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>Editing orders <span id="editing-orders"></span></h3> </div> <div class="accordion-content"> <p>Apps can now edit orders they created. Previously, apps could only edit orders created through a Shopify channel (for example, POS, online store, or draft orders).</p> <p>To determine if your app can edit an order on Shopify, you can query the <code class="text-highlight text-highlight--grey">merchantEditable</code> field on the <a href="/docs/api/admin-graphql/latest/objects/order">Order</a> object. If the return value of this field is <code class="text-highlight text-highlight--grey">true</code>, your app can edit the order.</p> <p>We also added a new <code class="text-highlight text-highlight--grey">merchantEditableErrors</code> field to the <a href="/docs/api/admin-graphql/latest/objects/order">Order</a> object. If your app can't edit an order, then you can use this field to determine the reason why.</p> </div> </div> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>Orders associated to refunds <span id="order-on-refunds"></span></h3> </div> <div class="accordion-content"> <p>You can now query the order that is associated to a refund.</p> <p><strong>New field</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">order</code> field was added to object <a href="/docs/api/admin-graphql/latest/objects/refund">Refund</a></li> </ul> </div> </div> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>Shipping lines on existing orders <span id="shipping-lines-on-existing-orders"></span></h3> </div> <div class="accordion-content"> <p>You can now query a list of line items that contain shipping costs on existing orders.</p> <p><strong>New connection</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">shippingLines</code> was added to object <a href="/docs/api/admin-graphql/latest/objects/order"><code class="text-highlight text-highlight--grey">Order</code></a></li> </ul> </div> </div> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>Add discounts to items while editing orders <span id="discounts-on-orders"></span></h3> </div> <div class="accordion-content"> <p>You can now add discounts while editing orders. The following are use cases for adding discounts during order editing:</p> <ul> <li>Build out post-purchase discount workflows to entice buyers into adding upgrades, complementary products, or subscriptions to their existing orders.</li> <li>Offer items for free to first-time buyers.</li> <li>Discount items after purchase if a buyer forgets to use their discount code at checkout.</li> </ul> <p>To learn how to use the GraphQL Admin API to add discounts during order editing, refer to our <a href="/docs/apps/build/orders-fulfillment/order-management-apps/edit-orders">Edit existing orders</a>.</p> <p><strong>New mutations</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">OrderEditAddLineItemDiscount</code> was added</li> <li><code class="text-highlight text-highlight--grey">OrderEditRemoveLineItemDiscount</code> was added</li> </ul> <p><strong>Updated mutation</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">allowDuplicates</code> argument was added to <code class="text-highlight text-highlight--grey">OrderEditAddVariant</code></li> </ul> <p><strong>New types</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">OrderEditRemoveLineItemDiscountPayload</code> was added</li> <li><code class="text-highlight text-highlight--grey">CalculatedDiscountApplication</code> object was added</li> <li><code class="text-highlight text-highlight--grey">CalculatedDiscountAllocation</code> object was added</li> <li><code class="text-highlight text-highlight--grey">OrderStagedChangeAddLineItemDiscount</code> object was added</li> <li><code class="text-highlight text-highlight--grey">OrderEditDiscountInput</code> input object was added</li> <li><code class="text-highlight text-highlight--grey">DiscountApplicationLevel</code> enum was added</li> </ul> <p><strong>New field</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">CalculatedDiscountAllocation</code> field was added to object type <code class="text-highlight text-highlight--grey">CalculatedLineItem</code></li> </ul> <p><strong>New connection</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">CalculatedDiscountApplication</code> was added to object type <code class="text-highlight text-highlight--grey">CalculatedOrder</code></li> </ul> </div> </div> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>Delivery method on fulfillment orders <span id="delivery-method-on-fulfillment-orders"></span></h3> </div> <div class="accordion-content"> <p>You can now query the <a href="/docs/api/admin-graphql/latest/objects/fulfillmentorder">delivery method on fulfillment orders</a>. A fulfillment order delivery method can help you figure out how the line items represented by the fulfillment order should be delivered, or if they need to be picked up in-store.</p> <p><strong>New and updated types</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">DeliveryMethod</code> type was added</li> <li><code class="text-highlight text-highlight--grey">DeliveryMethodType</code> type was added</li> <li><code class="text-highlight text-highlight--grey">deliveryMethod</code> field was added to type <code class="text-highlight text-highlight--grey">FulfillmentOrder</code></li> <li><code class="text-highlight text-highlight--grey">id</code> field was added to type <code class="text-highlight text-highlight--grey">DeliveryMethod</code></li> <li><code class="text-highlight text-highlight--grey">methodType</code> field was added to type <code class="text-highlight text-highlight--grey">DeliveryMethod</code></li> <li><code class="text-highlight text-highlight--grey">LOCAL</code> enum value was added to type <code class="text-highlight text-highlight--grey">DeliveryMethodType</code></li> <li><code class="text-highlight text-highlight--grey">NONE</code> enum value was added to type <code class="text-highlight text-highlight--grey">DeliveryMethodType</code></li> <li><code class="text-highlight text-highlight--grey">PICK_UP</code> enum value was added to type <code class="text-highlight text-highlight--grey">DeliveryMethodType</code></li> <li><code class="text-highlight text-highlight--grey">RETAIL</code> enum value was added to type <code class="text-highlight text-highlight--grey">DeliveryMethodType</code></li> <li><code class="text-highlight text-highlight--grey">SHIPPING</code> enum value was added to type <code class="text-highlight text-highlight--grey">DeliveryMethodType</code></li> </ul> </div> </div> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>Product status <span id="product-status"></span></h3> </div> <div class="accordion-content"> <p>Use the <a href="/docs/api/admin-graphql/latest/objects/product">GraphQL Admin API</a> to identify, filter, and manage products based on their current product status.</p> <p>Each product can have one of the following statuses:</p> <ul> <li><code class="text-highlight text-highlight--grey">draft</code>: The product isn't ready to sell and is unavailable to customers on sales channels and apps.</li> <li><code class="text-highlight text-highlight--grey">active</code>: The product is ready to sell and can be made available to customers on the online store, sales channels, and apps. By default, existing products are set to <code class="text-highlight text-highlight--grey">active</code>.</li> <li><code class="text-highlight text-highlight--grey">archived</code>: The product is no longer being sold and isn't available to customers on sales channels and apps.</li> </ul> <p>To learn how to use product statuses, refer to the <a href="/docs/api/admin-graphql/2022-07/enums/ProductStatus">ProductStatus</a> enum.</p> <p><strong>New and updated mutations</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">ProductChangeStatus</code> mutation was added</li> <li><code class="text-highlight text-highlight--grey">newStatus</code> argument was added to mutation <code class="text-highlight text-highlight--grey">ProductDuplicate</code></li> </ul> <p><strong>New fields</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">status</code> field was added to object <code class="text-highlight text-highlight--grey">Product</code></li> <li><code class="text-highlight text-highlight--grey">status</code> field was added to input object <code class="text-highlight text-highlight--grey">ProductInput</code></li> </ul> <p><strong>New and updated types</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">ResourcePublicationV2</code> object was added</li> <li><code class="text-highlight text-highlight--grey">ProductStatus</code> enum was added</li> <li><code class="text-highlight text-highlight--grey">ResourcePublicationsV2</code> connection was added to type <code class="text-highlight text-highlight--grey">Publishable</code></li> </ul> </div> </div> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>Add a media image to a product variant <span id="variant-media"></span></h3> </div> <div class="accordion-content"> <p>You can now use the <a href="/docs/api/admin-graphql/latest/mutations/productvariantappendmedia">GraphQL Admin API</a> to add a media image to a product variant. To learn how to add a media image to a product variant, refer to our <a href="/docs/apps/build/online-store/product-variant-media">Manage variant media with the GraphQL Admin API</a> tutorial.</p> <p><strong>New and updated mutations</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">ProductVariantAppendMediaInput</code> input object was added</li> <li><code class="text-highlight text-highlight--grey">ProductVariantDetachMediaInput</code> input object was added</li> <li><code class="text-highlight text-highlight--grey">mediaSrc</code> input field was added to <code class="text-highlight text-highlight--grey">ProductVariantInput</code></li> </ul> <p><strong>New and updated types</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">ProductVariantAppendMediaInput</code> input object was added</li> <li><code class="text-highlight text-highlight--grey">ProductVariantDetachMediaInput</code> input object was added</li> <li><code class="text-highlight text-highlight--grey">mediaSrc</code> input field was added to <code class="text-highlight text-highlight--grey">ProductVariantInput</code></li> <li><code class="text-highlight text-highlight--grey">media</code> connection was added to object type <code class="text-highlight text-highlight--grey">ProductVariant</code></li> </ul> <p><strong>New error codes</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">BLANK</code> was added to enum <code class="text-highlight text-highlight--grey">MediaUserError</code></li> <li><code class="text-highlight text-highlight--grey">MEDIA_DOES_NOT_EXIST_ON_PRODUCT</code> was added to enum <code class="text-highlight text-highlight--grey">MediaUserError</code></li> <li><code class="text-highlight text-highlight--grey">TOO_MANY_MEDIA_PER_INPUT_PAIR</code> was added to enum <code class="text-highlight text-highlight--grey">MediaUserError</code></li> <li><code class="text-highlight text-highlight--grey">MAXIMUM_VARIANT_MEDIA_PAIRS_EXCEEDED</code> was added to enum <code class="text-highlight text-highlight--grey">MediaUserError</code></li> <li><code class="text-highlight text-highlight--grey">INVALID_MEDIA_TYPE</code> was added to enum <code class="text-highlight text-highlight--grey">MediaUserError</code></li> <li><code class="text-highlight text-highlight--grey">PRODUCT_VARIANT_SPECIFIED_MULTIPLE_TIMES</code> was added to enum <code class="text-highlight text-highlight--grey">MediaUserError</code></li> <li><code class="text-highlight text-highlight--grey">PRODUCT_VARIANT_DOES_NOT_EXIST_ON_PRODUCT</code> was added to enum <code class="text-highlight text-highlight--grey">MediaUserError</code></li> <li><code class="text-highlight text-highlight--grey">NON_READY_MEDIA</code> was added to enum <code class="text-highlight text-highlight--grey">MediaUserError</code></li> <li><code class="text-highlight text-highlight--grey">PRODUCT_VARIANT_ALREADY_HAS_MEDIA</code> was added to enum <code class="text-highlight text-highlight--grey">MediaUserError</code></li> <li><code class="text-highlight text-highlight--grey">MEDIA_IS_NOT_ATTACHED_TO_VARIANT</code> was added to enum <code class="text-highlight text-highlight--grey">MediaUserError</code></li> </ul> </div> </div> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>Update text content of legal policies<span id="update-text-content-of-legal-policies"></span></h3> </div> <div class="accordion-content"> <p>Use the <a href="/docs/api/admin-graphql/latest/objects/shoppolicyupdate">GraphQL Admin API</a> to update the text content of legal policies associated with a shop. Policies are specified by <a href="/docs/api/admin-graphql/latest/objects/shoppolicytype">policy type</a>.</p> <p><strong>New mutation</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">ShopPolicyUpdate</code> was added</li> </ul> <p><strong>New types</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">ShopPolicy</code> object type was added</li> <li><code class="text-highlight text-highlight--grey">ShopPolicyInput</code> input object was added</li> <li><code class="text-highlight text-highlight--grey">ShopPolicyType</code> enum was added</li> <li><code class="text-highlight text-highlight--grey">ShopPolicyUserError</code> was added</li> </ul> <p><strong>New field</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">shopPolicies</code> was added to object <code class="text-highlight text-highlight--grey">shop</code></li> </ul> </div> </div> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>Product price range <span id="product-price-range"></span></h3> </div> <div class="accordion-content"> <p>Use the <a href="/docs/api/admin-graphql/latest/objects/ProductPriceRangeV2">GraphQL Admin API</a> to query the price range of a product (the lowest and highest priced variants).</p> <p><strong>New and updated types</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">ProductPriceRangeV2</code> type was added</li> <li><code class="text-highlight text-highlight--grey">priceRangeV2</code> field was added to type <code class="text-highlight text-highlight--grey">Product</code></li> </ul> </div> </div> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>International domains <span id="international-domains"></span></h3> </div> <div class="accordion-content"> <p>Use the <a href="/docs/api/admin-graphql/latest/objects/shopfeatures">GraphQL Admin API</a> to query if a shop is eligible to enable international domains.</p> <p><strong>New field</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">internationalDomains</code> was added to type <code class="text-highlight text-highlight--grey">ShopFeatures</code></li> </ul> </div> </div> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>Marketing activity <span id="marketing-activity"></span></h3> </div> <div class="accordion-content"> <p>Use the <a href="/docs/api/admin-graphql/latest/objects/marketingactivitycreate">GraphQL Admin API</a> to create a new marketing activity.</p> <p><strong>New mutation</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">marketingActivityCreate</code> was added</li> </ul> </div> </div> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>New error codes and field for media objects <span id="new-error-codes-fields-media"></span></h3> </div> <div class="accordion-content"> <p>We've added new error codes to better represent the different types of errors that can occur when creating media objects. We also added a new field to the <a href="/docs/api/admin-graphql/latest/objects/mediaimage"><code class="text-highlight text-highlight--grey">MediaImage</code></a> object.</p> <p><strong>New error codes</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">VIDEO_METADATA_READING_ERROR</code> was added to enum <code class="text-highlight text-highlight--grey">MediaErrorCode</code></li> <li><code class="text-highlight text-highlight--grey">VIDEO_INVALID_FILETYPE_ERROR</code> was added to enum <code class="text-highlight text-highlight--grey">MediaErrorCode</code></li> <li><code class="text-highlight text-highlight--grey">VIDEO_MIN_WIDTH_ERROR</code> was added to enum <code class="text-highlight text-highlight--grey">MediaErrorCode</code></li> <li><code class="text-highlight text-highlight--grey">VIDEO_MAX_WIDTH_ERROR</code> was added to enum <code class="text-highlight text-highlight--grey">MediaErrorCode</code></li> <li><code class="text-highlight text-highlight--grey">VIDEO_MIN_HEIGHT_ERROR</code> was added to enum <code class="text-highlight text-highlight--grey">MediaErrorCode</code></li> <li><code class="text-highlight text-highlight--grey">VIDEO_MAX_HEIGHT_ERROR</code> was added to enum <code class="text-highlight text-highlight--grey">MediaErrorCode</code></li> <li><code class="text-highlight text-highlight--grey">VIDEO_MIN_DURATION_ERROR</code> was added to enum <code class="text-highlight text-highlight--grey">MediaErrorCode</code></li> <li><code class="text-highlight text-highlight--grey">VIDEO_MAX_DURATION_ERROR</code> was added to enum <code class="text-highlight text-highlight--grey">MediaErrorCode</code></li> <li><code class="text-highlight text-highlight--grey">MODEL3D_THUMBNAIL_GENERATION_ERROR</code> was added to enum <code class="text-highlight text-highlight--grey">MediaErrorCode</code></li> <li><code class="text-highlight text-highlight--grey">MODEL3D_GLB_TO_USDZ_CONVERSION_ERROR1</code> was added to enum <code class="text-highlight text-highlight--grey">MediaErrorCode</code></li> <li><code class="text-highlight text-highlight--grey">MODEL3D_GLB_OUTPUT_CREATION_ERROR</code> was added to enum <code class="text-highlight text-highlight--grey">MediaErrorCode</code></li> <li><code class="text-highlight text-highlight--grey">UNSUPPORTED_IMAGE_FILE_TYPE</code> was added to enum <code class="text-highlight text-highlight--grey">MediaErrorCode</code></li> <li><code class="text-highlight text-highlight--grey">INVALID_IMAGE_FILE_SIZE</code> was added to enum <code class="text-highlight text-highlight--grey">MediaErrorCode</code></li> </ul> <p><strong>New field</strong></p> <p><code class="text-highlight text-highlight--grey">mimeType</code> was added to object <code class="text-highlight text-highlight--grey">MediaImage</code></p> </div> </div> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>Query a customer's activity<span id="query-a-customers-activity"></span></h3> </div> <div class="accordion-content"> <p>You can now use the <a href="/docs/api/admin-graphql/latest/objects/customerjourneysummary">GraphQL Admin API</a> to query a customer's activity on a shop's online store.</p> <p><strong>New type</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">CustomerJourneySummary</code> was added</li> </ul> </div> </div> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>Delivery profiles event webhooks<span id="delivery-profiles-event-webhooks"></span></h3> </div> <div class="accordion-content"> <p>You can now subscribe to <a href="/docs/api/admin-graphql/latest/enums/webhooksubscriptiontopic?api[version]=2020">delivery profiles event webhooks</a>.</p> <p><strong>New topics</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">PROFILES_CREATE</code> value was added to enum <code class="text-highlight text-highlight--grey">WebhookSubscriptionTopic</code></li> <li><code class="text-highlight text-highlight--grey">PROFILES_UPDATE</code> value was added to enum <code class="text-highlight text-highlight--grey">WebhookSubscriptionTopic</code></li> <li><code class="text-highlight text-highlight--grey">PROFILES_DELETE</code> value was added to enum <code class="text-highlight text-highlight--grey">WebhookSubscriptionTopic</code></li> </ul> </div> </div> </div> </div> ## GraphQL Storefront API changes Below are all the changes currently introduced in the 2020-10 version of the GraphQL Storefront API. <div class="accordion-container"> <div class="accordion-controls"> <button class="accordion-control" data-accordion-control-type="expand-all" type="button">Expand all</button> </div> <div class="accordion-content-container"> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>Query a shop's shipping policy <span id="query-shop-shipping-policy"></span></h3> </div> <div class="accordion-content"> <p>You can now query a shop's shipping policy using the <a href="/docs/api/storefront/reference/online-store/shop"><code class="text-highlight text-highlight--grey">shippingPolicy</code></a> field.</p> <p><strong>New field</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">shippingPolicy</code> was added to object <code class="text-highlight text-highlight--grey">Shop</code></li> </ul> </div> </div> </div> </div> ## REST Admin API changes Below are all the changes currently introduced in the 2020-10 version of the REST Admin API. <div class="accordion-container"> <div class="accordion-controls"> <button class="accordion-control" data-accordion-control-type="expand-all" type="button">Expand all</button> </div> <div class="accordion-content-container"> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>Tax field data <span id="tax-fields-country-province" class="heading-flag breaking"></span></h3> </div> <div class="accordion-content"> <p>You can no longer change tax field data using the <a href="/docs/api/admin-rest/latest/resources/country">Country</a> or <a href="/docs/api/admin-rest/latest/resources/province">Province</a> resources.</p> </div> </div> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>Include risk analysis header <span id="include-risk-analysis-header" class="heading-flag breaking"></span></h3> </div> <div class="accordion-content"> <p>We've deprecated the <code class="text-highlight text-highlight--grey">include-risk-analysis</code> header that includes order <code class="text-highlight text-highlight--grey">risks</code> and <code class="text-highlight text-highlight--grey">risk analysis</code> objects in the Order payload.</p> <p>The existence of this deprecated header was not previously documented. The <a href="/docs/api/admin-rest/latest/resources/order-risk">REST Admin API</a> and <a href="/docs/api/admin-graphql/latest/objects/orderrisk">GraphQL Admin API</a> are not affected by this change.</p> <p>If you request the header using an API version earlier than 2020-10, then the header will still be returned.</p> </div> </div> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>Product status <span id="product-status"></span></h3> </div> <div class="accordion-content"> <p>Use the <a href="/docs/api/admin-rest/latest/resources/product">Product</a> resource to identify, filter, and manage products based on their current product status.</p> <p>Each product can have one of the following statuses:</p> <ul> <li><code class="text-highlight text-highlight--grey">draft</code>: The product isn't ready to sell and is unavailable to customers on sales channels and apps.</li> <li><code class="text-highlight text-highlight--grey">active</code>: The product is ready to sell and can be made available to customers on the online store, sales channels, and apps. By default, existing products are set to <code class="text-highlight text-highlight--grey">active</code>.</li> <li><code class="text-highlight text-highlight--grey">archived</code>: The product is no longer being sold and isn't available to customers on sales channels and apps.</li> </ul> <p>To learn how to use product statuses, refer to the <a href="/docs/api/admin-rest/latest/resources/product">Product</a> resource.</p> <p><strong>New property</strong></p> <p><code class="text-highlight text-highlight--grey">status</code> property added to <code class="text-highlight text-highlight--grey">Product</code> resource</p> <p><strong>New query parameter</strong></p> <p><code class="text-highlight text-highlight--grey">status</code> parameter added to <code class="text-highlight text-highlight--grey">Product</code> resource</p> </div> </div> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>Refund duties<span id="refund-duties"></span></h3> </div> <div class="accordion-content"> <p>Use the <a href="/docs/api/admin-rest/latest/resources/refund">Refund</a> resource to add refund duties to your request body. This capability provides parity with the <a href="/docs/api/admin-graphql/latest/objects/refund">GraphQL Admin API</a>.</p> <p>The <code class="text-highlight text-highlight--grey">refund_duties</code> object includes two fields: <code class="text-highlight text-highlight--grey">duty_id</code> and <code class="text-highlight text-highlight--grey">refund_type</code>. You can specify how you want the duty refunded by setting one of the following values on <code class="text-highlight text-highlight--grey">refund_type</code>:</p> <ul> <li><code class="text-highlight text-highlight--grey">FULL</code>: Refunds all the duties associated with a duty ID.</li> <li><code class="text-highlight text-highlight--grey">PROPORTIONAL</code>: Refunds duties in proportion to the line item quantity that you want to refund.</li> </ul> </div> </div> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>Asset checksums<span id="asset-checksums"></span></h3> </div> <div class="accordion-content"> <p>We've added a new <code class="text-highlight text-highlight--grey">checksum</code> property to the <a href="/docs/api/admin-rest/latest/resources/asset">Asset</a> resource.</p> <p>The <code class="text-highlight text-highlight--grey">checksum</code> property provides the <a href="https://en.wikipedia.org/wiki/MD5">MD5</a> representation of the content, which consists of a string of 32 hexadecimal digits. This property might be <code class="text-highlight text-highlight--grey">null</code> if you haven't updated an asset recently.</p> </div> </div> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>Logs for batch discount code creation jobs<span id="logs-for-batch-discount-code-creation-jobs"></span></h3> </div> <div class="accordion-content"> <p>We've added better reporting and feedback for <a href="/docs/api/admin-rest/latest/resources/discountcode#batch_create-2020-10">batch discount code creation jobs</a>. The new <code class="text-highlight text-highlight--grey">logs</code> property specifies when no discount codes were created because the provided data was invalid.</p> <p><strong>New property</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">logs</code> was added to <a href="/docs/api/admin-rest/latest/resources/discountcode#batch_create-2020-10">DiscountCode batch endpoint</a></li> </ul> </div> </div> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>Buy X Get Y discounts<span id="buy-x-get-y-discounts"></span></h3> </div> <div class="accordion-content"> <p>Use the <a href="/docs/api/admin-rest/latest/resources/pricerule">PriceRule</a> resource to specify the minimum purchase amount required to be entitled to a Buy X Get Y discount.</p> <p><strong>New properties</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">prerequisite_to_entitlement_purchase</code> was added to <a href="/docs/api/admin-rest/latest/resources/pricerule">PriceRule</a></li> <li><code class="text-highlight text-highlight--grey">prerequisite_amount</code> was added to <a href="/docs/api/admin-rest/latest/resources/pricerule">PriceRule</a></li> </ul> </div> </div> <div class="accordion-item"> <div class="accordion-link"> <div class="chevron-up"></div> <div class="chevron-down"></div> <h3>Delivery profiles event webhooks<span id="delivery-profiles-event-webhooks"></span></h3> </div> <div class="accordion-content"> <p>You can now subscribe to <a href="/docs/api/admin-rest/latest/resources/webhook">delivery profiles event webhooks</a>.</p> <p><strong>New topics</strong></p> <ul> <li><code class="text-highlight text-highlight--grey">profiles/create</code> topic was added to webhook resource</li> <li><code class="text-highlight text-highlight--grey">profiles/update</code> topic was added to webhook resource</li> <li><code class="text-highlight text-highlight--grey">profiles/delete</code> topic was added to webhook resource</li> </ul> </div> </div> </div> </div>