# Shopify MCP connector

The Shopify connector brings your store's orders, products, and customers to Claude, ChatGPT, Cursor, and any MCP client, so each person can look them up, create them, and update them as themselves, with every action recorded.

Source: https://elaichi.ai/connectors/shopify/

## Facts

| | |
| --- | --- |
| Application | Shopify |
| Category | Ecommerce |
| AI tools | 233 |
| Authentication | Connects over OAuth |
| Needs your own OAuth app | Yes |
| MCP endpoint | https://api.elaichi.ai/mcp |
| Works with | Claude, ChatGPT, Cursor, any MCP client, and the Elaichi Agent |
| Tools advertised by name | No. 233 tools is past the 30-tool threshold, so clients use `search_tools` and `execute_tool` |

## What you can ask once Shopify is connected

- Show me open Shopify orders from the last seven days.
- How many products were created in Shopify this month?
- Which Shopify orders were canceled yesterday, and why?

## Connect Shopify in Elaichi

This happens once for the organization, before any client is involved.

1. Open Connections, choose Add connection, and pick Shopify.
2. Optionally set Share with, then press Connect.
3. Supply your own Shopify app, then approve. Shopify needs an OAuth app you register yourself, so bring its client ID and secret. One person does this once for the organization.

Credentials are vaulted and nobody, including the AI, reads them back. The connection becomes a toolbox immediately, so you can curate which Shopify tools are exposed, rename them, or freeze arguments before anyone points a client at it.

## Connect Shopify to Claude

Endpoint: https://api.elaichi.ai/mcp

1. Open Customize, then Connectors.
2. Press Add.
3. Name it, paste the MCP server URL, then Continue.
4. Sign in and approve.

On Team and Enterprise, an Owner adds it once. Everyone else turns it on for themselves.

## Connect Shopify to ChatGPT

Endpoint: https://api.elaichi.ai/mcp

1. Open Plugins, then press the + button.
2. Name it and paste the endpoint into Server URL.
3. Leave Authentication on OAuth, then tick the risk acknowledgement.
4. Press Create, then sign in and approve.

Works on the web today. The plugin directory lives at chatgpt.com/plugins.

## Connect Shopify to Cursor

Endpoint: https://api.elaichi.ai/mcp

1. Open `~/.cursor/mcp.json`.
2. Add the endpoint under `mcpServers`.
3. Reload Cursor, then sign in and approve.

Set up per machine, so repeat it on each computer you work from.

## Connect Shopify to any MCP client

Endpoint: https://api.elaichi.ai/mcp

1. Add the endpoint as a remote MCP server.
2. Sign in and approve.

The Elaichi Agent already has these tools, with nothing to set up.

## What the consent screen decides

Only Read is granted by default, which is not enough to call a Shopify tool. Over MCP there is no trusted place to confirm a write in the moment, so the consent screen is the standing approval rather than a formality. Grant Read and Run tools. Think hard before granting Delete, which reaches into connected apps and cannot be undone.

## What teams do with Shopify through Elaichi

### Find a customer's orders while they wait

Support. Search for a Shopify customer by name or email and pull up every order they have placed, so the answer comes during the conversation rather than after it.

### Cancel or reopen an order on request

Support. When a shopper changes their mind, cancel the Shopify order, or reopen a closed one if it turns out more work is needed, without leaving the chat.

### Close out the day's completed orders

Operations. List the Shopify orders that are finished, check a few by ID, and close them in one batch so the open queue reflects what is actually left to do.

### Add new products and fix listings in bulk

Merchandising. Create a Shopify product from a plain description, or update prices, titles, and details across a whole range at once instead of editing each listing by hand.

### Invite customers to activate their accounts

Marketing. Look up Shopify customers who have ordered but never created an account and generate an activation link for each, ready to drop into an email.

### Count orders for the week's report

Finance. Ask how many Shopify orders came in over a given period, or how many customers and products the store holds, and get a number to paste into the report.

## Frequently asked questions

### How do I connect Shopify to Claude?

First connect Shopify inside Elaichi. Shopify is one of the few applications where you register an app in your own Shopify admin and bring its client ID and secret to Elaichi once, then approve access on Shopify's own sign-in screen. Then in Claude go to Customize, then Connectors, then Add, and paste the endpoint https://api.elaichi.ai/mcp. Sign in as yourself and your Shopify store is available in Claude.

### Does Shopify work with ChatGPT and Cursor as well as Claude?

Yes. Once Shopify is connected in Elaichi, the same endpoint, https://api.elaichi.ai/mcp, works in Claude, ChatGPT, Cursor, any MCP client, and the Elaichi Agent. You connect Shopify once and every client your team uses picks it up.

### What can an AI agent actually do with my Shopify data?

An agent can look up Shopify orders, products, and customers, search for a customer and list what they have bought, and count orders for a period. It can also create new orders, products, and customers, update or remove them in bulk, cancel, close, or reopen an order, and generate account activation links for customers. Because Shopify offers a lot of actions, short concrete asks such as "list open orders from this week" work better than long paragraphs.

### Does connecting Shopify give the AI access to my whole store?

No. Every call to Shopify runs as the person who signed in, so the agent can only see and change what that person's own Shopify staff account allows. Elaichi can narrow that further, for example to read-only on orders, but it can never grant more than the person already has in Shopify.

### Can my team share one Shopify connection?

Yes. One person connects Shopify in Elaichi and shares it with a team, and nobody else ever handles the client ID, secret, or store credentials. Each teammate still signs in to Elaichi as themselves, so every order or product change in the audit log is tied to the person who made it, not to a shared account.

### Can I stop an agent from deleting or changing things in Shopify?

Yes. Restrictions in Elaichi apply per action, so you can allow looking up Shopify orders and customers while blocking bulk deletes, cancellations, or product edits. A blocked action is never shown to Claude, ChatGPT, or any other client at all, so no prompt, however worded, can reach it.

### What happens to a Shopify connection when someone leaves?

Offboarding a person in Elaichi ends their access to Shopify through every client at once. If they had shared a Shopify connection with a team, it keeps working for everyone else. If you ever want to remove Shopify entirely, disconnecting it once in Elaichi removes it from Claude, ChatGPT, Cursor, and every other client together.

## All 233 Shopify tools

Every tool below is callable through https://api.elaichi.ai/mcp once Shopify is connected, subject to the toolbox it is in and the restrictions on the caller.

- **List all Shopify orders** (List). List Shopify orders with optional filters by financial status, fulfillment status, date range, order IDs, and more. Returns each order with id, name, total_price, line_items, currency, created_at, customer, and financial_status. Max 250 per page. Only the last 60 days of orders are accessible by default; older orders require additional access.
- **Get single Shopify order by ID** (Get). Get a single Shopify order by id. Returns: id, admin_graphql_api_id, app_id, browser_ip, buyer_accepts_marketing, cancel_reason, cancelled_at, cart_token, checkout_id, checkout_token, client_details, closed_at, confirmation_number, confirmed, contact_email, created_at, currency, current_subtotal_price, current_subtotal_price_set, email, line_items, name, note, phone, tags, total_price,…
- **Shopify orders bulk delete** (Delete). Delete an order by order ID. Orders interacting with an online gateway cannot be deleted. Returns an empty object on success.
- **Shopify orders bulk update** (Update). Update an existing order by order ID. Fields such as email, phone, note, tags, shipping address, note attributes and metafields are nested under an order key in the request body; only provided fields are changed.
- **Shopify orders cancel** (Cancel). Cancel an order by order ID. Orders that have a fulfillment must have it cancelled first. Optionally issue a refund, restock line items, record a cancellation reason and email the customer. Returns the cancelled Order object. Required: order_id.
- **Shopify orders close** (Close). Close an order by order ID, marking it as complete and archiving it. A closed order can be re-opened later. Takes no request body. Returns the closed Order object. Required: order_id.
- **Shopify orders count** (Action). Count the orders in the Shopify store matching the supplied filters (status, payment status, fulfillment status and date ranges). Returns a count.
- **Create a Shopify order** (Create). Create an order in the Shopify store. The order is nested under an order key in the request body with line_items (variant_id and quantity, or custom items with title and price), optional customer, addresses, transactions, statuses and inventory behaviour. By default no notification emails are sent and inventory is not adjusted.
- **Shopify orders open** (Open). Re-open a previously closed order by order ID, restoring it to the open order list. Takes no request body. Returns the re-opened Order object. Required: order_id.
- **List all Shopify products** (List). List Shopify products with optional filters by IDs, collection, handle, product type, or date range. Returns: id, title, handle, vendor, status, variants, images, options, created_at, updated_at. Max 250 per page. REST product listing is deprecated as of API version 2024-04.
- **Get single Shopify product by ID** (Get). Get a single Shopify product by id. Returns the full product object including id, title, body_html, vendor, product_type, status, variants, options, images, tags, created_at, and updated_at. Required: id.
- **Shopify products bulk delete** (Delete). Delete a Shopify product by id, including all its variants and images. Returns an empty 204 response on success. Required: id. Deleting products via the REST API is deprecated as of 2024-04; use the new product model.
- **Shopify products bulk update** (Update). Update an existing Shopify product by id. Returns the updated product including id, title, body_html, vendor, handle, status, variants, created_at, and updated_at. Required: id. REST product CRUD is deprecated as of API version 2024-04.
- **Shopify products count** (Action). Count all Shopify products in the store. Returns: count.
- **Create a Shopify product** (Create). Create a new product in Shopify. Returns: id, title, body_html, vendor, product_type, created_at, handle, updated_at, published_at, template_suffix, published_scope, tags, status, admin_graphql_api_id, variants, options, images, image. Required: title. REST product creation is deprecated as of API version 2024-04.
- **List all Shopify customers** (List). List Shopify customers with contact details, order history, and marketing consent. Returns: id, email, first_name, last_name, phone, state, note, verified_email, multipass_identifier, tax_exempt, tax_exemptions, tags, currency, created_at, updated_at, orders_count, total_spent, last_order_id, last_order_name, marketing_opt_in_level, addresses, default_address, email_marketing_consent,…
- **Get single Shopify customer by ID** (Get). Get a single Shopify customer by id. Returns the full customer object including id, email, first_name, last_name, phone, orders_count, total_spent, state, tags, currency, addresses, default_address, email_marketing_consent, sms_marketing_consent, and admin_graphql_api_id. Required: id.
- **Shopify customers bulk delete** (Delete). Delete a Shopify customer by id. Returns an empty 204 response on success. A customer can't be deleted if they have existing orders. Required: id.
- **Shopify customers bulk update** (Update). Update a Shopify customer by id, modifying attributes such as name, email, phone, tags, addresses, tax settings, and marketing consent. Returns the updated customer object including id, email, first_name, last_name, orders_count, state, total_spent, addresses, email_marketing_consent, sms_marketing_consent, and default_address. Required: id.
- **Shopify customers count** (Action). Count Shopify customers, optionally filtered by creation or update date range. Returns: count. Optional filters: created_at_min, created_at_max, updated_at_min, updated_at_max (date-time format).
- **Create a Shopify customer** (Create). Create a new customer in Shopify. Returns the created customer object including id, email, first_name, last_name, phone, state, tags, orders_count, total_spent, currency, addresses, email_marketing_consent, sms_marketing_consent, created_at, and admin_graphql_api_id.
- **Shopify customers create account activation URL** (Create). Generate a one-time-use account activation URL for a Shopify customer whose account is not yet enabled. Returns the account activation URL string, valid for 30 days. Required: customer_id. Generating a new URL invalidates any previous one; the endpoint returns an error if the customer's account is already enabled.
- **Shopify customers list orders** (List). List all Shopify orders belonging to a specific customer. Returns: id, admin_graphql_api_id, app_id, browser_ip, buyer_accepts_marketing, cancel_reason, cancelled_at, cart_token, checkout_id, checkout_token, client_details, closed_at, confirmation_number, confirmed, contact_email, created_at, currency, current_subtotal_price, current_subtotal_price_set, current_total_additional_fees_set,…
- **Shopify customers search** (Search). Search Shopify customers by a query string across fields such as email, name, phone, tags, and country. Returns matching customers with id, email, first_name, last_name, orders_count, total_spent, tags, addresses, and marketing consent details. Required: query.
- **Shopify customers send invite** (Send). Send an account invitation email to a Shopify customer. Returns: to, from, subject, custom_message, bcc. Required: customer_id.
- **List all Shopify users** (List). List all Shopify staff users for the shop. Returns: id, first_name, last_name, email, account_owner, bio, url, im, screen_name, phone, receive_announcements, permissions, locale, user_type, admin_graphql_api_id, tfa_enabled??. Max 250 per page.
- **Get single Shopify user by ID** (Get). Get a single Shopify staff user by id. Returns: id, first_name, last_name, email, account_owner, bio, url, im, screen_name, phone, receive_announcements, permissions, locale, user_type, admin_graphql_api_id, tfa_enabled??. Required: id.
- **Shopify users get current** (Get). Get the currently logged-in Shopify user associated with the access token. Returns: id, first_name, last_name, email, account_owner, permissions, locale, user_type, admin_graphql_api_id, tfa_enabled?, phone, bio, im, receive_announcements, screen_name, url. Only works when the access token was created for a specific user of the shop.
- **List all Shopify me** (List). Get the currently logged-in Shopify user. Returns: account_owner, bio, email, first_name, id, im, last_name, permissions, phone, receive_announcements, screen_name, url, locale, user_type.
- **Shopify blogs bulk delete** (Delete). Delete a Shopify blog by id. Returns an empty 204 response on success. Required: id.
- **Shopify blogs bulk update** (Update). Update an existing Shopify blog by id. Returns the updated blog object including id, title, handle, commentable, created_at, updated_at, tags, and admin_graphql_api_id. Required: id.
- **Shopify blogs count** (Action). Get the total count of all Shopify blogs for a shop. Returns: count.
- **Create a Shopify blog** (Create). Create a new Shopify blog. Returns the created blog object including id, title, handle, commentable, created_at, and admin_graphql_api_id. Required: title.
- **List all Shopify blogs** (List). List all Shopify blogs for a shop. Returns each blog with id, title, handle, commentable, created_at, updated_at, tags, and admin_graphql_api_id. Max 250 per page.
- **Shopify collections list products** (List). List products belonging to a Shopify collection, sorted by the collection's sort order. Returns: id, title, body_html, vendor, product_type, created_at, handle, updated_at, published_at, template_suffix, published_scope, tags, status, admin_graphql_api_id, options, images, image. Required: collection_id.
- **Get single Shopify collection by ID** (Get). Get a single Shopify collection by id. Returns the full collection object including id, handle, title, body_html, sort_order, products_count, collection_type, published_scope, template_suffix, published_at, updated_at, admin_graphql_api_id, and image. Required: id.
- **Shopify product images bulk delete** (Delete). Delete a Shopify product image by id. Returns an empty 204 response on success. Required: product_id, id. Deleting product images is deprecated as of REST API 2025-01.
- **Shopify product images bulk update** (Update). Update a Shopify product image's position, alt text, source, metafields, or variant associations. Returns: id, alt, position, product_id, created_at, updated_at, admin_graphql_api_id, width, height, src, variant_ids. Required: product_id, id. Updating product images is deprecated as of REST API 2025-01.
- **Shopify product images count** (Action). Receive a count of all Shopify product images for a specific product. Returns: count. Required: product_id.
- **Create a Shopify product image** (Create). Create a new Shopify product image for a specific product, optionally attaching it to product variants. Returns: id, alt, position, product_id, created_at, updated_at, admin_graphql_api_id, width, height, src, variant_ids. Required: product_id, image.
- **List all Shopify product images** (List). List all Shopify product images for a specific product. Returns: id, alt, position, product_id, created_at, updated_at, admin_graphql_api_id, width, height, src, variant_ids. Required: product_id.
- **Create a Shopify product variant** (Create). Create a new product variant for a Shopify product. Returns the created variant including id, product_id, title, price, sku, option values, and inventory details. Required: product_id. Variant CRUD is deprecated as of REST API 2024-04; use the InventoryLevel resource to manage inventory quantities.
- **List all Shopify product variants** (List). List all product variants for a Shopify product. Returns each variant with id, product_id, title, price, sku, option values, and inventory details. Required: product_id.
- **Shopify product variants count** (Action). Get the total count of product variants for a Shopify product. Returns: count. Required: product_id.
- **Get single Shopify product variant by ID** (Get). Get a single Shopify product variant by id. Returns the full variant including id, product_id, title, price, sku, barcode, and inventory details. Required: id.
- **Shopify product variants bulk update** (Update). Update an existing Shopify product variant by id. Returns the updated variant including id, product_id, title, price, sku, and inventory details. Required: id. Variant CRUD is deprecated as of REST API 2024-04; use the InventoryLevel resource to manage inventory quantities.
- **Shopify product variants bulk delete** (Delete). Delete a Shopify product variant by id. Returns an empty 204 response on success. Required: product_id, id. Deleting product variants is deprecated as of REST API 2024-04; use the GraphQL Admin API for new apps.
- **List all Shopify shop** (List). Retrieve the Shopify shop's configuration — general business and store management settings and information about the store. Returns: id, name, email, domain, province, country, country_code, country_name, address1, address2, city, zip, phone, source, latitude, longitude, primary_locale, currency, customer_email, timezone, iana_timezone, shop_owner, money_format, money_with_currency_format,…
- **Shopify webhooks bulk delete** (Delete). Delete a Shopify webhook subscription by id. Returns an empty 204 response on success. Required: id.
- **Shopify webhooks bulk update** (Update). Update a Shopify webhook subscription's attributes by id. Returns: id, address, topic, created_at, updated_at, format, fields, metafield_namespaces, api_version, private_metafield_namespaces, metafield_identifiers. Required: id.
- **Shopify webhooks count** (Action). Count existing Shopify webhook subscriptions, optionally filtered by address or topic. Returns the count as an integer.
- **Create a Shopify webhook** (Create). Create a new Shopify webhook subscription to receive notifications for shop events. Returns: id, address, topic, created_at, updated_at, format, fields, metafield_namespaces, api_version, private_metafield_namespaces, metafield_identifiers. Required: address, topic.
- **List all Shopify webhooks** (List). List Shopify webhook subscriptions for a shop. Returns: id, address, topic, created_at, updated_at, format, fields, metafield_namespaces, api_version, private_metafield_namespaces, metafield_identifiers. Results can be filtered by address or topic.
- **List all Shopify locations** (List). List Shopify locations for the store. Returns: id, name, address1, address2, city, zip, province, country, country_code, country_name, province_code, phone, active, legacy, created_at, updated_at, admin_graphql_api_id, localized_country_name, localized_province_name. Max 250 per page.
- **Get single Shopify location by ID** (Get). Get a single Shopify location by id. Returns: id, name, address1, address2, city, zip, province, country, country_code, country_name, province_code, phone, active, legacy, created_at, updated_at, admin_graphql_api_id, localized_country_name, localized_province_name. Required: id.
- **Shopify locations list inventory levels** (List). List inventory levels for a Shopify location. Returns: inventory_item_id, location_id, available, updated_at, admin_graphql_api_id. Required: location_id.
- **Shopify locations count** (Action). Count all Shopify locations for the store. Returns: count.
- **List all Shopify inventory items** (List). List Shopify inventory items by their IDs. Returns each item's id, sku, cost, tracked, requires_shipping, created_at, updated_at, country_harmonized_system_codes, and admin_graphql_api_id. Required: ids (comma-separated, max 100). Max 250 per page.
- **Get single Shopify inventory item by ID** (Get). Get a single Shopify inventory item by id. Returns the full inventory item including id, sku, cost, tracked, requires_shipping, created_at, updated_at, country_code_of_origin, harmonized_system_code, country_harmonized_system_codes, and admin_graphql_api_id. Required: id.
- **Shopify inventory items bulk update** (Update). Update a Shopify inventory item by id, modifying writable fields such as SKU, cost, tracking, shipping, and country-of-origin attributes. Returns the updated inventory item including id, sku, cost, tracked, requires_shipping, country_code_of_origin, and harmonized_system_code. Required: id.
- **Create a Shopify draft order** (Create). Create a draft order in the Shopify store. The draft order is nested under a draft_order key in the request body with line_items (variant_id and quantity for existing products, or title and price for custom items), optional customer, addresses, order-level discount and shipping line. The draft can later be completed into an order or invoiced to the customer.
- **List all Shopify draft orders** (List). List draft orders in the Shopify store. Supports filtering by IDs, status (open, invoice_sent or completed) and update date range, plus since_id cursoring. Returns DraftOrder objects.
- **Get single Shopify draft order by ID** (Get). Retrieve a single draft order by its ID. Returns the DraftOrder object including line items, customer, totals, status and the checkout invoice URL.
- **Shopify draft orders count** (Action). Count the draft orders in the Shopify store, optionally filtered by status, since_id and update date range. Returns a count.
- **Update a Shopify draft order by ID** (Update). Update an existing draft order by its ID. Fields are nested under a draft_order key in the request body; only provided fields are changed. Only draft orders that have not been completed can be updated.
- **Shopify draft orders complete** (Complete). Complete a draft order, converting it into an order. Set payment_pending to true to mark the resulting order as payment pending, or false (default) to mark it as paid. Returns the completed DraftOrder object including the created order_id. Required: draft_order_id.
- **Shopify draft orders send invoice** (Send). Send a checkout invoice email for a draft order to the customer. The invoice is nested under a draft_order_invoice key in the request body; all fields are optional and default to the shop and customer emails with a standard message. Returns the sent DraftOrderInvoice object. Required: draft_order_id.
- **Delete a Shopify draft order by ID** (Delete). Delete a draft order by its ID. Returns an empty object on success.
- **Shopify draft orders bulk delete** (Delete). Delete a draft order, addressing it via the draft_order_id query parameter. Returns an empty object on success. Required: draft_order_id.
- **Shopify draft orders bulk update** (Update). Update a draft order, addressing it via the draft_order_id query parameter. Fields are nested under a draft_order key in the request body; only provided fields are changed. Required: draft_order_id.
- **Create a Shopify metafield** (Create). Create a metafield for a Shopify blog. Returns: id, namespace, key, value, description, owner_id, owner_resource, created_at, updated_at, type, admin_graphql_api_id. Required: blog_id, metafield.namespace, metafield.key, metafield.value, metafield.type.
- **List all Shopify metafields** (List). List all metafields for a Shopify blog. Returns: id, namespace, key, value, description, owner_id, owner_resource, created_at, updated_at, type, admin_graphql_api_id. Required: blog_id.
- **Get single Shopify metafield by ID** (Get). Get a specific metafield for a Shopify blog by id. Returns: id, namespace, key, value, description, owner_id, owner_resource, created_at, updated_at, type, admin_graphql_api_id. Required: blog_id, id.
- **Shopify metafields count** (Action). Get a count of all metafields belonging to a Shopify blog. Returns: count. Required: blog_id.
- **Update a Shopify metafield by ID** (Update). Update a metafield for a Shopify blog by id. Only value and type can be updated. Returns: id, namespace, key, value, description, owner_id, owner_resource, created_at, updated_at, type, admin_graphql_api_id. Required: blog_id, id, metafield.value, metafield.type.
- **Delete a Shopify metafield by ID** (Delete). Delete a Shopify blog metafield by its id. Returns an empty 200 response on success. Required: blog_id, id. The REST Admin API is a legacy API; new public apps must use the GraphQL Admin API.
- **Shopify metafields bulk delete** (Delete). Delete a Shopify blog metafield by its metafield_id. Returns an empty 200 response on success. Required: blog_id, metafield_id. The REST Admin API is a legacy API; new public apps must use the GraphQL Admin API.
- **Shopify metafields bulk update** (Update). Update a Shopify blog metafield. Only the `value` and `type` properties can be modified. Returns: id, namespace, key, value, description, owner_id, owner_resource, type, created_at, updated_at, admin_graphql_api_id. Required: blog_id, metafield_id.
- **Create a Shopify fulfillment service** (Create). Create a new fulfillment service in Shopify. Returns: id, name, email, service_name, handle, fulfillment_orders_opt_in, include_pending_stock, provider_id, location_id, callback_url, tracking_support, inventory_management, admin_graphql_api_id, requires_shipping_method. Required: name.
- **List all Shopify fulfillment services** (List). List all fulfillment services in Shopify. Returns: id, name, email, service_name, handle, fulfillment_orders_opt_in, include_pending_stock, provider_id, location_id, callback_url, tracking_support, inventory_management, admin_graphql_api_id, requires_shipping_method. Use scope to retrieve all services or only those created by the calling app.
- **Get single Shopify fulfillment service by ID** (Get). Get a single Shopify fulfillment service by id. Returns: id, name, email, service_name, handle, fulfillment_orders_opt_in, include_pending_stock, provider_id, location_id, callback_url, tracking_support, inventory_management, admin_graphql_api_id, requires_shipping_method. Required: id.
- **Update a Shopify fulfillment service by ID** (Update). Update an existing Shopify fulfillment service by id. Returns: id, name, email, service_name, handle, fulfillment_orders_opt_in, include_pending_stock, provider_id, location_id, callback_url, tracking_support, inventory_management, admin_graphql_api_id, requires_shipping_method. Required: id.
- **Delete a Shopify fulfillment service by ID** (Delete). Delete a Shopify fulfillment service by id. Returns an empty 200 response on success. Required: id.
- **Shopify fulfillment services bulk delete** (Delete). Delete a Shopify fulfillment service by fulfillment_service_id. Returns an empty 200 response on success. Required: fulfillment_service_id.
- **Shopify fulfillment services bulk update** (Update). Update an existing Shopify fulfillment service. Returns the updated fulfillment service including id, name, handle, callback_url, inventory_management, tracking_support, location_id, and admin_graphql_api_id. Required: fulfillment_service_id.
- **Create a Shopify page** (Create). Create a new Shopify page for static storefront content such as About us or Contact us pages. Returns: id, title, shop_id, handle, body_html, author, created_at, updated_at, published_at, template_suffix, admin_graphql_api_id, metafield. Required: title.
- **List all Shopify pages** (List). List Shopify pages with optional filtering by creation date, update date, publication date, title, handle, and published status. Returns: id, title, shop_id, handle, body_html, author, created_at, updated_at, published_at, template_suffix, admin_graphql_api_id, metafield.
- **Get single Shopify page by ID** (Get). Get a single Shopify page by id. Returns: id, title, shop_id, handle, body_html, author, created_at, updated_at, published_at, template_suffix, admin_graphql_api_id, metafield. Required: id.
- **Shopify pages count** (Action). Count Shopify pages with optional filtering by creation date, update date, publication date, title, and published status. Returns: count.
- **Update a Shopify page by ID** (Update). Update a Shopify page by id, modifying fields such as title, body_html, template_suffix, or published status. Returns: id, title, shop_id, handle, body_html, author, created_at, updated_at, published_at, template_suffix, admin_graphql_api_id, metafield. Required: id.
- **Delete a Shopify page by ID** (Delete). Delete a Shopify page by id. Returns an empty 204 response on success. Required: id.
- **Shopify pages bulk delete** (Delete). Delete a Shopify page by page_id. Returns an empty 204 response on success. Required: page_id.
- **Shopify pages bulk update** (Update). Update a Shopify page by page_id. Returns the updated page object including id, title, body_html, handle, author, created_at, updated_at, published_at, template_suffix, shop_id, metafield, and admin_graphql_api_id. Required: page_id.
- **List all Shopify events** (List). List Shopify events generated by resources like orders, products, and articles. Returns: id, subject_id, created_at, subject_type, verb, arguments, body, message, author, description, path. Event data retained for 1 year and events may not appear in real-time.
- **Get single Shopify event by ID** (Get). Get a single Shopify event by id. Returns: id, subject_id, created_at, subject_type, verb, arguments, body, message, author, description, path. Required: id.
- **Shopify events count** (Action). Count Shopify events, optionally filtered by creation date. Returns: count. Event data is retained for 1 year.
- **Create a Shopify order risk** (Create). Create an order risk for a Shopify order representing a fraud check result. Returns: id, order_id, checkout_id, source, score, recommendation, display, cause_cancel, message, merchant_message. Required: order_id. Deprecated as of API version 2024-04.
- **List all Shopify order risks** (List). List all order risks for a Shopify order. Returns: id, order_id, checkout_id, source, score, recommendation, display, cause_cancel, message, merchant_message. Required: order_id. Deprecated as of API version 2024-04.
- **Get single Shopify order risk by ID** (Get). Get a single Shopify order risk by id. Returns: id, order_id, checkout_id, source, score, recommendation, display, cause_cancel, message, merchant_message. Required: order_id, id. Deprecated as of API version 2024-04.
- **Update a Shopify order risk by ID** (Update). Update a Shopify order risk by id. Returns: id, order_id, checkout_id, source, score, recommendation, display, cause_cancel, message, merchant_message. Required: order_id, id. Cannot modify risks created by another app. Deprecated as of API version 2024-04.
- **Delete a Shopify order risk by ID** (Delete). Delete a Shopify order risk by id. Returns an empty 204 response on success. Required: order_id, id. Cannot delete risks created by another app. Deprecated as of API version 2024-04.
- **Shopify order risks bulk delete** (Delete). Delete a Shopify order risk for an order. This resource is deprecated as of API version 2024-04. Returns an empty 204 response on success. Required: order_id, risk_id. You cannot delete an order risk that was created by another application.
- **Shopify order risks bulk update** (Update). Update a Shopify order risk for an order. This resource is deprecated as of API version 2024-04. Returns: id, order_id, checkout_id, source, score, recommendation, display, cause_cancel, message, merchant_message. Required: order_id, risk_id. You cannot modify an order risk that was created by another application.
- **List all Shopify product listings** (List). List Shopify product listings published to your sales channel app. Returns each listing with product_id, title, handle, body_html, vendor, product_type, tags, available, created_at, updated_at, published_at, variants, images, and options. Optional filters: collection_id, handle, product_ids, updated_at_min.
- **Get single Shopify product listing by ID** (Get). Get a single Shopify product listing by id. Returns: product_id, body_html, created_at, handle, images, options, product_type, published_at, tags, title, updated_at, variants, vendor, available. Required: id.
- **Shopify product listings count** (Action). Get a count of Shopify product listings published to your app. Returns the count as an integer.
- **Shopify product listings list product IDS** (List). List product IDs of products that are published to your Shopify app. Returns an array of numeric product IDs.
- **Create a Shopify product listing** (Create). Create a product listing to publish a Shopify product to your app's sales channel. Returns: product_id, body_html, created_at, handle, images, options, product_type, published_at, tags, title, updated_at, variants, vendor, available. Required: id, product_listing (with product_id).
- **Delete a Shopify product listing by ID** (Delete). Delete a Shopify product listing to unpublish a product from your sales channel. Returns an empty 204 response on success. Required: id.
- **Shopify product listings bulk delete** (Delete). Delete a Shopify product listing to unpublish a product from your sales channel. Returns an empty 204 response on success. Required: product_listing_id.
- **Create a Shopify price rule** (Create). Create a Shopify price rule to define discounts as a percentage, fixed amount, or free shipping using entitlements and prerequisites. Returns: id, title, value_type, value, customer_selection, target_type, target_selection, allocation_method, allocation_limit, once_per_customer, usage_limit, starts_at, ends_at, created_at, updated_at, entitled_product_ids, entitled_variant_ids,…
- **List all Shopify price rules** (List). List Shopify price rules. Returns: id, title, value_type, value, customer_selection, target_type, target_selection, allocation_method, allocation_limit, once_per_customer, usage_limit, starts_at, ends_at, created_at, updated_at, entitled_product_ids, entitled_variant_ids, entitled_collection_ids, entitled_country_ids, prerequisite_product_ids, prerequisite_variant_ids,…
- **Get single Shopify price rule by ID** (Get). Get a single Shopify price rule by id. Returns: id, title, value_type, value, customer_selection, target_type, target_selection, allocation_method, allocation_limit, once_per_customer, usage_limit, starts_at, ends_at, created_at, updated_at, entitled_product_ids, entitled_variant_ids, entitled_collection_ids, entitled_country_ids, prerequisite_product_ids, prerequisite_variant_ids,…
- **Shopify price rules count** (Action). Count all Shopify price rules on the store. Returns: count.
- **Update a Shopify price rule by ID** (Update). Update an existing Shopify price rule by id. Returns the updated price rule including id, title, value_type, value, allocation_method, starts_at, and entitlement and prerequisite configuration. Required: id.
- **Delete a Shopify price rule by ID** (Delete). Delete a Shopify price rule by id. Returns an empty 204 response on success. Required: id.
- **Shopify price rules bulk delete** (Delete). Delete a Shopify price rule by price_rule_id. Returns an empty 204 response on success. Required: price_rule_id.
- **Shopify price rules bulk update** (Update). Update an existing Shopify price rule by price_rule_id. Returns the updated price rule including id, title, value_type, value, starts_at, allocation_method, customer_selection, target_type, and created_at. Required: price_rule_id.
- **Create a Shopify carrier service** (Create). Create a new carrier service in Shopify that provides real-time shipping rates at checkout. Returns: id, name, active, service_discovery, carrier_service_type, admin_graphql_api_id, format, callback_url. Required: name and callback_url.
- **List all Shopify carrier services** (List). List carrier services in Shopify. Only services with active set to true are returned. Returns: id, name, active, service_discovery, carrier_service_type, admin_graphql_api_id, format, callback_url.
- **Get single Shopify carrier service by ID** (Get). Get a single carrier service in Shopify by id. Returns: id, name, active, service_discovery, carrier_service_type, admin_graphql_api_id, format, callback_url. Required: id.
- **Update a Shopify carrier service by ID** (Update). Update an existing carrier service in Shopify by id. Only the app that created the carrier service can update it. Returns: id, name, active, service_discovery, carrier_service_type, admin_graphql_api_id, format, callback_url. Required: id.
- **Delete a Shopify carrier service by ID** (Delete). Delete a carrier service in Shopify by id. Returns an empty 204 response on success. Required: id.
- **Shopify carrier services bulk delete** (Delete). Delete a Shopify carrier service by carrier_service_id. Returns an empty 204 response on success. Required: carrier_service_id.
- **Shopify carrier services bulk update** (Update). Update an existing Shopify carrier service by carrier_service_id. Returns the updated carrier service including id, name, active, service_discovery, carrier_service_type, admin_graphql_api_id, format, and callback_url. Required: carrier_service_id.
- **List all Shopify disputes** (List). List Shopify payment disputes ordered by initiated_at date with the most recent first. Returns: id, order_id, type, amount, currency, reason, network_reason_code, status, evidence_due_by, evidence_sent_on, finalized_on, initiated_at.
- **Get single Shopify dispute by ID** (Get). Get a single Shopify payment dispute by id. Returns: id, order_id, type, amount, currency, reason, network_reason_code, status, evidence_due_by, evidence_sent_on, finalized_on, initiated_at. Required: id.
- **List all Shopify assets** (List). List Shopify theme assets for a theme. Returns: key, public_url, created_at, updated_at, content_type, size, checksum, theme_id. Returns metadata only; retrieve an asset individually for its content. Required: theme_id.
- **Shopify assets upsert** (Upsert). Create or update a Shopify theme asset by key. The asset body accepts value (text content), attachment (base64 image), src (image URL), or source_key (to duplicate an existing asset). Returns: key, public_url, created_at, updated_at, content_type, size, checksum, theme_id, value, attachment. Required: theme_id.
- **Delete a Shopify asset by ID** (Delete). Delete Shopify theme assets for a given theme. Returns: message. Required: theme_id. Deleting an asset required by the theme fails with an error.
- **Shopify assets bulk delete** (Delete). Delete a specific Shopify theme asset by its key. Returns: message. Required: theme_id, asset_key. Asset key is limited to 100 characters; deleting an asset required by the theme fails with an error.
- **Create a Shopify customer address** (Create). Create a new address for a Shopify customer. Returns the created address with id, customer_id, first_name, last_name, address1, address2, city, province, country, zip, phone, name, province_code, country_code, country_name, and default. Required: customer_id.
- **List all Shopify customer addresses** (List). List all addresses for a Shopify customer. Returns each address with id, customer_id, first_name, last_name, address1, address2, city, province, country, zip, phone, name, province_code, country_code, country_name, and default. Required: customer_id.
- **Get single Shopify customer address by ID** (Get). Get a single Shopify customer address by id. Returns the address with id, customer_id, first_name, last_name, address1, address2, city, province, country, zip, phone, name, province_code, country_code, country_name, and default. Required: customer_id, id.
- **Update a Shopify customer address by ID** (Update). Update an existing Shopify customer address by id. Returns the updated address with id, customer_id, first_name, last_name, address1, address2, city, province, country, zip, phone, name, province_code, country_code, country_name, and default. Required: customer_id, id.
- **Shopify customer addresses set default** (Set). Set a specific address as the default for a Shopify customer. Returns the address with id, customer_id, first_name, last_name, address1, address2, city, province, country, zip, phone, name, province_code, country_code, country_name, and default. Required: customer_id, addresse_id.
- **Shopify customer addresses bulk set** (Set). Perform bulk operations on multiple Shopify customer addresses, such as batch-destroying addresses. Returns an empty response on success. Required: customer_id, address_ids, operation.
- **Delete a Shopify customer address by ID** (Delete). Delete a Shopify customer address by id. Returns an empty response on success. Required: customer_id, id.
- **Shopify customer addresses bulk delete** (Delete). Delete a Shopify customer address by address_id. Returns an empty response on success. Required: customer_id, address_id.
- **Shopify customer addresses bulk update** (Update). Update an existing Shopify customer address by address_id. Returns the updated address including id, customer_id, address1, city, country, zip, phone, default, and name. Required: customer_id, address_id.
- **List all Shopify policies** (List). List a shop's policies in Shopify, such as refund and privacy policies. Returns: body, created_at, updated_at, handle, title, url. Policies are read-only — only the shop owner can edit them from the Shopify admin.
- **Create a Shopify article** (Create). Create an article in a Shopify blog. The article is nested under an article key in the request body and supports HTML body content, a summary, tags, an image and scheduled or immediate publishing. Required: blog_id, article.title.
- **List all Shopify articles** (List). List articles in a Shopify blog. Supports filtering by creation, update and publication date ranges, published status, handle, tag and author, plus since_id cursoring. Returns Article objects. Required: blog_id.
- **Get single Shopify article by ID** (Get). Retrieve a single article from a Shopify blog by article ID. Required: blog_id and the article id.
- **Shopify articles count** (Action). Count the articles in a Shopify blog, optionally filtered by creation, update and publication date ranges and published status. Returns a count. Required: blog_id.
- **Shopify articles list authors** (List). List all article authors across every blog in the Shopify store. Returns an array of author names.
- **Shopify articles list tags** (List). List all tags attached to articles across every blog in the Shopify store. Optionally limit the number of tags or restrict to popular tags.
- **Shopify articles list blog tags** (List). List all tags attached to articles in a specific Shopify blog. Optionally limit the number of tags or restrict to popular tags. Required: blog_id.
- **Update a Shopify article by ID** (Update). Update an existing article in a Shopify blog by article ID. Fields are nested under an article key in the request body; only provided fields are changed. Required: blog_id and the article id.
- **Delete a Shopify article by ID** (Delete). Delete an article from a Shopify blog by article ID. Returns an empty object on success. Required: blog_id and the article id.
- **Shopify articles bulk delete** (Delete). Delete an article from a Shopify blog, addressing both the blog and the article via query parameters. Returns an empty object on success. Required: blog_id, article_id.
- **Shopify articles bulk update** (Update). Update an article in a Shopify blog, addressing both the blog and the article via query parameters. Fields are nested under an article key in the request body; only provided fields are changed. Required: blog_id, article_id.
- **Shopify discount codes create batch** (Create). Create up to 100 Shopify discount codes in a single asynchronous batch job for a price rule. Returns: id, price_rule_id, started_at, completed_at, created_at, updated_at, status, codes_count, imported_count, failed_count, logs. Required: price_rule_id. Only one creation job per shop at a time; up to 100 codes per batch.
- **Create a Shopify discount code** (Create). Create a single Shopify discount code for a price rule. Returns: id, price_rule_id, code, usage_count, created_at, updated_at, errors. Required: price_rule_id.
- **Shopify discount codes count** (Action). Retrieve a count of Shopify discount codes for a shop. Returns the total count as an integer.
- **Shopify discount codes lookup** (Action). Look up a Shopify discount code by its code name. Returns: id, price_rule_id, code, usage_count, created_at, updated_at, errors. Required: code. This endpoint is deprecated.
- **Shopify discount codes get batch** (Get). Retrieve a Shopify discount code batch creation job by id. Returns: id, price_rule_id, started_at, completed_at, created_at, updated_at, status, codes_count, imported_count, failed_count, logs. Required: price_rule_id, id.
- **Shopify discount codes list batch** (List). List Shopify discount codes from a batch creation job. Returns: id, code, errors. Required: price_rule_id, batch_id. Successfully created codes have a populated id; failed codes include a populated errors object.
- **List all Shopify discount codes** (List). List Shopify discount codes for a price rule. Returns: id, price_rule_id, code, usage_count, created_at, updated_at. Required: price_rule_id.
- **Get single Shopify discount code by ID** (Get). Get a single Shopify discount code by id. Returns: id, price_rule_id, code, usage_count, created_at, updated_at. Required: price_rule_id, id.
- **Update a Shopify discount code by ID** (Update). Update an existing Shopify discount code for a price rule, typically to change its code string. Returns: id, price_rule_id, code, usage_count, created_at, updated_at. Required: price_rule_id, id.
- **Delete a Shopify discount code by ID** (Delete). Delete a Shopify discount code from a price rule. Returns an empty 204 response on success. Required: price_rule_id, id.
- **Shopify discount codes bulk delete** (Delete). Delete a single Shopify discount code that belongs to a price rule. Returns an empty 204 response on success. Required: price_rule_id, discount_code_id.
- **Shopify discount codes bulk update** (Update). Update a single Shopify discount code under a price rule, typically changing its code value. Returns: id, price_rule_id, code, usage_count, created_at, updated_at. Required: price_rule_id, discount_code_id, discount_code.
- **Create a Shopify comment** (Create). Create a comment on a Shopify blog article. Returns: id, body, body_html, author, email, status, article_id, blog_id, created_at, updated_at, ip, user_agent, published_at. Required: body, author, email. This REST endpoint is deprecated; use the GraphQL Admin API for new apps.
- **List all Shopify comments** (List). List Shopify blog article comments, optionally filtered by a specific article or blog. Returns: id, body, body_html, author, email, status, article_id, blog_id, created_at, updated_at, ip, user_agent, published_at. Use article_id and blog_id together to scope results to a single article, or blog_id alone for all comments across a blog.
- **Get single Shopify comment by ID** (Get). Get a single Shopify blog comment by id. Returns the full comment object including id, body, body_html, author, email, status, article_id, blog_id, created_at, updated_at, ip, user_agent, and published_at. Required: id.
- **Shopify comments count** (Action). Count all comments in a Shopify shop, with optional filtering by article or blog. Returns: count.
- **Shopify comments approve** (Approve). Approve a Shopify blog comment and publish it to the blog. Returns the comment object including id, body, author, email, status, published_at, article_id, and blog_id. Required: comment_id.
- **Shopify comments not spam** (Action). Mark a Shopify blog comment as not spam, restoring it from spam status to an unapproved or published state. Returns the comment object including id, body, body_html, author, email, status, article_id, blog_id, created_at, updated_at, published_at. Required: comment_id.
- **Shopify comments remove** (Delete). Remove a Shopify blog comment, setting its status to removed so it is no longer visible in the blog or Shopify admin. Returns the comment object including id, body, body_html, author, email, status, article_id, blog_id, created_at, updated_at, published_at. Required: comment_id.
- **Shopify comments restore** (Restore). Restore a previously removed Shopify blog comment to its prior visible state. Returns the comment object including id, body, body_html, author, email, status, article_id, blog_id, created_at, updated_at, published_at. Required: comment_id. This endpoint is deprecated.
- **Shopify comments spam** (Action). Mark a Shopify blog comment as spam, removing it from the Shopify admin and the blog. Returns the comment object including id, body, body_html, author, email, status, article_id, blog_id, created_at, updated_at, published_at. Required: comment_id.
- **Shopify comments bulk update** (Update). Update a Shopify blog comment's body, author, email, and published_at date. Returns the updated comment object including id, body, body_html, author, email, status, article_id, blog_id, created_at, updated_at, published_at. Required: comment_id. This endpoint is deprecated.
- **Shopify inventory levels adjust** (Action). Adjust the available inventory quantity of a Shopify inventory item at a single location by a relative delta. Returns: inventory_item_id, location_id, available, updated_at, admin_graphql_api_id. Required: inventory_item_id, location_id, available_adjustment. Send negative values to subtract from the current available quantity; adjusting an untracked inventory item fails with an error.
- **Shopify inventory levels bulk delete** (Delete). Delete a Shopify inventory level by removing an inventory item from a specified location. Every inventory item must retain at least one inventory level, so connect the item to another location first if relocating. Returns an empty 204 response on success. Required: inventory_item_id, location_id.
- **Shopify inventory levels connect** (Action). Connect a Shopify inventory item to a location by creating a new inventory level at that location. Returns: inventory_item_id, location_id, available, updated_at, admin_graphql_api_id. Required: inventory_item_id, location_id. When a fulfillment service location is involved, set relocate_if_necessary to true or the connection will fail.
- **List all Shopify inventory levels** (List). List Shopify inventory levels by inventory item, location, or both. Returns: inventory_item_id, location_id, available, updated_at, admin_graphql_api_id. At least one of inventory_item_ids or location_ids must be supplied; omitting both returns a 422 error.
- **Shopify inventory levels set** (Set). Set the available quantity of a Shopify inventory item at a specific location. If the location is not connected, it will be connected automatically. Returns: inventory_item_id, location_id, available, updated_at, admin_graphql_api_id. Required: inventory_item_id, location_id, available.
- **Create a Shopify country** (Create). Create a new Shopify country by providing a two-letter country code and an optional tax rate. Returns: id, name, code, tax_name, tax, provinces. The tax field is deprecated as of version 2020-10; custom tax values can no longer be set.
- **List all Shopify countries** (List). List Shopify countries with their tax rates and provinces. Returns: id, name, code, tax_name, tax, provinces.
- **Get single Shopify country by ID** (Get). Get a single Shopify country by id, including its tax rate and provinces. Returns: id, name, code, tax_name, tax, provinces. Required: id.
- **Shopify countries count** (Action). Get the total count of Shopify countries configured for the store. Returns the count as an integer. This endpoint is deprecated as of API version 2024-07.
- **Update a Shopify country by ID** (Update). Update an existing Shopify country, typically its tax rate. Returns: id, name, code, tax_name, tax, provinces. Required: id. The tax field is deprecated as of version 2020-10; custom tax values can no longer be updated.
- **Delete a Shopify country by ID** (Delete). Delete a Shopify country by id. The REST Country API is deprecated as of version 2024-07. Returns an empty 204 response on success. Required: id.
- **Shopify countries bulk update** (Update). Update a Shopify country's tax settings and provinces by country_id. Returns: id, name, code, tax_name, tax, provinces. Required: country_id. The id and tax body fields are deprecated.
- **Shopify countries bulk delete** (Delete). Delete a Shopify country by country_id. Returns an empty 204 response on success. Required: country_id.
- **List all Shopify payouts** (List). List Shopify Payments payouts ordered by payout date, most recent first. Returns: id, status, date, currency, amount, summary. Filter by date, date range, status, or payout ID.
- **Get single Shopify payout by ID** (Get). Get a single Shopify Payments payout by id. Returns: id, status, date, currency, amount, summary. Required: id.
- **Create a Shopify storefront access token** (Create). Create a new Shopify storefront access token for unauthenticated Storefront API access. Returns: id, access_token, access_scope, created_at, title, admin_graphql_api_id. Required: title. An app can have a maximum of 100 active storefront access tokens per shop, and the app must have unauthenticated access scopes granted.
- **List all Shopify storefront access tokens** (List). List Shopify storefront access tokens that have been issued. Returns: id, access_token, access_scope, created_at, title, admin_graphql_api_id.
- **Delete a Shopify storefront access token by ID** (Delete). Delete a Shopify storefront access token by id. Returns an empty 204 response on success. Required: id.
- **Shopify storefront access tokens bulk delete** (Delete). Delete a Shopify storefront access token by storefront_access_token_id. Returns an empty 204 response on success. Required: storefront_access_token_id.
- **Create a Shopify smart collection** (Create). Create a new Shopify smart collection using rules that automatically group products. Returns the created smart collection including id, handle, title, rules, sort_order, published_at, disjunctive, and image. Required: smart_collection (with title). Title is mandatory and cannot be blank; a store can have up to 5000 smart collections by default.
- **List all Shopify smart collections** (List). List Shopify smart collections with optional filtering by handle, title, product_id, published status, or date range. Returns: id, handle, title, updated_at, body_html, published_at, sort_order, template_suffix, products_count, disjunctive, rules, published_scope, admin_graphql_api_id, image. Max 250 results per page; defaults to 50.
- **Get single Shopify smart collection by ID** (Get). Get a single Shopify smart collection by its ID. Returns: id, handle, title, updated_at, body_html, published_at, sort_order, template_suffix, products_count, disjunctive, rules, published_scope, admin_graphql_api_id, image. Required: id.
- **Shopify smart collections count** (Action). Count the total number of Shopify smart collections, optionally filtered to those containing a specific product. Returns the count as an integer. Optional: product_id to count only collections that include the specified product.
- **Update a Shopify smart collection by ID** (Update). Update an existing Shopify smart collection by id. Returns the updated collection including id, title, handle, sort_order, rules, published_at, disjunctive, and image. Required: id.
- **Shopify smart collections update order** (Update). Update the product ordering of a Shopify smart collection — either set a new sort order type or manually reorder specific products. Returns the updated smart collection including id, handle, title, sort_order, rules, and updated_at. Required: smart_collection_id.
- **Delete a Shopify smart collection by ID** (Delete). Delete a Shopify smart collection by id. Returns an empty 204 response on success.
- **Shopify smart collections bulk update** (Update). Update an existing Shopify smart collection, including its rules, sort order, body HTML, and image. Returns the updated collection with id, title, handle, body_html, sort_order, rules, disjunctive, published_scope, published_at, updated_at, template_suffix, products_count, admin_graphql_api_id, and image. Required: smart_collection_id.
- **Shopify smart collections bulk delete** (Delete). Delete a Shopify smart collection by its smart_collection_id. Returns an empty 204 response on success. Required: smart_collection_id.
- **Create a Shopify collect** (Create). Add a product to a custom collection in Shopify by creating a collect that links them. Returns: id, collection_id, product_id, created_at, updated_at, position, sort_value. Required: product_id, collection_id. Creating a collect for a smart collection returns a 403 error.
- **List all Shopify collects** (List). List Shopify collects that link products to custom collections. Returns: id, collection_id, product_id, created_at, updated_at, position, sort_value.
- **Get single Shopify collect by ID** (Get). Get a single Shopify collect by id. Returns: id, collection_id, product_id, created_at, updated_at, position, sort_value. Required: id.
- **Shopify collects count** (Action). Count Shopify collects, optionally filtered by collection or product. Returns: count. The count endpoint returns only a numeric total — it does not include collect record fields.
- **Delete a Shopify collect by ID** (Delete). Remove a product from a collection in Shopify by deleting the collect. Returns an empty response on success. Required: id.
- **Shopify collects bulk delete** (Delete). Delete a Shopify collect by collect_id to remove a product from a custom collection. Returns an empty 204 response on success. Required: collect_id.
- **Create a Shopify cancellation request** (Create). Send a cancellation request to the fulfillment service of a Shopify fulfillment order. Returns the updated fulfillment order including id, request_status, status, supported_actions, destination, origin, and line_items. Required: fulfillment_order_id.
- **Shopify cancellation requests accept** (Accept). Accept a cancellation request sent to a fulfillment service for a Shopify fulfillment order. Returns the updated fulfillment order including id, request_status, status, supported_actions, destination, origin, and line_items. Required: fulfillment_order_id.
- **Shopify cancellation requests reject** (Reject). Reject a cancellation request sent to a fulfillment service for a Shopify fulfillment order. Returns the updated fulfillment order including id, request_status, status, supported_actions, destination, origin, and line_items. Required: fulfillment_order_id.
- **Create a Shopify refund** (Create). Create a Shopify refund for an order. Use the calculate endpoint first to generate the transactions to submit. Returns: id, order_id, created_at, note, user_id, processed_at, duties, total_duties_set, return, refund_shipping_lines, restock, additional_fees, total_additional_fees_set, admin_graphql_api_id, order_adjustments, refund_line_items, transactions. Required: order_id.
- **Shopify refunds calculate** (Action). Calculate a Shopify refund for an order based on specified line items and shipping. Use this before creating a refund to generate accurate suggested_refund transactions — change the transaction kind to refund when submitting the actual refund. Returns: duties, total_duties_set, return, refund_shipping_lines, shipping, additional_fees, total_additional_fees_set, refund_line_items, transactions,…
- **List all Shopify refunds** (List). List Shopify refunds for a specific order. Returns each refund with id, order_id, created_at, note, processed_at, refund_line_items, transactions, and order_adjustments. Required: order_id.
- **Get single Shopify refund by ID** (Get). Get a single Shopify refund by id for a specific order. Returns: id, order_id, created_at, note, user_id, processed_at, duties, total_duties_set, return, refund_shipping_lines, restock, additional_fees, total_additional_fees_set, admin_graphql_api_id, order_adjustments, refund_line_items, refund_duties, transactions. Required: order_id, id.
- **Create a Shopify transaction** (Create). Create a transaction for a Shopify order, such as a capture, void, authorization, or sale. Returns: id, order_id, kind, gateway, status, message, created_at, test, authorization, location_id, user_id, parent_id, processed_at, device_id, error_code, source_name, payment_details, receipt, currency_exchange_adjustment, amount, currency, payment_id, total_unsettled_set, manual_payment_gateway,…
- **List all Shopify transactions** (List). List all transactions for a Shopify order. Returns each transaction with id, order_id, kind, gateway, status, amount, currency, payment_details, created_at. Required: order_id. Transactions on multi-currency orders are returned in presentment currency by default.
- **Get single Shopify transaction by ID** (Get). Get a specific transaction for a Shopify order by id. Returns: id, order_id, kind, gateway, status, message, created_at, test, authorization, location_id, user_id, parent_id, processed_at, device_id, error_code, source_name, payment_details, receipt, currency_exchange_adjustment, amount, currency, payment_id, total_unsettled_set, manual_payment_gateway, amount_rounding, admin_graphql_api_id,…
- **Shopify transactions count** (Action). Get the count of transactions for a Shopify order. Returns the transaction count as an integer. Required: order_id.
- **Create a Shopify fulfillment** (Create). Create a fulfillment for one or many fulfillment orders in Shopify. Returns the fulfillment object including id, order_id, status, created_at, service, updated_at, tracking_number, tracking_urls, line_items, and name. Required: line_items_by_fulfillment_order. Each fulfillment supports a single tracking number.
- **Shopify fulfillments cancel** (Cancel). Cancel a Shopify fulfillment by id. Returns the cancelled fulfillment object including id, order_id, status, created_at, updated_at, name, service, and line_items. Required: fulfillment_id.
- **Shopify fulfillments update tracking** (Update). Update tracking information for a Shopify fulfillment by id. Returns the updated fulfillment object including id, order_id, status, tracking_number, tracking_company, tracking_url, line_items, and name. Required: fulfillment_id.
- **Shopify fulfillments list by fulfillment order** (List). List Shopify fulfillments associated with a specific fulfillment order. Returns: id, order_id, status, created_at, updated_at, service, tracking_company, shipment_status, location_id, origin_address, line_items, tracking_number, tracking_numbers, tracking_url, tracking_urls, receipt, name, admin_graphql_api_id, variant_inventory_management. Required: fulfillment_order_id.
- **List all Shopify fulfillments** (List). List Shopify fulfillments associated with a specific order. Returns: id, order_id, status, created_at, updated_at, service, tracking_company, shipment_status, location_id, origin_address, line_items, tracking_number, tracking_numbers, tracking_url, tracking_urls, receipt, name, admin_graphql_api_id, variant_inventory_management. Required: order_id.
- **Get single Shopify fulfillment by ID** (Get). Get a single Shopify fulfillment by id for a specific order. Returns: id, order_id, status, created_at, updated_at, service, tracking_company, shipment_status, location_id, origin_address, line_items, tracking_number, tracking_numbers, tracking_url, tracking_urls, receipt, name, admin_graphql_api_id, variant_inventory_management. Required: order_id, id.
- **Shopify fulfillments count** (Action). Retrieve the total count of fulfillments associated with a specific Shopify order. Returns the count as an integer. Required: order_id.
- **List all Shopify access scopes** (List). List Shopify access scopes associated with the access token used for the request, reflecting the permissions a merchant has granted to the app. Returns: handle.g. read_products, write_orders, read_orders).
- **Create a Shopify resource feedback** (Create). Create Shopify resource feedback to report shop or resource status to the merchant. Returns: created_at, updated_at, resource_id, resource_type, resource_updated_at, messages, feedback_generated_at, state. Required: state, feedback_generated_at. Messages are required only when state is requires_action and disallowed when state is success; each message must be up to 100 characters ending with a…
- **List all Shopify resource feedback** (List). List all Shopify resource feedback records for a shop, returning zero or one objects. Returns: created_at, updated_at, resource_id, resource_type, resource_updated_at, messages, feedback_generated_at, state. IDs are not returned as part of this request; records are immutable except when a POST replaces them.
- **List all Shopify tender transactions** (List). List Shopify tender transactions, each representing money passing between the merchant and a customer (positive amount = customer paid, negative = refund). Returns: id, order_id, amount, currency, user_id, test, processed_at, remote_reference, payment_details, payment_method. Supports filtering by processed_at date range and ordering by processed_at. Defaults to 50 results per page, max 250.
- **List all Shopify balance transactions** (List). List all Shopify Payments balance transactions ordered by processing time, most recent first. Every movement of money in or out of the account is recorded as a balance transaction. Returns: id, type, test, payout_id, payout_status, currency, amount, fee, net, source_id, source_type, source_order_id, source_order_transaction_id, processed_at, adjustment_order_transactions, adjustment_reason.
- **Create a Shopify product resource feedback** (Create). Create product resource feedback in Shopify to communicate product setup issues to merchants. Returns: created_at, updated_at, resource_id, resource_type, resource_updated_at, messages, feedback_generated_at, state. Required: product_id, state, resource_updated_at, feedback_generated_at. Only available for Sales Channel apps; sending new feedback replaces any previously sent feedback for the…
- **List all Shopify product resource feedback** (List). List all product resource feedback records for a Shopify product. Returns: created_at, updated_at, resource_id, resource_type, resource_updated_at, messages, feedback_generated_at, state. Required: product_id. Only available for Sales Channel apps.
