Simulators
Shopify changelog
What changed in each Shopify simulator release, newest first.
v0.0.1 — 2026-11-06
-
A local Shopify store for the code that runs a shop and sells from it. The first release of the Shopify simulator: Shopify’s Admin and Storefront GraphQL APIs at version 2026-10, served at
/admin/api/2026-10/graphql.jsonand/api/2026-10/graphql.jsonon one port. Point@shopify/admin-api-client, theshopify_apigem or any GraphQL client at it with a placeholder access token, or boot it with--interceptand run your program underrystic execto route every*.myshopify.comhost to it. A request with no Admin token gets Shopify’s 401 answer, and no email, payment, webhook or app callback is ever sent. -
Bulk operations and background jobs.
bulkOperationRunQuerystarts a bulk query that finishes on the simulator’s clock and serves its result as JSONL from the simulator itself, andbulkOperationCancelcancels one still running.collectionReorderProductsreturns a job thatjob(id:)reads until it is done. -
Online Store content and custom data. Create pages, blogs, articles, menus and URL redirects on the Admin API, and read what is published on the Storefront API. A menu item that links a product, collection, page, blog or article keeps its store path, and the Storefront API returns it as a full URL. Read metafield definitions, metaobjects and their definitions.
-
Orders, customers and fulfillment to read. Read orders with their line items, payment transactions, price sets, fulfillment orders, fulfillments, returns and refunds, and customers with what they have spent and the segments they fall in. An Admin token without the
read_all_ordersgrant sees only the last 60 days of orders, as on Shopify, and you can bind grants to a token to widen it. -
Five scenarios to boot straight into.
shopify_apparel_storefront(a lived-in apparel store with products, collections, customers, orders, content and a live cart),shopify_fulfillment_desk(five orders in five fulfillment states),shopify_inventory_ledger(one catalog spread over three locations),shopify_custom_data_lab(a store shaped by metafields and metaobjects) andshopify_fresh_store(a store on its first day).--scenarioboots one, andPOST /_rystic/scenarioloads one without a restart. The same requests from the same reset give the same ids and bodies. -
The Storefront catalog, search and carts. Read the published catalog, collections with their own products, and recommendations, and search them with
search,predictiveSearchandproducts(query:)in Shopify’s search syntax. Build a shopper’s cart withcartCreate: add, change and remove lines, set a note, attributes, a buyer identity, discount codes, delivery addresses and metafields, and read the cart back by its id. -
Tested against a live Shopify store. The newest full measurement, of 2026-11-06, matched 255 of the 275 tests that compare the simulator with Shopify (92.7%), and 4 of those tests gave no verdict. The simulator’s page lists, under Limitations, the differences this release ships with.
-
The catalog and its inventory. Create and update products with their variants, options and media, or set a whole product at once with
productSet; group products in collections and reorder them; and publish them to the store’s Online Store, Shop and Point of Sale channels, after which the Storefront API shows them. Track stock across locations withinventorySetQuantities,inventoryAdjustQuantitiesandinventoryMoveQuantities, which checkchangeFromQuantityas Shopify does. Thequery:argument filters the product, variant, collection, customer, order and inventory item lists, and the product and order counts, in Shopify’s search syntax; the customer, variant and collection counts ignore it.