Shopify
Ecommerce storefront with products, orders, customers, inventory, discounts, and fulfillment records.
Good for checking order status, adjusting inventory counts, creating a discount code, and pulling a customer's purchase history.
Use Shopify with Snow
Snow is a personal AI assistant that builds real apps for you, and they can put Shopify to work.
What Snow can do with Shopify
These are the Shopify operations Snow and the apps you build with it can run. Sign in to choose which ones Snow may run without asking.
Reads190
Look at your data without changing it.
- Count product images
Retrieves the total count of images for a specific Shopify product. Use when you need to know how many images are associated with a product.
- Get order
Retrieve a specific order using its unique identifier. Returns detailed order information including line items, customer data, addresses, financial status, fulfillment status, and more.
- Query current app installation
Query the currently authenticated app installation on a Shopify store. Use when you need to retrieve details about the current app's installation including access scopes, active subscriptions, launch URL, and uninstall URL.
- Query Shop (GraphQL)
Retrieve shop information using the Shopify GraphQL Admin API. Use when you need shop-level configuration such as name, email, domain, currency settings, enabled features, and policies.
- Retrieve a single customer
Retrieve a single customer by their unique identifier. Use when you need to fetch detailed information about a specific customer.
- Retrieves a list of customers
Retrieve a list of customers from a Shopify store. Use when you need to fetch customer data with optional filtering by IDs, creation dates, update dates, or account status. Supports pagination using cursor-based navigation via page_info parameter.
- Run Shopify bulk operation query
Create and start a Shopify GraphQL bulk operation for asynchronous data fetching. Use when you need to retrieve large datasets from Shopify without pagination. The operation runs in the background and results are available in a JSONL file for up to seven days after completion. Only one bulk query operation can run at a time per shop. Query must include at least one connection field.
- Run Shopify bulk query operation
Run a Shopify GraphQL bulk query operation and return the result file URL and operation metadata. Use when you need to retrieve large datasets (thousands of records) from Shopify without manual pagination, such as bulk fetching products, orders, customers, or inventory. The query must include at least one connection (edges/nodes structure). This action polls the operation status until completion or timeout.
- Search Customers
Search for customers matching a supplied query. Use when you need to find customers based on specific criteria like email, name, location, order count, or spending.
- Shopify GraphQL customers and customer search
Shopify GraphQL customers and customer search. The response always includes raw GraphQL data, extracted userErrors, pageInfo, and cost extensions.
- Shopify GraphQL discounts and discount search
Shopify GraphQL discounts and discount search. The response always includes raw GraphQL data, extracted userErrors, pageInfo, and cost extensions.
- Shopify GraphQL inventory items and levels
Shopify GraphQL inventory items and levels. The response always includes raw GraphQL data, extracted userErrors, pageInfo, and cost extensions.
- Shopify GraphQL orders and order search
Shopify GraphQL orders and order search. The response always includes raw GraphQL data, extracted userErrors, pageInfo, and cost extensions.
- Calculate a refund
Calculate accurate refund amounts, taxes, and transactions for a Shopify order before creating an actual refund. Use this action to: - Preview refund calculations for line items with accurate tax breakdowns - Determine shipping refund amounts and maximum refundable values - Get suggested transactions that can be used to create the actual refund The response includes transactions with kind='suggested_refund' which must be changed to kind='refund' before creating an actual refund using the create refund endpoint.
- Check Batch Listing Support for Price Rule
Checks if batch listing is supported for a price rule and provides guidance on alternatives. IMPORTANT: Shopify's API does not provide an endpoint to list all batches for a price rule. This action returns structured information explaining the limitation and suggesting alternatives. The available batch endpoints in Shopify's API are: - POST /price_rules/{price_rule_id}/batch.json - Creates a batch discount code creation job - GET /price_rules/{price_rule_id}/batch/{batch_id}.json - Retrieves a specific batch job by ID - GET /price_rules/{price_rule_id}/batch/{batch_id}/discount_codes.json - Lists discount codes created by a batch To retrieve batch details, you must know the batch_id (returned when creating a batch). Shopify only allows one active batch creation job per shop at a time. Use action SHOPIFY_GET_PRICE_RULES_PARAM_PRICE_RULE_ID_BATCH_PARAM_BATCH_ID if you have the batch_id. Reference: https://shopify.dev/docs/api/admin-rest/latest/resources/discountcode
- Count articles in blog
Retrieves a count of all articles from a blog. Use when you need to know how many articles exist in a specific blog, optionally filtered by creation, publication, or update dates and publication status.
- Count fulfillments for order
Retrieves a count of fulfillments associated with a specific order. Use when you need to determine how many fulfillments exist for an order, optionally filtered by creation or update dates.
- Count price rules
Retrieves a count of all price rules. Use when you need to determine how many price rules (discount campaigns) are configured in the store.
- Count product variants
Retrieves the total count of variants for a Shopify product. Use when you need to know how many variants exist for a specific product.
- Count script tags
Retrieves a count of all script tags in the shop. Script tags are remote JavaScript files that are loaded into the pages of a shop's storefront or checkout. Use this action to determine the total number of script tags, optionally filtered by a specific source URL. Note: This endpoint is part of the legacy REST Admin API (deprecated). The Shopify GraphQL Admin API should be used for new integrations.
- Count shop metafields
Retrieves the shop-level count of metafields. Use resource-specific metafield actions for product, customer, order, collection, page, or article metafields.
- Get a list of access scopes
Retrieves a list of access scopes associated with the access token. Use when you need to view the permissions that merchants have granted during app installation.
- Get abandonment
Retrieves an abandonment record from Shopify using its unique ID. Use when you need to query customer abandonment data including type, customer info, email state, and timing details.
- Get abandonment by abandoned checkout ID
Query abandonment information by abandoned checkout ID using Shopify's GraphQL Admin API. Use when you need to retrieve customer journey data, abandonment type, and email state for a specific abandoned checkout. Returns null if the checkout doesn't exist or has no abandonment tracking.
- Get App
Query information about a Shopify app using the GraphQL API. Use when you need to retrieve details about the currently authenticated app or a specific app by its ID.
- Get app by handle
Query app information by handle using the Shopify Admin GraphQL API. Use when you need to retrieve details about a specific Shopify app using its handle.
- Get app installation details
Query a specific app installation on a Shopify store. Use when you need to retrieve details about an app installation including access scopes, launch URL, and uninstall URL.
- Get Application Charge By ID
Retrieve a single application charge by its unique identifier. Use when you need detailed information about a specific one-time charge.
- Get Application Charges
Retrieves a list of one-time application charges for the current app installation. Application charges are one-time fees charged to merchants for app usage. This endpoint returns all charges with their status (pending, accepted, active, declined, expired). Use this to monitor billing history, verify charge status, or implement pagination with since_id. Returns an empty list if no charges exist, which is normal for new app installations.
- Get application credits
Retrieve all application credits for a shop. Use when you need to view credits issued to merchants that can be used towards future app purchases.
- Get Article
Retrieves a single article from a Shopify blog by its ID. Use this action when you need to: - Get detailed information about a specific blog article - Retrieve article content, metadata, or publication status - Access article properties like title, author, tags, or images The optional 'fields' parameter allows you to retrieve only specific article properties, reducing response size and improving performance when you don't need the full article data. Requires the 'read_content' OAuth scope.
- Get Batch Discount Codes
Retrieves discount codes from a batch creation job, showing which succeeded and which failed. Workflow: After batch job completes (status='completed'), use this to get the actual codes. 1. Create price rule (get price_rule_id) 2. Create batch job (get batch_id) 3. Poll until completed 4. Use this action to retrieve codes Response: Successful codes have id populated and errors={}. Failed codes have id=null and errors with validation details. Use Cases: Verify created codes, identify validation errors, get IDs for further operations. Note: Requires 'read_price_rules' scope. Max 100 codes per batch.
- Get blog article tags
Retrieve a list of all article tags from a specific blog. Use when you need to get all unique tags that have been applied to articles in a particular blog, optionally sorted by popularity.
- Get blog metafields
Retrieve a list of metafields from a blog resource. Use when you need to fetch metafields attached to a specific Shopify blog.
- Get blogs count
Retrieves the total count of all blogs in a Shopify store. Use this action when you need to know how many blogs exist in the store without fetching the full list of blog details. This is useful for pagination calculations, analytics, or checking if any blogs exist before performing other operations. Requires 'read_content' or 'write_content' OAuth scope.
- Get bulk operation status
Query the status and details of a Shopify bulk operation by its ID. Use when you need to check the progress, status, or results of a previously initiated bulk operation. Returns metadata including status, completion time, result URLs, and error information if applicable. Note: The bulkOperation query requires API version 2025-10 or later.
- Get carrier services
Retrieves all active carrier services configured in a Shopify store. Carrier services allow apps to provide real-time shipping rates at checkout. This endpoint returns only carrier services where active=true. Requirements: - Store must be on Advanced Shopify plan or higher, OR - Store must be on Shopify plan with yearly billing (with carrier service feature), OR - Store must be a development store Use this to view active carrier services for shipping rate calculations.
- Get catalogs count
Query the count of catalogs in the Shopify store. Use when you need to know how many catalogs exist, optionally filtered by type or search query.
- Get checkout profile
Retrieves a checkout profile from Shopify using its unique ID. Use when you need to query checkout profile details including name, publication status, and timestamps.
- Get checkouts count
Retrieves a count of abandoned checkouts from the past 90 days. Use when you need to know how many checkouts are abandoned, optionally filtered by date ranges or status.
- Get collect by ID
Retrieves a specific collect by its ID. Use when you need to get details about a specific product-collection relationship.
- Get collection by ID
Retrieves a specific Shopify collection by its `collection_id`, optionally filtering returned data to specified `fields`.
- Get collection by identifier
Query a collection by identifier (ID or handle) using the Shopify GraphQL Admin API. Use when you need to fetch collection details by either its global ID or unique handle.
- Get collects
Retrieves a list of collects from a Shopify store, where a collect links a product to a custom collection. Returns only collect mapping records (collect_id, collection_id, product_id, position, etc.), not full product details — use SHOPIFY_GET_PRODUCTS_IN_COLLECTION if product details are needed.
- Get collects count
Retrieves a count of collects (product-collection relationships). Use when you need to know the total number of collects, optionally filtered by collection_id or product_id.
- Get consent policy
Query consent policies for privacy compliance requirements. Use when you need to retrieve customer consent requirements for specific regions or countries (GDPR, CCPA, etc.).
- Get count of comments
Retrieves a count of comments. Use when you need to know how many comments exist, optionally filtered by article, blog, status, or date ranges.
- Get Countries
Retrieve a list of countries configured in the Shopify store with tax rates and provinces. Use when you need to get countries and their tax configuration for the store.
- Get country
Retrieve a specific country by its ID from Shopify. Use when you need to get tax information, country details, and province-level tax rates for a particular country.
- Get Currencies
Retrieve a list of currencies enabled on a Shopify store. This action fetches all currencies that the merchant has enabled for multi-currency transactions through Shopify Payments. Each currency includes its ISO 4217 code, the timestamp when its conversion rate was last updated, and its enabled status. Use this when you need to: - Check which currencies are available for customer transactions - Verify currency configurations for the shop - Get conversion rate update timestamps - Determine multi-currency support capabilities Note: This is a read-only endpoint that requires no parameters and returns all enabled currencies for the authenticated shop.
- Get custom collection by ID
Retrieve a single custom collection by its unique ID from Shopify. Use when you need to fetch detailed information about a specific custom collection.
- Get custom collections
Retrieves a list of custom collections from a Shopify store. Supports filtering by IDs, handle, title, product ID, publication status, and date ranges (published/updated). Use the fields parameter to retrieve only specific properties, and limit/since_id for pagination. Combining multiple filters (handle, ids, product_id) simultaneously may return empty sets; use broad filters first. Newly created collections may not appear immediately; use GetCollectionById to verify a specific collection shortly after creation.
- Get custom collections count
Retrieves the total count of custom collections in a Shopify store with optional filters. Use this action to get the number of custom collections, optionally filtered by: - Product ID (collections containing a specific product) - Publication date range (when collections were published) - Publication status (published, unpublished, or any) - Title (exact title match) - Update date range (when collections were last modified) Returns a simple count integer without collection details. For full collection data, use get collection list actions.
- Get Customer Address
Retrieve details of a single customer address from Shopify. Use when you need to get complete information about a specific address for a customer, including address lines, city, province, country, postal code, and phone number.
- Get Customer Addresses
Retrieves all addresses associated with a specific customer. Returns complete address details including street address, city, province/state, country, postal code, and contact information. Each address includes a unique ID and indicates if it's the customer's default address. Important: This endpoint requires 'Protected Customer Data Access' approval from Shopify. Without this approval, requests will fail with a 403 error. See https://shopify.dev/docs/apps/launch/protected-customer-data for details. Use this action when you need to: (1) View all addresses for a customer, (2) Check a customer's default address, (3) Retrieve address details before updating or deleting.
- Get customer orders
Retrieves all orders for a specific, existing customer in Shopify using their unique customer ID.
- Get customers count
Retrieves a count of all customers. Use when you need to know the total number of customers, optionally filtered by creation or update dates.
- Get Discount Code
Retrieves a single discount code for a price rule. Use when you need to get details about a specific discount code including its usage count and timestamps.
- Get Discount Code Location
Look up a discount code by its code name and retrieve its resource location and IDs. Use this when you have a discount code (e.g., "SUMMER2024") and need to find its price_rule_id and discount_code_id for use with other API endpoints. This is faster than listing all discount codes when you know the specific code name. The API returns a 303 redirect with the location in the header.
- Get discount codes count
Retrieves a count of discount codes for a shop. Use when you need to know how many discount codes exist, optionally filtered by usage statistics.
- Get Discount Codes for Price Rule
Retrieve a list of discount codes for a price rule. Use when you need to get all discount codes associated with a specific price rule. Note: As of version 2019-10, pagination is implemented via Link headers in the response.
- Get draft orders count
Retrieves a count of draft orders from a Shopify store. Use when you need to know how many draft orders exist without fetching full draft order details. Supports filtering by status and date range to count specific subsets of draft orders.
- Get event by ID
Retrieve a specific Shopify event by its ID. Events track actions performed on store resources like products, orders, collections, and articles. Use this to get detailed information about a specific event, including what action occurred, when it happened, and which resource was affected. Common use cases: auditing changes, tracking resource history, debugging workflows. Note: This endpoint contains protected customer data and may require explicit approval from Shopify for access. For development/testing, request protected customer data access in the Shopify Partner Dashboard.
- Get Fulfillment Event
Retrieves a specific fulfillment event by its ID, providing detailed shipment tracking information. Use this when you need to check the status and location of a specific tracking event for a fulfilled order. The event contains information such as status (in_transit, out_for_delivery, delivered), timestamps, geographic location data (city, province, country, coordinates), and carrier messages. Fulfillment events track the shipment progress from the carrier and are displayed on the customer's order status page. Each event represents a status update (e.g., package picked up, in transit, out for delivery, delivered). Note: This REST API endpoint is deprecated as of Shopify API 2024-10. Consider using the GET fulfillment events list endpoint or GraphQL API for new integrations. Requires valid order_id, fulfillment_id, and event_id - all three IDs must correspond to existing resources in the store.
- Get fulfillment events
Retrieves tracking events for a specific fulfillment, showing shipment status updates (e.g., in_transit, out_for_delivery, delivered) with timestamps and location information. Use this when you need to check the tracking history or current delivery status of a fulfilled order. Note: Returns events only for fulfillments that have tracking information from carriers.
- Get fulfillment order locations for move
Retrieve locations that a fulfillment order can potentially move to. Use when you need to identify which locations are available for transferring a specific fulfillment order. The resulting list is sorted alphabetically in ascending order by location name.
- Get fulfillment orders for order
Retrieves a list of fulfillment orders for a specific order. Use when you need to get fulfillment order details including line items, delivery method, assigned location, and fulfillment status for a given order.
- Get Fulfillment Services
Retrieve a list of fulfillment services available on the Shopify store. Use when you need to get information about third-party warehouses that prepare and ship orders on behalf of the store owner.
- Get fulfillments by fulfillment order
Retrieves all fulfillments (shipments) associated with a specific fulfillment order. A fulfillment order represents a group of line items that are to be fulfilled from a specific location. This action returns tracking information, shipment status, line item details, and delivery information for each fulfillment. Use this when you need to: - Check tracking numbers and carrier information for shipped items - Monitor shipment status (in_transit, delivered, etc.) - View which line items were included in specific shipments - Get fulfillment location and origin address details Prerequisites: You must first obtain a fulfillment_order_id by using the 'Get fulfillment orders for order' action with an order_id.
- Get Gift Card By ID
Retrieves detailed information about a specific gift card by its ID. Returns the gift card's balance, status, creation date, and other metadata. Note: The full gift card code is never returned by this endpoint - only the last 4 characters are available for security reasons. The full code is only visible at creation time. Requires: read_gift_cards scope (Shopify Plus only, requires Shopify Support approval).
- Get Inventory Item
Retrieves a single inventory item by ID. Use when you need to get detailed information about an inventory item including SKU, cost, tracking status, and shipping requirements.
- Get Inventory Items
Retrieves a list of inventory items by specified IDs. Use when you need to get inventory item details like SKU, cost, shipping requirements, and tracking status. Note: As of version 2019-10, pagination is implemented using links provided in response headers.
- Get Inventory Levels
Retrieves a list of inventory levels for specified items and locations. Use when you need to check inventory quantities at specific locations. At least one of inventory_item_ids or location_ids must be provided as a filter parameter.
- Get Inventory Levels For Location
Retrieves a list of inventory levels for a specific location. Use when you need to check inventory quantities at a particular location. This endpoint implements cursor-based pagination via Link headers in the response.
- Get location
Retrieve a single location by its ID. Use when you need to get details about a specific physical or virtual place where inventory is stocked and orders are fulfilled.
- Get locations count
Query the count of locations in a Shopify store using the GraphQL API. Use when you need to get the total number of locations, optionally filtered by search criteria.
- Get marketing events count
Retrieves a count of all marketing events in the store. Use when you need to know the total number of marketing events.
- Get metafield by ID
Retrieve a single metafield from a resource by its ID. Use when you need to fetch metafield details without knowing the parent resource.
- Get metafields
Retrieve a list of metafields. Use when you need to fetch metafields across resources or for specific resources by providing owner_id and owner_resource filters.
- Get order risk by ID
Retrieves a single order risk assessment by its unique ID. Use this action when you need details about a specific risk assessment (e.g., to check its recommendation, score, or message). If you need all risk assessments for an order, use the "Get order risks" action instead. Important: This REST API endpoint is deprecated as of API version 2025-10. For new implementations, use the GraphQL OrderRiskAssessment API. See: https://shopify.dev/docs/api/admin-graphql/latest/objects/OrderRiskAssessment Access requirements: Requires read_orders scope with merchant approval for protected customer data.
- Get order risks
Retrieves all fraud risk assessments for a specific order. Returns a list of risk assessments with recommendations (cancel/investigate/accept) and fraud likelihood scores. Use this when reviewing fraud detection findings for an order. Returns an empty risks array if: - The order has no risk assessments - Authentication fails (401) - App lacks permission to access order risks (403) Raises an error only if the order doesn't exist (404) or other server errors occur. Note: This REST API endpoint is deprecated as of version 2025-10; GraphQL Admin API's OrderRiskAssessment is recommended for new applications.
- Get order transactions count
Retrieve a count of an order's transactions in Shopify. Use when you need to know how many transactions (authorization, sale, capture, void, refund) are associated with a specific order without fetching the full transaction details.
- Get orders with filters
Retrieves Shopify orders filtered by dates and other filters. Uses server-side filtering. Results are paginated; follow `page_info` cursors until exhausted to retrieve all matching orders — a single request returns at most `limit` orders (max 250) and omits the rest.
- Get page by ID
Retrieve a single Shopify page by its unique ID. Use when you need to fetch detailed information about a specific page.
- Get Policies
Retrieve a list of the shop's policies. Use when you need to view configured shop policies such as refund policy, privacy policy, or terms of service.
- Get Price Rule
Retrieves a single price rule by ID from Shopify. Returns discount configuration including type (percentage/fixed), value, target items, customer eligibility, and prerequisites. Note: The PriceRule REST API is deprecated as of October 2024; consider using GraphQL Admin API for new implementations.
- Get Price Rules List
Retrieve a list of price rules from a Shopify store. Use when you need to view all discount pricing rules with optional filtering by date ranges and usage. Note: As of version 2019-10, pagination is implemented via Link headers in the response.
- Get product
Retrieves details for an existing Shopify product using its unique product ID.
- Get product image
Retrieve a single product image by ID for a specific product. Use when you need to get details about a specific image associated with a product.
- Get product metafield
Retrieves a specific metafield for a Shopify product using the product ID and metafield ID.
- Get product metafields
Retrieves all metafields for a specific Shopify product. Metafields are returned under `data.response_data.metafields`. Can be filtered by namespace and/or key; empty results are valid when no metafields match. Always fetch current metafield IDs via this tool rather than using cached values, as IDs can change after schema updates.
- Get product variants
Retrieve all variants for a specified product. Use when you need to list product variants with optional filtering by fields or pagination. Note: As of API version 2019-10, pagination is implemented via Link headers in the response.
- Get products (paginated)
List products with Shopify cursor-based pagination. Iterate until `next_page_info` is null; stopping early silently truncates the product list. Products are at `data.response_data.products`; the next cursor is at `data.next_page_info`.
- Get Province for Country
Get Province for Country
- Get provinces count for country
Retrieves a count of provinces for a country. Use when you need to determine how many provinces or states are configured for a specific country in Shopify.
- Get provinces for country
Retrieve a list of provinces for a specified country. Use when you need to get province information, tax rates, and shipping zones for a specific country.
- Get recurring application charges
Retrieve a list of recurring application charges for the app. Use when you need to view subscription charges, check billing status, or audit recurring payments.
- Get redirect by ID
Retrieve a single redirect by its ID. Use when you need to get details about a specific URL redirect configuration in a Shopify store.
- Get redirects
Retrieve a list of URL redirects from a Shopify store. Use when you need to fetch URL redirect configurations, optionally filtered by path or target. Supports pagination via Link headers.
- Get redirects count
Retrieves a count of URL redirects in the store. Use when you need to know how many URL redirects are configured, optionally filtered by path or target.
- Get refunds for order
Retrieves a list of all refunds for a specific order. Use this action when you need to: - Review refund history and details for an order - Check refunded amounts, line items, and shipping costs - Verify payment transactions associated with refunds - Track order adjustments, duties, and additional fees refunded Key Features: - Returns all refunds with detailed line items, transactions, and adjustments - Supports field filtering to retrieve only specific data - Optional in_shop_currency parameter for currency conversion - Configurable result limit (1-250, default 50) Important Notes: - This endpoint implements pagination via Link headers (not page parameters) - As of API version 2024-10, refunded shipping costs are accessed via refund_shipping_lines - REST Admin API is legacy as of Oct 2024; consider GraphQL API for new integrations - Requires 'read_orders' access scope for authentication - Access to protected customer data may require additional Shopify app approval
- Get resource feedback
Retrieves the current resource feedback for the shop. Resource feedback is how your app communicates its setup/configuration status to merchants via the Shopify admin. Use this to check what feedback your app has previously submitted (e.g., whether you told merchants that action is required or that setup is successful). Returns empty array if no feedback exists, or a single feedback object representing the most recent status your app reported to Shopify.
- Get resource metafields
Retrieve metafields attached to any Shopify resource by using the resource's endpoint. Use when you need to fetch metafields for a specific resource instance (products, customers, orders, collections, etc.).
- Get Script Tag
Retrieves a single script tag by its ID. Use when you need to get details of a specific script tag configuration.
- Get segments count
Query the number of segments for a shop. Use when you need to know how many customer segments exist.
- Get Shipping Zones
Retrieve all configured shipping zones with countries, provinces, tax rates, and shipping rates. Use when you need to view or analyze shipping configuration.
- Get shop billing address
Retrieves the billing address for the shop via GraphQL query. Returns the shop's billing information including address details, city, province, country, and phone number.
- Get Single Blog
Retrieve a single blog by its unique identifier. Use when you need to access detailed information about a specific blog in the Shopify store.
- Get smart collection by ID
Retrieve a single smart collection by its ID. Use when you need to get details about a specific smart collection including its rules, settings, and associated image.
- Get smart collections
Retrieve a list of smart collections from a Shopify store. Use when you need to fetch smart collections with optional filtering by IDs, handle, title, product ID, publication status, or date ranges. Supports pagination via since_id parameter.
- Get smart collections count
Retrieve a count of smart collections in a Shopify store. Use when you need to know the total number of smart collections, optionally filtered by publication status, title, product association, or date ranges.
- Get specific refund for order
Retrieves a specific refund by refund ID for an order. Use this action when you need to: - Get detailed information about a particular refund - Review specific refund transactions and payment details - Check refunded line items, shipping costs, and adjustments - Verify duty and additional fee refunds Key Features: - Returns comprehensive refund data including line items and transactions - Supports field filtering to retrieve only specific data - Optional in_shop_currency parameter for currency conversion - Includes refund_shipping_lines for refunded shipping costs (added in API version 2024-10) Important Notes: - REST Admin API is legacy as of Oct 2024; consider GraphQL API for new integrations - Requires 'read_orders' access scope for authentication - Access to protected customer data may require additional Shopify app approval
- Get storefront access tokens
Retrieves a list of storefront access tokens that have been issued for the shop. Use when you need to view all active storefront access tokens and their permissions.
- Get tender transactions
Retrieve a list of tender transactions from Shopify. Tender transactions represent actual money movement between customers and the merchant (positive = payment to merchant, negative = refund from merchant). Use this action to: - Fetch payment transaction data for financial reconciliation - Track payment methods used (credit_card, cash, apple_pay, google_pay, etc.) - Filter transactions by date range or order - Monitor POS and online payment processing Note: This endpoint implements cursor-based pagination using links in the response header. Requires 'read_orders' scope.
- Get Theme Asset
Retrieve a single asset for a theme by its key. Use when you need to fetch the content or metadata of a specific theme file such as templates, stylesheets, or scripts.
- Get themes
Retrieves a list of themes from a Shopify store. Use when you need to access theme information including name, role, and metadata.
- Get Webhook
Retrieves a single webhook subscription by its ID. Use when you need to get details of a specific webhook configuration.
- Get webhook subscriptions count
Query the number of webhook subscriptions for a shop. Use when you need to know how many webhook subscriptions exist, optionally filtered by query criteria.
- List abandoned checkouts
Retrieves a list of abandoned checkouts with customer contact information. An abandoned checkout occurs when a customer adds contact information but doesn't complete the purchase. Use this to recover abandoned carts, send recovery emails, or analyze checkout abandonment patterns. Note: This endpoint requires 'Protected Customer Data' access in your Shopify app settings. Without this permission, the endpoint returns a 403 error (gracefully handled by returning an empty list). The REST Checkout API is deprecated as of 2024-07; consider GraphQL Admin API for new implementations.
- List article authors
Retrieve a list of all article authors from the store. Use when you need to get all unique author names who have created articles across all blogs.
- List article tags
Retrieve a list of all article tags from the store. Use when you need to get all unique tags that have been applied to articles, optionally sorted by popularity.
- List available locales
Query available locales for the Shopify store using the Admin GraphQL API. Use when you need to retrieve the list of supported language/region combinations.
- List bulk operations
Retrieve a paginated list of bulk operations from Shopify. Use when you need to view the history of bulk operations, check their statuses, or retrieve result URLs for completed operations. Supports filtering by status, creation date, and operation type.
- List channels
Retrieves a list of sales channels available in the Shopify store using GraphQL. Use when you need to fetch channel information including Online Store, Point of Sale, and other active sales channels. Supports cursor-based pagination for large result sets.
- List checkout profiles
Query checkout profiles from Shopify. Use when you need to retrieve checkout profile configurations including branding settings and UI extensions. Supports pagination and filtering by publication status.
- List locations
Retrieve a list of locations for a Shopify store. Use when you need to get physical or virtual places where inventory is stocked and orders are fulfilled.
- List Payment Terms Templates
Query payment terms templates from Shopify using the GraphQL API. Use when you need to retrieve available payment terms templates, optionally filtered by payment terms type.
- Query app by API key
Query app information by API key using Shopify's GraphQL Admin API. Use when you need to retrieve metadata about a Shopify app using its client ID. Returns null if no app is found with the provided API key.
- Query business entities
Retrieve all business entities associated with the shop. Use when you need to view business entities for assigning to markets, managing payment providers per entity, or checking order attribution.
- Query business entity
Query business entity information from Shopify. Use when you need to retrieve business entity details such as company name, address, and payment account information. If no ID is provided, returns the primary business entity.
- Query catalogs
Queries catalogs from Shopify using the GraphQL Admin API. Catalogs control which products are published and how they're priced in different contexts such as international markets, B2B company locations, or specific sales channels.
- Query channel by ID
Query a single Shopify channel by ID. Use when you need to retrieve detailed information about a specific sales channel including its associated app, name, handle, and publishing capabilities.
- Query consent policy regions
Query the list of countries and regions for which consent policies can be created in Shopify. Use when you need to retrieve all available consent policy regions for compliance purposes.
- Query current Shopify bulk operation
Query the current Shopify bulk operation status. Use when you need to check if a bulk operation is running or to retrieve the status and results of the most recent bulk query or mutation operation.
- Query customer account pages
Queries customer account pages from Shopify using the GraphQL Admin API. Use when you need to retrieve customizable pages for customer accounts.
- Query deletion events
Query deletion events from Shopify. Use when you need to retrieve records of deleted resources such as products or collections. Deletion events are the only trace of a resource after it has been permanently removed.
- Query disputes
Query Shopify Payments disputes using the GraphQL Admin API. Use when you need to retrieve information about payment disputes, including their status and initiation date. Supports pagination and filtering by status or ID.
- Query domain
Query a specific domain by its ID from Shopify. Use when you need to retrieve domain details including host, URL, SSL status, and localization settings.
- Query events
Query events from Shopify using the GraphQL Admin API. Events track actions performed on store resources like products, orders, collections, customers, and more. Use this to retrieve activity history, audit changes, monitor recent actions, or build activity feeds. Returns detailed information about each event including the action type, affected resource, timestamp, and description.
- Query events count
Query the count of events in Shopify using the GraphQL Admin API. Use when you need to get the total number of events with optional filtering by date, subject type, or other criteria. Returns both the count and precision indicator.
- Query job
Query a single job by its ID using Shopify's GraphQL API. Use when you need to check the status of an asynchronous job. Jobs track long-running operations like bulk operations, mutations, or imports.
- Query metafield definition by ID
Query metafield definition details by ID using Shopify's GraphQL Admin API. Use when you need to retrieve metadata about a metafield definition including its type, namespace, key, and usage count. Returns null if no metafield definition is found with the provided ID.
- Query metafield definition types
Queries all available metafield definition types from Shopify using the GraphQL Admin API. Returns comprehensive information about each type including its category, supported validations, and migration capabilities. Use this to discover what metafield types can be created and what validation rules are available for each type.
- Query metafield definitions
Query metafield definitions from Shopify using the GraphQL Admin API. Use this to retrieve the schema and configuration of metafields for a specific resource type (PRODUCT, COLLECTION, CUSTOMER, etc.). Returns detailed information about each metafield definition including name, namespace, key, type, and validation rules.
- Query node by ID
Query any Shopify resource by its global ID using the node query. Use when you have a GID and need to retrieve the basic resource information.
- Query nodes by IDs
Query nodes by their IDs from the Shopify GraphQL Admin API. Use when you need to retrieve multiple Shopify objects by their global IDs (GIDs). Returns node objects with at least an id field, or null for non-existent nodes.
- Query online store
Query online store settings from Shopify using the GraphQL Admin API. Returns configuration information including password protection status. Use this to check if the online store is password protected or to retrieve other store-level settings.
- Query product duplicate job
Query a product duplicate job by its ID using Shopify's GraphQL API. Use when you need to check the status of a product duplication operation.
- Query public API versions
Query available public API versions from Shopify using the GraphQL Admin API. Returns a list of all API versions with their support status. Use this to check which API versions are currently supported before making version-specific API calls.
- Query publication by ID
Query a single publication by ID using Shopify's GraphQL Admin API. Use when you need to retrieve detailed information about a specific publication including its name, auto-publish settings, future publishing support, and associated catalog.
- Query server pixel configuration
Query the server pixel configuration in Shopify. Use when you need to retrieve the current server pixel settings including its ID, status, and webhook endpoint address.
- Query shop billing preferences
Query the shop's billing preferences from Shopify using the GraphQL Admin API. Use when you need to retrieve the currency used for billing apps and services.
- Query Shop Pay payment request receipts
Query Shop Pay payment request receipts from Shopify using the GraphQL Admin API. Use when you need to retrieve and list Shop Pay payment request receipts. Note: This query requires API version 2026-01 or later.
- Query Shopify Functions
Query Shopify Functions owned by the API client installed on the shop. Use when you need to retrieve functions that customize Shopify's backend logic such as discounts, checkout validation, and fulfillment.
- Query standard metafield templates
Query standard metafield definition templates from Shopify using the GraphQL Admin API. Returns preset metafield configurations with reserved namespace-key combinations for common use cases like product subtitles, care guides, or ISBN numbers.
- Query taxonomy
Query Shopify's product taxonomy using the GraphQL Admin API. Use when you need to explore product categories, discover the taxonomy hierarchy, or find appropriate categories for products. Returns taxonomy categories that can be filtered by search terms or hierarchy relationships.
- Query webhook subscription by ID
Retrieve webhook subscription details by ID using the Shopify GraphQL Admin API. Use when you need to inspect webhook configuration, endpoint details, or subscription metadata.
- Query webhook subscriptions
Query webhook subscriptions from Shopify using the GraphQL Admin API. Returns a paginated list of webhook subscriptions with their topics, endpoints (HTTP or PubSub), and formats. Use this to view all configured webhook subscriptions for your Shopify store.
- Receive a list of all countries (Deprecated)
Retrieve a list of all countries where the merchant sells products with tax rates. Use when you need to access country-level tax configuration and regional settings. Note: This endpoint is deprecated as of API version 2024-07.
- Receive A List Of All Product Images
Retrieve all images for a Shopify product. Use when you need to get the complete list of images associated with a specific product.
- Receive a single draft order
Retrieve detailed information for a specific draft order from a Shopify store. Use when you need to access a draft order's status, customer details, line items, pricing, or shipping information.
- Receive a single fulfillment
Retrieve detailed information about a specific fulfillment for an order. Use when you need to check the status, tracking details, or line items of a fulfillment.
- Receive a single product variant
Retrieves detailed information about a single product variant by its ID from Shopify. A product variant represents a specific version of a product (e.g., different sizes, colors, or materials). This action returns comprehensive details including pricing, inventory, weight, SKU, barcode, and shipping requirements. Use this when you need to: - Get current pricing and inventory levels for a specific variant - Check variant details like SKU, barcode, weight, or options (size, color, etc.) - Retrieve variant configuration (taxable, requires_shipping, fulfillment_service) - Fetch only specific fields using the optional 'fields' parameter to reduce response size Note: You must know the variant_id beforehand. Use list products or list variants actions to discover variant IDs.
- Retrieve a list of all blogs
Retrieve a list of all blogs from a Shopify store. Use when you need to get blog information, list available blogs, or paginate through blogs using since_id.
- Retrieve a list of comments
Retrieve a list of comments from Shopify. Use when you need to get comments with optional filtering by dates, status, or pagination.
- Retrieve a single marketing event
Retrieves detailed information about a specific marketing event by its ID. Use this action to: - Get full details of a marketing campaign including UTM parameters, budget, and timeline - Check the status and configuration of a specific marketing event - Access information about resources (products, collections) being marketed - Retrieve tracking URLs (manage_url, preview_url) for the event Returns comprehensive event data including event type, marketing channel, budget details, UTM parameters, and associated resources.
- Retrieve a single theme
Retrieves a single Shopify theme by its unique ID. Use this action when you need to: - Get details about a specific theme (name, role, timestamps, store ID) - Check if a theme is the currently published theme (role='main') - Verify theme processing status before modifying assets - Inspect theme metadata like theme_store_id for identifying Shopify Theme Store themes Note: Requires the 'read_themes' OAuth scope which may need merchant approval.
- Retrieve a specific transaction
Retrieve a specific transaction for an order. Use when you need to get detailed information about a payment transaction. Transactions in multi-currency orders are in presentment currency by default; use in_shop_currency parameter to get shop currency.
- Retrieve abandoned checkouts (Deprecated)
Retrieves a list of abandoned checkouts from Shopify. Use this when you need to access abandoned checkout data for recovery campaigns, remarketing, or analytics. An abandoned checkout occurs when a customer adds contact information but doesn't complete their purchase. IMPORTANT: This endpoint requires 'Protected Customer Data' access approval from Shopify, which must be requested through the Partner Dashboard. Without this approval, requests will return a 403 Forbidden error. Note: The REST Checkout API is deprecated as of API version 2024-07. Consider migrating to the GraphQL Admin API for new implementations. Pagination is implemented via links in the response header.
- Retrieve all marketing events
Retrieves a paginated list of marketing events from a Shopify store. Marketing events represent marketing activities such as ads, posts, newsletters, retargeting campaigns, abandoned cart emails, loyalty programs, and affiliate campaigns. Returns up to 250 events per request (default 50). The endpoint uses cursor-based pagination via Link headers in the API response - check the 'Link' header for URLs to navigate to next/previous pages. The deprecated 'offset' parameter is not supported. Each event includes metadata like event type, marketing channel, UTM parameters, budget information, timestamps, and associated resources. Useful for tracking marketing campaign performance and attribution.
- Retrieve all script tags
Retrieves a list of all script tags. Use when you need to fetch all script tags or filter by URL, date range, or other criteria. Supports pagination via response headers (link-based pagination as of API version 2019-10).
- Retrieve Discount Code Creation Job
Retrieves the status and progress of an asynchronous batch discount code creation job for a specific price rule. Use this to monitor a job that creates up to 100 discount codes at once. Check the 'status' field ('queued', 'running', or 'completed') and 'imported_count'/'failed_count' to track progress. The job is created via POST /price_rules/{price_rule_id}/batch and this endpoint lets you poll for its completion.
- Retrieve list of articles from blog
Retrieves a list of all articles from a blog. Use when you need to access articles from a specific blog, with optional filtering by author, dates, or publication status. Pagination is implemented via response header links as of version 2019-10.
- Retrieve list of draft orders
Retrieve a list of draft orders from Shopify. Use when you need to fetch draft orders with optional filtering by status, IDs, or update dates. Supports pagination via since_id and limit parameters. Note: As of version 2019-10, this endpoint implements pagination by using links provided in the response header.
- Retrieve list of pages
Retrieve a list of all pages from a Shopify store. Use when you need to fetch page content or metadata. As of version 2019-10, this endpoint implements pagination via response header links.
- Retrieve order fulfillments
Retrieve fulfillments associated with a Shopify order. Use when you need to get delivery tracking information, shipment status, or fulfillment details for a specific order.
- Retrieve order transactions
Retrieves all transactions for a specific order. Use when you need to view payment exchanges for an order. Transactions include authorization, sale, capture, void, and refund types.
- Retrieve page count
Retrieve the total count of pages in a Shopify store. Use when you need to determine how many pages exist, optionally filtered by creation date, update date, publication date, publication status, or title.
- Retrieve products in collection
Retrieve a list of products belonging to a collection. Use when you need to fetch products from a specific Shopify collection. Implements cursor-based pagination via Link headers (as of version 2019-10).
- Retrieve Specific Fulfillment Event (Deprecated)
Retrieves a specific fulfillment event by its ID. DEPRECATED: This endpoint is deprecated as of Shopify REST Admin API 2024-10. Consider using the list fulfillment events endpoint instead to retrieve all events and filter by ID. Use this tool when you need detailed tracking information for a specific fulfillment event, including delivery status, location data (address, city, country, coordinates), timestamps, and carrier messages. Fulfillment events track the shipment progress and are displayed on customer order status pages. Note: Requires valid order_id, fulfillment_id, and event_id. All three IDs must correspond to existing resources in the store.
- Retrieve specific fulfillment order
Retrieve a specific fulfillment order by its ID. Use when you need detailed information about a particular fulfillment order including line items, destination, and status.
- Retrieves a count of gift cards
Retrieves the total count of gift cards in the store. Use when you need to know how many gift cards exist, optionally filtered by enabled or disabled status.
- Retrieves a count of products
Retrieve a count of products in the Shopify store. Use when you need to get the total number of products, optionally filtered by collection, vendor, product type, status, or date ranges.
- Retrieves a list of gift cards
Retrieve a list of gift cards from Shopify. Use when you need to fetch gift cards with optional filtering by status and pagination support.
- Search Gift Cards
Search for gift cards that match a supplied query. Use when searching for gift cards by various indexed fields including created_at, updated_at, disabled_at, balance, initial_value, amount_spent, email, and last_characters. Supports cursor-based pagination via Link headers.
- Shopify GraphQL collections and publication-ready collection reads
Shopify GraphQL collections and publication-ready collection reads. The response always includes raw GraphQL data, extracted userErrors, pageInfo, and cost extensions.
- Shopify GraphQL draft orders
Shopify GraphQL draft orders. The response always includes raw GraphQL data, extracted userErrors, pageInfo, and cost extensions.
- Shopify GraphQL metafields and metaobjects
Canonical GraphQL read surface for metafields, metafield definitions, and metaobjects.
- Shopify GraphQL shop and app metadata
GraphQL-first shop, app installation, and configuration read action.
- Shopify GraphQL webhook subscriptions
Shopify GraphQL webhook subscriptions. The response always includes raw GraphQL data, extracted userErrors, pageInfo, and cost extensions.
Creates39
Add something new to your account.
- Bulk create products via GraphQL
Creates many products (20-50+) in one asynchronous Shopify bulk mutation job. Uses stagedUploadsCreate for JSONL upload, then bulkOperationRunMutation with productCreate, polling until completion and returning per-row success/errors.
- Create a custom collection
Create a new custom (manually curated) collection in Shopify. Does not support smart collections. Use when you need to manually curate and group products for easier store browsing. Custom collections require a title and support optional fields like description, image, publication settings, and sort order. After creation, use the returned `collection_id` with SHOPIFY_ADD_PRODUCT_TO_COLLECTION to associate products.
- Create an order
Create a fully committed (real) order in Shopify without payment processing. Use when programmatically generating orders with line items, customer information, and addresses. Creates a live order immediately — not a draft; use draftOrderCreate for draft workflows.
- Create Customer
Create a new customer in Shopify. Use to add a customer record to the store with contact details, addresses, and marketing preferences. Requires at least one of: email, phone, or both first_name and last_name. Errors (e.g., duplicate email, invalid fields) are returned in the response body's userErrors array, not as HTTP error codes — always inspect userErrors to detect failures.
- Connect inventory item to location
Connects an inventory item to a location, establishing where the item can be stocked and fulfilled. This creates an inventory level with an initial available quantity of 0. Use this when you need to enable a product variant to be stocked at a new location. After connecting, use the 'set' or 'adjust' inventory level actions to update quantities.
- Create a metafield
Create a metafield for any Shopify resource. Use when you need to attach custom metadata to products, customers, orders, collections, or other supported resources.
- Create a new blog
Create a new blog in Shopify. Use when you need to add a blog to the store for publishing articles and content. The title field is mandatory.
- Create a new draft order
Create a draft order in Shopify. Use when you need to create orders in draft state using product variant line items or custom line items. Draft orders are useful for creating orders on behalf of customers, generating invoices, or reserving inventory.
- Create a new page
Create a static web page in Shopify. Use when you need to add long-term static content like About Us, Contact, or Privacy Policy pages. The title and body_html fields are required.
- Create a new product variant
Create a new product variant for an existing product. Use when adding a new variant with specific option values (like size, color). Each product can have up to 3 options and 100 variants maximum.
- Create app subscription
Create a recurring or usage-based app subscription for charging Shopify merchants. Use when setting up billing for app features and services. Returns a confirmation URL where the merchant must approve charges before the subscription becomes active.
- Create Article
Create an article for a blog in Shopify. Use when you need to add blog content to a specific blog. The title field is mandatory - requests without titles return a 422 error.
- Create blog metafield
Creates a new metafield for a Shopify blog. Metafields store additional custom information (metadata) on blog resources such as sponsor names, SEO keywords, publication dates, or custom attributes not included in standard blog fields.
- Create Comment for Article
Create a comment for an article in Shopify. Use when you need to add reader comments to blog articles. Requires 'content' access scope and protected customer data access.
- Create Country
Create a country with tax configuration for the Shopify store. Use when you need to add a new country to the store's shipping or tax settings. Important Notes: - The REST Country API is deprecated as of API version 2024-07 - This action requires merchant approval for the 'write_shipping' scope - The 'tax' field is deprecated as of API version 2020-10 and custom tax values can no longer be created or updated - For new implementations, consider using the GraphQL Admin API's "Countries in shipping zone" endpoint instead
- Create customer address
Create a new address for a customer. Use when you need to add an address to an existing customer's address list.
- Create delegate access token
Create a delegate access token with a subset of the parent token's permissions. Use when you need to securely delegate limited access to subsystems or services. Each delegate token inherits only the specified scopes, ensuring minimal required permissions rather than full app access. Note: Delegate tokens cannot create new delegate tokens.
- Create Discount Code
Creates a discount code for an existing price rule. Price rules define the discount logic (e.g., 10% off, buy X get Y), and discount codes are the actual codes (e.g., 'SUMMER10') customers enter at checkout. Important: The price rule must exist before creating a discount code - use a price rule creation action first if needed. Each price rule can have multiple discount codes associated with it. Use this when you need to generate customer-facing discount codes for an established discount promotion.
- Create Discount Codes Batch
Create a discount code creation job for batch processing. Use when you need to asynchronously create up to 100 discount codes for a price rule in a single request.
- Create EventBridge webhook subscription
Create an AWS EventBridge webhook subscription in Shopify. Use when you need to configure real-time event notifications to AWS EventBridge for events like order creation, product updates, or customer changes. EventBridge webhooks push events to your AWS partner event source immediately when changes occur, eliminating polling. You can filter events and control payload fields to optimize performance.
- Create Fulfillment
Creates a fulfillment for one or many fulfillment orders for a specific order. This completes the shipping process by marking items as fulfilled. IMPORTANT: You must first retrieve fulfillment orders using a "Get fulfillment orders for order" action to obtain the fulfillment_order_id and line item IDs needed for this action. Use when: You need to mark order items as shipped/fulfilled for orders assigned to merchant-managed locations or third-party fulfillment services. Note: As of API version 2024-10, fulfillments can only be created for merchant-managed locations or third-party fulfillment services owned by your app.
- Create Fulfillment Event
Creates a tracking event for a fulfillment to update shipment status. These events appear on the customer's order status page to track delivery progress (e.g., "in_transit", "out_for_delivery", "delivered"). Use this to provide real-time tracking updates from shipping carriers. Requires an existing fulfillment - use after creating a fulfillment for an order.
- Create Gift Card
Create a gift card for a Shopify store. Use when you need to issue a new gift card with a specified value. Requires write_gift_cards access scope. Gift card codes can only be retrieved at creation time.
- Create Marketing Event
Create a marketing event in Shopify to track promotional actions. Use when you need to track marketing campaigns targeting customers across various channels.
- Create Marketing Event Engagements
Create engagement data for a marketing event in Shopify. Use when tracking customer interactions like views, clicks, and ad spend on marketing events before customers reach the website.
- Create One-Time Application Charge
Create a new one-time application charge in Shopify. Use when you need to bill merchants for one-time features, upgrades, or services. After creation, the merchant must approve the charge via the confirmation_url before it becomes active.
- Create order refund
Creates a refund for a Shopify order. IMPORTANT: You must call the calculate refund endpoint (SHOPIFY_CREATE_ORDERS_REFUNDS_CALCULATE) first to generate accurate transaction data with kind='suggested_refund', then change kind to 'refund' before using this action. Requires order_id and transaction details (parent_id, amount, kind='refund', gateway). For multi-currency orders, currency is required. Rate limit: 5 refunds/minute on dev/trial stores.
- Create order risk
Creates a risk assessment record for a Shopify order, documenting fraud detection findings or security concerns. Use this to record risk evaluations from external fraud detection systems or internal risk analysis tools. Important: This REST API endpoint is deprecated as of API version 2025-10. For new implementations, use the GraphQL orderRiskAssessmentCreate mutation instead. See: https://shopify.dev/docs/api/admin-graphql/latest/mutations/orderRiskAssessmentCreate Common use cases: - Recording fraud detection results from third-party services (e.g., MaxMind, Sift, Signifyd) - Documenting manual fraud reviews - Flagging high-risk orders for merchant review
- Create Price Rule
Creates a price rule that defines discount logic for Shopify orders. Price rules specify how discounts work (percentage/fixed amount off, which products, which customers, etc.) and can be associated with discount codes for use at checkout. Common use cases: - Percentage off all products (e.g., 20% off sitewide) - Fixed amount off orders (e.g., $10 off orders over $50) - Buy X Get Y (BXGY) discounts - Free shipping offers - Customer segment-specific discounts Note: After creating a price rule, use the discount code creation endpoint to generate codes that customers can apply.
- Create product metafield
Creates a new metafield for a specific Shopify product. Each namespace+key combination must be unique per product; use the update action if the metafield already exists.
- Create Pub/Sub webhook subscription
Create a Google Cloud Pub/Sub webhook subscription in Shopify. Use when you need to configure real-time event notifications to Google Cloud Pub/Sub for events like order creation, product updates, or customer changes. Pub/Sub webhooks push events to your GCP topic immediately when changes occur, eliminating polling. You can filter events and control payload fields to optimize performance.
- Create Redirect
Create a URL redirect in Shopify. Use when you need to redirect an old path to a new location. When a full URL is provided as the path, it will be saved as an absolute path without the domain.
- Create Script Tag
Create a new script tag in Shopify to load remote JavaScript into your online store. Script tags allow you to add custom functionality to your storefront by loading external JavaScript files. Requires 'write_script_tags' OAuth scope. Note: As of February 1, 2025, creating script tags for order status pages is blocked by Shopify. Use 'online_store' display_scope for storefront functionality.
- Create Smart Collection
Create a new smart collection with automated product rules. Use when you need to create dynamic collections that automatically include products matching specific criteria (e.g., by vendor, price range, tags). Requires write_products scope.
- Create Storefront Access Token
Creates a new storefront access token for unauthenticated Storefront API access. The token delegates unauthenticated access scopes to clients that need to access the Storefront API without authentication. Requirements: - The app must be configured as an 'extendable' (Sales Channel) app in the Shopify Partner Dashboard - The app must have at least one unauthenticated access scope granted (e.g., unauthenticated_read_product_listings, unauthenticated_write_checkouts) - The created token inherits all unauthenticated scopes from the app Limitations: Maximum 100 active tokens per shop. Tokens cannot be updated after creation, only deleted.
- Create Theme
Creates a new theme in Shopify from a ZIP file containing theme assets. Requires a publicly accessible URL to the ZIP file. The theme will default to 'unpublished' status unless the role is explicitly set to 'main' (which publishes the theme immediately after file extraction). Note: This action requires the 'write_themes' scope, which needs merchant approval in Shopify. A store can have a maximum of 20 themes.
- Create webhook subscription
Create a webhook subscription that notifies your app when specific events occur in a Shopify store. Use when you need real-time event notifications for orders, products, customers, or other resources. Supports HTTPS URLs, Google Pub/Sub topics, and AWS EventBridge event sources.
- Enable standard metaobject definition
Enable a standard metaobject definition from its template. Use when you need to activate a predefined Shopify metaobject template for use in your store.
- Run bulk mutation operation
Create and run a bulk operation to import data asynchronously by executing a GraphQL mutation multiple times. Use when you need to perform bulk mutations like creating/updating many products, variants, or other resources from a JSONL file. Each line in your JSONL file is processed as a separate mutation execution. Results are delivered in a JSONL file when complete. Note: Only one bulk mutation operation can run at a time per shop (though bulkOperationRunQuery can run simultaneously).
Updates58
Change something that is already there.
- Bulk update product variants via GraphQL
Updates many product variants (20-50+) in one asynchronous Shopify bulk mutation job. Uses stagedUploadsCreate for JSONL upload, then bulkOperationRunMutation with productVariantsBulkUpdate, polling until completion and returning per-row success/errors. Use when you need to update pricing, SKUs, inventory settings, or other properties for multiple variants efficiently.
- Create Resource Feedback
Creates shop-level resource feedback to notify Shopify merchants about app setup requirements or successful configuration. Feedback appears on the merchant's admin home screen. Each new submission automatically replaces previous feedback. Use state='requires_action' to alert merchants about mandatory setup steps, or state='success' to confirm proper configuration.
- Update Customer
Update an existing customer in Shopify. Use when you need to modify customer details such as name, email, phone, tags, addresses, or marketing consent preferences.
- Update metafield definition
Update a Shopify metafield definition's configuration including name, description, validation rules, access settings, and capabilities. Use when you need to modify an existing metafield definition to change display text, add/remove validations, adjust API access permissions, or enable/disable capabilities like admin filtering or unique value constraints. Note: The type, namespace, key, and owner type identify the definition and cannot be changed - only the configuration settings can be updated.
- Add product to custom collection
Add a product to a custom collection by creating a collect resource. Use when you need to link a product to a custom collection. Note: Can only add products to custom collections, not smart collections.
- Adjust inventory levels
Adjust the inventory level of an inventory item at a single location. Use when you need to increase or decrease stock quantities at a specific location.
- Apply fulfillment hold
Applies a fulfillment hold to an open fulfillment order, halting all fulfillment work. Use when you need to pause fulfillment due to payment issues, fraud concerns, address problems, or inventory shortages. The fulfillment order status will change to on_hold, preventing any fulfillment work from proceeding until the hold is released.
- Approve a comment
Approves a pending comment and publishes it to a blog article, making it publicly visible to readers. This action changes the comment's status from 'pending' or 'unapproved' to 'published' and sets the published_at timestamp. Use this when moderating blog comments that require approval before appearing on the storefront. Requires the 'write_content' scope.
- Close an order
Closes an open Shopify order. Use when all line items have been fulfilled or canceled and all financial transactions are complete.
- Complete a draft order
Complete a draft order in Shopify and transition it to an actual order. Use when you need to finalize a draft order, reserve inventory, and create a corresponding order. When completing with payment_pending=true, the payment gateway is set to Manual.
- Create or Update Theme Asset
Creates or updates a theme asset file (templates, stylesheets, scripts, or images) within a Shopify theme. This action uploads or modifies files in the theme's file structure. For text-based files (HTML, Liquid, CSS, JS), use the 'value' parameter with file content. For binary files (images), use 'attachment' with base64-encoded data or 'src' with an external URL. To duplicate an existing asset, use 'source_key'. Important: Exactly one of value, attachment, src, or source_key must be provided per request. Requirements: - Requires 'write_themes' scope with merchant approval - Note: REST Admin API is legacy as of October 2024; new apps should use GraphQL Admin API from April 2025
- Create transaction for order
Creates a transaction for an order to process payment operations. Use when you need to authorize, capture, refund, void, or complete a sale for an order. For multi-currency orders, the currency field is required when creating refund and capture transactions.
- Generate Customer Account Activation URL
Generate a one-time account activation URL for a customer whose account is in 'disabled' state (not yet activated). Use this when you've imported customers and need activation URLs to send in welcome emails. The URL allows customers to set their password and activate their account. Each URL expires after 30 days. Generating a new URL invalidates any previously generated URL for that customer.
- Mark Comment as Not Spam
Marks a comment as not spam in Shopify, restoring it to published or unapproved state. Use this to remove the spam designation from a comment that was incorrectly flagged. The comment status will change from 'spam' to either 'published' (if it was previously approved) or 'unapproved' (if it needs review).
- Mark Comment as Spam
Mark a comment as spam in Shopify. Use when you need to flag a comment as spam and remove it from visibility. When marked as spam, the comment status changes to 'spam', published_at is set to null, and it becomes invisible to blog readers.
- Modify an existing blog
Updates an existing blog's configuration in your Shopify store. Use this to change the blog title, URL handle, comment moderation settings, custom templates, or attach metadata. Common use cases: rebranding blogs, enabling/disabling comments, switching to custom themes, or fixing SEO-friendly handles. Requires the blog_id and at least one field to update. WARNING: Changing the handle affects URLs and SEO - consider redirects when modifying established blogs.
- Modify an existing draft order
Update an existing draft order in Shopify. Use when you need to modify draft order details like customer information, line items, addresses, discounts, notes, or status before completion.
- Modify an existing product variant
Update an existing product variant in Shopify. Use when you need to modify variant properties like price, SKU, weight, or inventory settings.
- Modify existing theme
Update an existing theme's properties such as name or role. Use when you need to modify a theme. Note that a theme cannot be modified while uploading, updating, or if it's the last published theme.
- Move Fulfillment Order to New Location
Move a fulfillment order from one merchant managed location to another. Use when you need to relocate unfulfilled items to a different location. The operation will fail if the fulfillment order is closed or if the destination location has never stocked the requested inventory item.
- Pin metafield definition
Pin a metafield definition in Shopify admin. Use when you need to organize metafields by pinning them to control their display order and visibility. Pinned metafields are automatically displayed in the admin interface.
- Release fulfillment hold
Releases the fulfillment hold on a fulfillment order, allowing fulfillment work to proceed. Use when you need to resume fulfillment on an order that was previously placed on hold. The fulfillment order status will change from on_hold to open, and the fulfillment_holds array will be emptied.
- Reopen a closed order
Reopens a previously closed Shopify order. Use when an order needs to be modified after being closed.
- Restore Comment
Restores a previously removed comment, changing its status back to 'published'. Use when you need to reactivate a comment that was removed. Note: This action requires protected customer data access approval because comments contain customer information (author, email, IP). The app must be approved to access REST endpoints with protected customer data.
- Send an invoice
Send an invoice email for a draft order to a customer. Use when you need to email an invoice to a customer for a specific draft order.
- Send Customer Account Invite
Sends an account invitation email to a customer, allowing them to create or activate their Shopify account. The invitation includes a link for the customer to set up their account credentials. This action is useful when you want customers to have direct access to their order history and account details. You can customize the invitation with a personalized message and subject line, or use the store's default invitation template. Note: Requires the 'write_customers' scope. The customer must not already have an active account to receive an invitation.
- Set Default Customer Address
Set a specific address as the default address for a customer. Use when you need to mark an address as default for tax and shipping calculations. The default address cannot be deleted.
- Set Fulfillment Orders Deadline
Set the latest fulfillment deadline for multiple fulfillment orders. Use when you need to update deadline for one or more fulfillment orders.
- Set inventory level
Set inventory level for an item at a location. Use when you need to establish or update inventory quantity for a specific item at a designated location. If the location isn't already connected, the connection occurs automatically. The inventory item must have inventory tracking enabled before setting inventory levels.
- Set metafields
Create or update multiple metafields in a single operation using the metafieldsSet GraphQL mutation. Use when you need to set custom metadata on Shopify resources like shops, products, customers, or orders. Supports up to 25 metafields per request.
- Trigger Shopify Flow
Trigger Shopify Flow workflows that begin with the specified trigger handle. Use when you need to manually activate Flow automation workflows from your app. The payload must be under 50 KB and match the trigger's expected schema. To learn more, refer to Create Shopify Flow triggers documentation.
- Update an Existing Gift Card
Updates an existing gift card in Shopify. Use when you need to modify a gift card's expiration date, merchant note, template suffix, or assign it to a customer. Only four properties can be updated after creation: expires_on (expiration date), note (merchant-only note), template_suffix (Liquid template suffix), and customer_id (can only be set if currently null). Note: Gift card balance and initial value cannot be modified through this endpoint.
- Update app subscription line item capped amount
Update the capped amount on usage-based billing for an app subscription line item. Use when adjusting usage limits based on merchant needs or changing pricing models. The mutation returns a confirmation URL where the merchant must approve the new pricing limit before it takes effect. Learn more at https://shopify.dev/docs/apps/launch/billing/subscription-billing/update-max-charge.
- Update Article
Update an existing article in a Shopify blog. Use when you need to modify article properties such as title, content, tags, or publication status.
- Update Comment
Update an existing comment on a blog article in Shopify. Use when you need to modify comment properties such as body text, author, or publication date. Note: This endpoint requires 'protected customer data' access because comments contain customer information (author name, email, IP address). Ensure the app has proper permissions before using this action.
- Update Country
Update an existing country's tax configuration in Shopify. Use when you need to modify tax settings for a country. Note: This action is DEPRECATED as of 2024-07, and custom tax values cannot be created or updated as of 2020-10.
- Update Country (Deprecated)
DEPRECATED: Updates an existing country's tax configuration in Shopify. This endpoint is deprecated as of API version 2024-07 and may return 403 Forbidden errors. The tax field has been read-only since API version 2020-10. Shopify recommends migrating to the GraphQL Admin API's Countries in shipping zone API instead. This action should not be used for new implementations.
- Update custom collection
Update an existing custom collection in Shopify. Use when you need to modify properties of a custom collection such as title, description, publication status, or sorting order.
- Update Customer Address
Updates an existing address for a Shopify customer. This action allows you to modify address details such as street address, city, province, country, postal code, and contact information. At least one address field must be provided to update. Requires Protected Customer Data access approval and write_customers scope. Common use cases: - Correct shipping address errors for customers - Update customer contact information - Change billing addresses for customer accounts
- Update EventBridge webhook subscription
Update an Amazon EventBridge webhook subscription in Shopify. Use when you need to modify the ARN or data format of an existing EventBridge webhook. Note: This mutation is deprecated; consider using webhookSubscriptionUpdate for new implementations. For app-specific webhooks, using shopify.app.toml configurations may be easier as they are automatically maintained by Shopify.
- Update Fulfillment Tracking
Updates tracking information (carrier company, tracking number, or custom URL) for an existing fulfillment. Use this action when: - You need to add or update tracking details for a shipment after the fulfillment was created - The carrier information was not provided during fulfillment creation - Tracking numbers become available after shipment - You want to notify customers about updated tracking information Prerequisites: Requires a valid fulfillment_id from a previously created fulfillment.
- Update inventory item
Updates properties of an inventory item in Shopify. An inventory item represents the physical good behind a product variant, containing metadata like SKU, cost, origin, and shipping requirements. Use this action to modify these properties - NOT to adjust inventory quantities (use inventory level actions for quantity changes). Common use cases: updating product costs, changing SKUs, setting country of origin for customs, or toggling inventory tracking.
- Update Marketing Event
Updates an existing marketing event in Shopify. UPDATABLE FIELDS: remote_id, budget, currency, budget_type, started_at, ended_at, scheduled_to_end_at. READ-ONLY FIELDS (cannot be changed after creation): event_type, marketing_channel, referring_domain, utm_campaign, utm_source, utm_medium, description, manage_url, preview_url, paid. This action validates and rejects requests that attempt to update read-only fields to prevent confusion.
- Update metafield by ID
Update an existing Shopify metafield by its ID. Use when you need to modify metafield properties like value, type, or description.
- Update Order
Updates mutable fields on an existing Shopify order.
- Update Page
Updates an existing page in a Shopify store. Use this to modify page properties such as title, HTML content (body_html), author, URL handle, publication status, or template. Requires a valid page_id and at least one field to update. All update fields are optional - provide only the fields you want to change.
- Update Price Rule
Update an existing price rule (discount) in Shopify. Use when you need to modify price rule properties like title, value, dates, or prerequisites. Only fields provided in the request will be updated; omitted fields remain unchanged.
- Update Product Image
Modify an existing product image. Use when you need to update image properties such as position, alt text, or variant associations.
- Update product metafield
Updates an existing metafield for a specific Shopify product.
- Update Province for Country (Deprecated)
Updates an existing province for a country in Shopify. IMPORTANT: This endpoint is deprecated as of API version 2024-07. Additionally, custom tax values for provinces cannot be updated as of version 2020-10. While the endpoint accepts update requests and returns 200 OK, province values (especially tax-related fields) may not actually be modified. Consider using the GraphQL Admin API for country/province management.
- Update Province Tax Information
Update Province Tax Information
- Update Pub/Sub webhook subscription
Updates a Google Cloud Pub/Sub webhook subscription configuration. Use when modifying the GCP project, topic, or message format for an existing Pub/Sub webhook.
- Update redirect
Update an existing Shopify redirect. Use when you need to modify the path or target of a redirect. At least one of path or target must be provided.
- Update Script Tag
Modify an existing script tag in Shopify. Use when you need to update script properties like the source URL, display scope, or caching behavior.
- Update Smart Collection
Update an existing smart collection. Use when you need to modify a smart collection's properties, rules, or settings.
- Update smart collection product order
Updates the display order of products in a smart collection with manual sorting enabled. Use this action to customize the sequence products appear in a collection. This only works when the collection's sort_order field is set to 'manual'. If the collection uses automatic sorting (e.g., 'best-selling', 'price-asc'), this operation will have no effect. Requirements: - Collection must have sort_order='manual' - Product IDs must belong to products already in the collection - Requires 'write_products' scope Returns an empty response on success (HTTP 200 indicates successful reordering).
- Update webhook subscription
Update a webhook subscription's configuration in Shopify. Use when you need to modify the endpoint URL, event filters, included fields, or metafield namespaces without recreating the subscription. You can switch between endpoint types (HTTP, Pub/Sub, EventBridge) by providing a different URI format in callback_url. Updates apply atomically without interrupting webhook delivery.
- Updates An Existing Discount Code
Updates the code value of an existing discount code associated with a price rule. This action allows you to change the discount code string that customers use at checkout. The code is case-insensitive and can be up to 255 characters. Only the code value can be updated; to modify discount logic (percentage, amount, conditions), update the price rule itself. Required: Both the price_rule_id and discount_code_id must exist in your Shopify store. The new code must be unique and not already in use by another discount.
Deletes46
Remove something. This often cannot be undone.
- Cancel Shopify bulk operation
Cancel a running Shopify bulk operation. Use when you need to stop a long-running bulk query or mutation operation that is no longer needed. Note that there may be a short delay between when cancelation starts and when the operation is actually canceled.
- Shopify GraphQL products, variants, media, and publishing
GraphQL-first product toolkit: products, variants, options, media, and publications. This is the canonical agent-facing replacement for legacy REST product, product variant, and product image actions. It exposes Shopify's new product model in one consistent action, preserves cursor pagination metadata, extracts userErrors, and keeps the generic variables escape hatch for newly-added Shopify input fields without requiring a Mercury release.
- Shopify GraphQL write operations
Canonical GraphQL write surface for Shopify orders, customers, inventory, discounts, collections, webhooks, fulfillments, metafields, and bulk operations.
- Bulk delete customer addresses
Performs bulk operations on multiple customer addresses. Currently supports the 'destroy' operation to delete multiple addresses at once. Use this when you need to remove several addresses for a customer in a single API call instead of deleting them one by one.
- Bulk delete metaobjects
Asynchronously delete metaobjects and their associated metafields in bulk. Use this action to delete multiple metaobjects by their IDs or delete all metaobjects of a specific type. The operation is asynchronous and returns a job ID for tracking completion status.
- Cancel a fulfillment
Cancels an existing fulfillment by its ID, reverting all line items to an unfulfilled state. Use this when a fulfillment was created in error or needs to be redone. The cancellation is permanent and cannot be undone - the line items will return to the unfulfilled state and a new fulfillment must be created if needed. Only fulfillments that haven't been shipped or are in certain states can be cancelled.
- Cancel a Fulfillment Order
Cancels a fulfillment order in Shopify and marks it as closed. This creates a replacement fulfillment order with the same line items, allowing reassignment to a different location. Use this for merchant-managed fulfillments. For third-party fulfillment services, use the cancellation request endpoints instead. This endpoint immediately cancels the order without requiring acceptance from a fulfillment service.
- Cancel an order
Cancels a Shopify order and optionally restocks items and sends email notifications. Use when canceling an order that has not yet been paid or fulfilled. Orders cannot be cancelled if payment status is already paid or if the order has existing fulfillments.
- Cancel App Subscription
Cancel an app subscription in Shopify using the appSubscriptionCancel GraphQL mutation. Use when you need to cancel an existing app subscription, optionally with prorated credits.
- Delete a blog
Permanently deletes a blog from a Shopify store using its `blog_id`; this action is irreversible and requires the 'content' access scope.
- Delete a custom collection
Permanently delete a custom collection from a Shopify store. Use when you need to remove a custom collection that is no longer needed. This operation is irreversible and requires the 'write_products' access scope.
- Delete a customer
Deletes a customer from the Shopify store. Use when you need to permanently remove a customer who has no existing orders. Cannot delete customers with existing orders.
- Delete a discount code
Delete a discount code from a price rule. Use when you need to remove a specific discount code associated with a price rule.
- Delete a draft order
Delete a draft order from Shopify. Use when you need to remove an existing draft order permanently.
- Delete a marketing event
Delete a marketing event from Shopify. Use when you need to remove an existing marketing event from the system.
- Delete a metafield by its ID
Deletes a metafield by its ID from any Shopify resource. Use this action to permanently remove metafields from: - Shop-level metafields (use resource='shop' or 'metafields') - Product metafields (resource='products') - Collection metafields (resource='collections') - Customer metafields (resource='customers') - Order metafields (resource='orders') - Other resource-specific metafields The deletion is permanent and cannot be undone. Returns an empty response on success.
- Delete a page
Delete a page from a Shopify store permanently. Use when you need to remove an existing page; this operation is irreversible and requires content access scope.
- Delete a product
Permanently deletes a product from a Shopify store by its product ID. This action is irreversible - deleted products cannot be recovered. Deleting a product also removes all associated variants, images, inventory, and removes the product from all collections and sales channels store-wide. If the goal is collection-only cleanup, adjust collection membership instead.
- Delete a saved search
Delete a saved search in Shopify. Use when you need to remove a saved search by its ID. The ID must be provided in GID format (gid://shopify/SavedSearch/
- Delete an order
Permanently delete an order from Shopify. Use when you need to remove test orders, orders paid with manual payment methods, or draft orders marked as paid. Orders must be archived or canceled before deletion. Orders that interact with an online gateway, are paid via Shopify POS, online checkout, or with gift cards cannot be deleted.
- Delete Article
Delete an article from a blog in Shopify. Use when you need to permanently remove blog content. This action is irreversible.
- Delete country
Deletes a country from the shop's tax configuration. Removes a country that was previously added to the shop's tax settings. The country must have been added via the API or Shopify admin for this operation to succeed. Requires the 'write_shipping' scope. DEPRECATION WARNING: This REST API endpoint was deprecated in API version 2024-07 (effective July 1, 2024). The recommended alternative is the GraphQL Countries in Shipping Zone API. This endpoint may not be available in newer API versions or may have restricted access in many Shopify stores.
- Delete customer address
Removes an address from a customer's address list. Cannot delete the customer's default address - to delete a default address, first assign a different address as the default.
- Delete fulfillment event
Deletes a fulfillment event (tracking status update) from an order's fulfillment. Use this action when you need to remove an incorrect or outdated tracking event from a fulfillment. Fulfillment events represent tracking status updates like 'in_transit', 'out_for_delivery', or 'delivered' that are displayed to customers on the order status page. Common use cases: - Removing duplicate tracking events - Correcting erroneous status updates - Cleaning up test events Prerequisites: You must have valid order_id, fulfillment_id, and event_id. These can be obtained from order retrieval actions or fulfillment event list actions. Note: This REST endpoint is deprecated. For new integrations, consider using the GraphQL Admin API. Requires 'write_orders' scope and approval for protected customer data access.
- Delete inventory levels
Deletes an inventory level of an inventory item at a location. Deleting an inventory level removes that item from the specified location. Every inventory item must have at least one inventory level.
- Delete metafields in bulk
Deletes multiple metafields in bulk using their owner ID, namespace, and key. If a metafield doesn't exist, the mutation still succeeds but returns null for that identifier in the response.
- Delete metaobject
Deletes a metaobject and its associated metafields using GraphQL mutation. Use when you need to permanently remove a metaobject from the Shopify store. The deletion is permanent and cannot be undone.
- Delete metaobject definition
Delete a metaobject definition and all its associated data. Use when you need to completely remove a metaobject definition schema. This mutation also asynchronously deletes all related metafield definitions, metaobjects, and metafields.
- Delete price rule
Deletes an existing price rule from the Shopify store permanently. Use this action to remove price rules that are no longer needed. Note that deleting a price rule will also delete any discount codes associated with it. This operation is idempotent - deleting an already-deleted price rule will return an error. Common use cases: - Removing expired or outdated promotional campaigns - Cleaning up test price rules from development - Deactivating seasonal sales or limited-time offers To get a price rule ID: use the list price rules action or reference the ID from when you created the price rule.
- Delete product image
Deletes a specific image from a product in Shopify, requiring the `product_id` of an existing product and the `image_id` of an image currently associated with that product.
- Delete product metafield
Deletes a specific metafield from a Shopify product using the product ID and metafield ID.
- Delete redirect
Permanently deletes a URL redirect from a Shopify store. Use this tool to remove redirect rules that are no longer needed. A redirect automatically forwards visitors from an old URL path to a new target location. When you delete a redirect, visitors to the old path will no longer be automatically forwarded. Note: This operation is destructive and cannot be undone. If the redirect ID doesn't exist, the API will return a 404 error.
- Delete Script Tag
Delete a script tag from your Shopify store. Permanently removes a script tag using its unique identifier. Script tags are JavaScript files that load on your storefront. Use this action to clean up deprecated scripts or remove third-party integrations. Requires 'write_script_tags' OAuth scope. Common use cases: - Remove outdated analytics or tracking scripts - Clean up after uninstalling third-party apps - Delete test scripts from development Note: Script tags are automatically deleted when the app that created them is uninstalled.
- Delete smart collection
Permanently removes a smart collection from a Shopify store using its `smart_collection_id`; this action is irreversible and requires a valid, existing smart collection ID.
- Delete Storefront Access Token
Delete an existing storefront access token from a Shopify store. Use when you need to permanently revoke access for a storefront access token. This operation is irreversible.
- Delete theme
Deletes a theme from the Shopify store by its ID. Use this tool when you need to permanently remove an unwanted theme. The deleted theme's details are returned in the response for confirmation. Important limitations: - Cannot delete a theme that is currently uploading or being updated (processing=true) - Cannot delete the last published theme (role=main) - you must publish another theme first - Cannot delete a theme that doesn't exist (returns 404) - Requires 'write_themes' scope permission Best practices: - Only delete unpublished, demo, or development themes - Check theme.role and theme.processing before deletion - Keep at least one published theme at all times
- Delete theme asset
Delete an asset from a Shopify theme. Use when you need to remove a specific asset file (such as CSS, JavaScript, images, or template files) from a theme by providing the theme ID and asset key. Note that required theme assets like layout/theme.liquid cannot be deleted and will result in an error.
- Delete web presence
Delete a web presence from Shopify. Use when you need to remove a web presence by its ID.
- Delete webhook subscription
Delete a webhook subscription and stop all future webhooks to its endpoint. Use when you need to remove a webhook subscription that is no longer needed. Returns the deleted subscription's ID for confirmation. Note: If you only use app-specific webhooks, this may not be needed. App-specific webhook subscriptions in shopify.app.toml are automatically managed by Shopify.
- Disable a Gift Card
Disable a gift card in Shopify. Use when you need to permanently deactivate a gift card. WARNING: This operation is irreversible and the gift card cannot be re-enabled once disabled.
- Execute Shopify GraphQL query
Executes a GraphQL query against the Shopify Admin API for flexible data retrieval and mutations including metafields. Response data is nested under result
- Remove a comment
Remove a comment from a Shopify blog. Use when you need to hide a comment from blog readers while preserving the data. The comment status will be changed to 'removed'. Note: This action requires 'write_content' scope and protected customer data access approval from Shopify, as comments contain customer information (author, email, IP address).
- Remove fulfillment service
Remove an existing fulfillment service from a Shopify store. Use when you need to permanently delete a third-party fulfillment service.
- Remove product from collection
Removes a product from a custom collection by deleting the collect. Use when you need to unlink a specific product from a custom collection using the collect ID.
- Remove product variant
Deletes a specific product variant from a Shopify store using its unique product ID and variant ID; this action is irreversible. Use when you need to permanently remove a variant from a product.
- Revoke app access scopes
Revoke previously granted access scopes from an app installation. Use when you need to reduce an app's permissions without completely uninstalling it, providing granular control over what data and functionality the app can access.
Other1
The provider does not say what these change, so Snow treats them as changes.
- Shopify GraphQL Admin execute
Execute any Shopify Admin GraphQL query or mutation with variables. Use this when a workflow needs a GraphQL Admin operation that does not have a dedicated Mercury action yet. It unlocks the GraphQL-only resources called out by Shopify, while still returning a consistent envelope with errors, userErrors, pageInfo, extensions, and raw data.
Related integrations
Ready to put Shopify to work?
Sign up free, build an app by chatting, and connect Shopify in minutes. No credit card required.