Release Notes

Release notes published January 2020.

GraphQL is a flexible and performant API that allows you to build custom front-ends, including headless storefronts, Progressive Web Apps (PWA), and mobile apps for Magento.

The Magento GraphQL project is a Magento Community Engineering special project open to contributors. To take part and contribute, see the Magento GraphQL repository and wiki to get started. Join us in our Slack channel (or self signup) to discuss the project.

These release notes can include:

  • New features
  • Fixes and improvements

Magento Commerce and Magento Open Source 2.4.0

  • Added the reorderItems mutation. This mutation enables the logged-in customer to add the contents of a previous order to their cart.

  • Added the categories query returns a list of categories that match a specified filter. This query differs from the categoryList query in that it supports pagination.

  • Added the pickupLocations query. When the Inventory in-store pickup feature is enabled, this query allows the shopper to select a pickup location. The pickup_location_code attribute has been added to the setShippingAddressesOnCart mutation to specify which source will serve as the pickup location.

Magento Commerce and Magento Open Source 2.3.5

  • The products and categoryList queries can now be used to retrieve information about products and categories that have been added to a staged campaign. These queries require an admin authorization token. See Using queries for details.
  • Custom attributes used in layered navigation no longer require the Use in Search, Visible in Advanced Search, and Use in Search Results Layered Navigation fields be set to Yes.
  • Added the position and disabled attributes to the MediaGalleryInterface.
  • When you apply a gift card to a cart, an exception is no longer thrown when the last product is removed from the cart.
  • In a category search, the image attribute returns the full path to an image, rather than a truncated path.
  • Flat rate shipping amounts are calculated correctly when you add a configurable product to a cart.

Magento Commerce and Magento Open Source 2.3.4

  • Guest carts can now be merged with customer carts. The mergeCarts mutation transfers the contents of a guest cart into the cart of a logged-in customer.
  • A customer can start an order on one device and complete it on another. Use the customerCart query to obtain the cart ID for a logged-in customer.
  • Layered navigation can use custom filters. The filter attribute of the products query now requires the ProductAttributeFilterInput object. You can specify a pre-defined filter in this object, or define a custom filter. As a result, layered navigation on your website filters on the attributes you need.
  • You can search categories by ID, name, and/or URL key. The categoryList query replaces the deprecated category query.
  • A customer can add bundle and downloadable products to the cart with the addBundleProductsToCart and addDownloadableProductsToCart mutations.
  • The ProductInterface supports fixed product taxes (such as WEEE). Use the storeConfig query to determine whether the store supports these taxes.
  • The cart object has been enhanced to include information about promotions and applied discounts at the line and cart levels.
  • Added test coverage in multiple GraphQL modules.

The following queries and mutations have been deprecated:

Deprecated entity Use this instead
category query categoryList query
setPaymentMethodOnCartAndPlaceOrder mutation Run the setPaymentMethodOnCart and placeOrder mutations in the same request
wishlist query customer query

Magento Commerce and Magento Open Source 2.3.3

Magento Open Source 2.3.2

  • Added mutations to support the following cart operations and checkout for logged-in and guest customers:

  • Added support for payment methods that implement Magento Vault. See customerPaymentTokens query and deletePaymentToken mutation

  • Added new queries and extended the functionality of others.

    • The isEmailAvailable query checks whether the specified email address has already been used to create an account.
    • The cart query can now return information set by mutations that perform cart operations, including product information, shipping and billing addresses, shipping and payment methods, and applied coupons. The query also returns calculated totals.
    • The customerPaymentTokens query returns the signed-in customer’s payment tokens.
  • Queries can now be performed as HTTP GET or POST operations.

  • Magento can use Varnish or full-page caching to cache pages rendered from the results of the following GraphQL queries:

    • category
    • cmsBlocks
    • cmsPage
    • products
    • urlResolver

You must send these queries as HTTP GET operations to cache the results.

Magento Open Source 2.3.1

  • Added mutations and queries that allow customers to manage My Account information. Specific capabilities include:
  • Added functionality to support complex Catalog features. This version supports:
    • Specifying absolute image paths for products and including extended image information
    • Rendering fields that use WYSIWYG text
    • URL rewrites for products​
  • GraphQL framework enhancements, including:
    • Mutations that generate and revoke customer tokens
    • Page Builder and WYSIWYG fields support complex structures for PWA scenarios
    • Magento now calculates the complexity of queries and mutations and returns an error message if a query or mutation is deemed too complex
    • Variable support in queries and mutations
    • A query that returns information about a store’s theme and CMS configuration
    • GraphQL tests are integrated with Travis CI​
    • GraphQL browsers now display fields and objects alphabetically