List productsSearch the store's products. Filter by words in the title or description, by status, product type, vendor or tag, and by when they were created. Returns each product with its id, handle, status, description, vendor, tags, total stock, price range and storefront link. With no filters at all this is the whole catalogue, newest change first.
Get a productRead one product in full: its description, status, vendor, tags and price range, every one of its variants with their SKUs, prices and stock, the options that distinguish them, and the collections the product belongs to.
Create a productAdd a product to the catalogue with a title, description, type, vendor and tags. It is created as a draft unless the status says otherwise, so a workflow can build it up before anyone can buy it. Returns the new product with its id.
Update a productChange a product's title, description, type, vendor, tags, URL handle or status. Only the fields filled in are touched, so this is safe to point at a product a person also edits. Setting the status to Active is how a draft goes on sale.
Delete a productDelete a product and everything on it - its variants, its images and its inventory. This cannot be undone. A product that has ever been ordered is better archived than deleted, with 'Update a product' and the Archived status, because deleting it leaves past orders naming something that no longer exists.
List product variantsList variants across the store, or the variants of one product. A variant is what actually carries a price, a SKU and stock, so this is the step that finds the id a price change or a stock update needs - including the inventory item id 'Set inventory quantity' takes.
Update a product variantChange one variant's price, compare-at price, SKU, barcode or whether it is taxable. Only the fields filled in are touched. The product is asked for as well as the variant because Shopify only updates a variant through its product.
List inventory at a locationRead what is in stock at one of the store's locations, item by item. Each line reports every quantity Shopify tracks - available, committed to an order, incoming, on hand and reserved - alongside the SKU, the variant and the product it belongs to, and the inventory item id needed to change it.
Set inventory quantitySet how many of one item are in stock at one location, to an exact number rather than by adding or subtracting. That is what a workflow syncing from a supplier feed or a spreadsheet wants: running it twice with the same number changes nothing the second time. Takes the inventory item id from 'List product variants' or 'List inventory at a location'.
List ordersSearch the store's orders. Filter by payment status, shipping status, customer email, and when they were placed or last changed. Returns each order with its number, totals, payment and fulfillment status, customer, and shipping and billing addresses. Filtering on 'created on or after' is how a scheduled workflow sees only what is new.
Get an orderRead one order in full: every line item with its quantity, SKU and price, the totals and what has been refunded, the customer and both addresses, the shipping method, and any shipments already made against it with their tracking.
Update an orderChange an order's staff note, tags or contact email. Tagging is how a workflow marks an order it has already handled, so the next run can skip it. An order's money and line items are not editable this way - Shopify does not allow it.
Fulfill an orderMark an order shipped, with a tracking number and carrier if there is one, and email the customer unless told not to. Point it at an order to ship everything still outstanding, or at one fulfillment order to ship a single location's part of it.
Create a draft orderRaise a draft order - an invoice or quote that is not a sale yet. Each line is either a catalogue variant and a quantity, or a title and a price for something not in the catalogue, so a workflow can bill for a service as easily as for a product. Returns the draft with the invoice link a customer can pay through.
Complete a draft orderTurn a draft order into a real order. Left pending, the order is created unpaid, which is the ordinary case for an invoice the customer still has to settle. Marked as already paid, Shopify records payment without taking any money - what a store does when the money arrived some other way. Returns the order it became.
List customersSearch the store's customers by name, email or tag, and by when they were created. Returns each with their contact details, tags, account state, how many orders they have placed, what they have spent and their default address.
Create a customerAdd a customer to the store with their name, email, phone, note and tags. An email address or a phone number is needed - Shopify identifies a customer by one or the other. Returns the new customer with their id.
Update a customerChange a customer's name, email, phone, note or tags. Only the fields filled in are touched. Tagging is how a workflow segments customers for a later step to act on.
Delete a customerDelete a customer record. This cannot be undone. Shopify refuses to delete a customer who has ever placed an order, since the order would then name somebody who does not exist - erasing that customer's personal details is a data request in the Shopify admin instead.
Get store detailsRead the store itself: its name and domains, contact email, currency, timezone, weight unit, billing address and which Shopify plan it is on, plus every location it holds stock at. Takes no input, so it is the cheapest way for a workflow to prove the connection works before it changes anything.