All connectors
Shopify
315 tools · eCommerce
Shopify is an e-commerce platform. This toolkit is GraphQL-first for new Admin API automations while retaining legacy REST compatibility actions for older workflows and numeric-ID interoperability
Connect Shopify
- Open Slashspace and go to Settings, then Connectors.
- On Discover, search for Shopify and click Connect.
- Sign in to Shopify in your browser. Slashspace updates when the account is connected.
- Then ask for what you need in any Agent mode chat. Shopify is on in every chat unless you switch it off.
What your chats can do
315 tools from Shopify.
- Add product to custom collectionAdd 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 levelsAdjust 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 holdApplies 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 commentApproves 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.
- Bulk create products via GraphQLCreates 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.
- Delete metafields in bulkDeletes 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.
- Bulk delete metaobjectsAsynchronously 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.
- Run Shopify bulk query operationRun 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.
- Calculate a refundCalculate 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.
- Cancel App SubscriptionCancel an app subscription in Shopify using the appSubscriptionCancel GraphQL mutation. Use when you need to cancel an existing app subscription, optionally with prorated credits.
- Cancel Shopify bulk operationCancel 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.
- Cancel a fulfillmentCancels 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 OrderCancels 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 orderCancels 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.
- Close an orderCloses an open Shopify order. Use when all line items have been fulfilled or canceled and all financial transactions are complete.
- Complete a draft orderComplete 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.
- Connect inventory item to locationConnects 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.
- Count articles in blogRetrieves 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.
- Get blogs countRetrieves 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 draft orders countRetrieves 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.
- Count fulfillments for orderRetrieves 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 shop metafieldsRetrieves the shop-level count of metafields. Use resource-specific metafield actions for product, customer, order, collection, page, or article metafields.
- Retrieve page countRetrieve 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.
- Count price rulesRetrieves 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 imagesRetrieves the total count of images for a specific Shopify product. Use when you need to know how many images are associated with a product.
- Retrieves a count of productsRetrieve 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.
- Count product variantsRetrieves the total count of variants for a Shopify product. Use when you need to know how many variants exist for a specific product.
- Create a metafieldCreate a metafield for any Shopify resource. Use when you need to attach custom metadata to products, customers, orders, collections, or other supported resources.
- Create app subscriptionCreate 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 ArticleCreate 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 Comment for ArticleCreate 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 a new blogCreate 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 custom collectionCreate 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 CustomerCreate 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.
- Generate Customer Account Activation URLGenerate 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.
- Create customer addressCreate a new address for a customer. Use when you need to add an address to an existing customer's address list.
- Create delegate access tokenCreate 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 CodeCreates 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 BatchCreate 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 a new draft orderCreate 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 EventBridge webhook subscriptionCreate 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 FulfillmentCreates 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 EventCreates 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 CardCreate 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 EngagementsCreate 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 Marketing EventCreate a marketing event in Shopify to track promotional actions. Use when you need to track marketing campaigns targeting customers across various channels.
- Create blog metafieldCreates 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 One-Time Application ChargeCreate 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 an orderCreate 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 transaction for orderCreates 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.
- Create a new pageCreate 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 Price RuleCreates 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 metafieldCreates 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 a new product variantCreate 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 Pub/Sub webhook subscriptionCreate 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 RedirectCreate 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 order refundCreates 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 Resource FeedbackCreates 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.
- Create Script TagCreate 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 CollectionCreate 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 or Update Theme AssetCreates 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 Storefront Access TokenCreates 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 ThemeCreates 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 subscriptionCreate 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.
- Delete ArticleDelete an article from a blog in Shopify. Use when you need to permanently remove blog content. This action is irreversible.
- Delete a blogPermanently deletes a blog from a Shopify store using its `blog_id`; this action is irreversible and requires the 'content' access scope.
- Remove product from collectionRemoves 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 a commentRemove 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).
- Delete a customerDeletes 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 customer addressRemoves 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 a draft orderDelete a draft order from Shopify. Use when you need to remove an existing draft order permanently.
- Remove fulfillment serviceRemove an existing fulfillment service from a Shopify store. Use when you need to permanently delete a third-party fulfillment service.
- Delete inventory levelsDeletes 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 a marketing eventDelete a marketing event from Shopify. Use when you need to remove an existing marketing event from the system.
- Delete a metafield by its IDDeletes 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 metaobjectDeletes 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 definitionDelete 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 an orderPermanently 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 a pageDelete 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 price ruleDeletes 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 a productPermanently 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 product imageDeletes 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 metafieldDeletes a specific metafield from a Shopify product using the product ID and metafield ID.
- Remove product variantDeletes 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.
- Delete redirectPermanently 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 a custom collectionPermanently 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 discount codeDelete a discount code from a price rule. Use when you need to remove a specific discount code associated with a price rule.
- Delete a saved searchDelete 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/[ID]).
- Delete smart collectionPermanently 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 TokenDelete 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 themeDeletes 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 assetDelete 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 webhook subscriptionDelete 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.
- Delete web presenceDelete a web presence from Shopify. Use when you need to remove a web presence by its ID.
- Disable a Gift CardDisable 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.
- Enable standard metaobject definitionEnable a standard metaobject definition from its template. Use when you need to activate a predefined Shopify metaobject template for use in your store.
- Get abandonmentRetrieves 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 IDQuery 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 a list of access scopesRetrieves 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 AppQuery 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 handleQuery 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 detailsQuery 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 IDRetrieve a single application charge by its unique identifier. Use when you need detailed information about a specific one-time charge.
- Get Application ChargesRetrieves 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 creditsRetrieve 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 ArticleRetrieves 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 CodesRetrieves 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 Single BlogRetrieve a single blog by its unique identifier. Use when you need to access detailed information about a specific blog in the Shopify store.
- Get blog article tagsRetrieve 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 bulk operation statusQuery 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 servicesRetrieves 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 countQuery 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 profileRetrieves 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 countRetrieves 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 IDRetrieves a specific collect by its ID. Use when you need to get details about a specific product-collection relationship.
- Get collection by IDRetrieves a specific Shopify collection by its `collection_id`, optionally filtering returned data to specified `fields`.
- Get collection by identifierQuery 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 collectsRetrieves 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 countRetrieves 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 count of commentsRetrieves a count of comments. Use when you need to know how many comments exist, optionally filtered by article, blog, status, or date ranges.
- Get consent policyQuery consent policies for privacy compliance requirements. Use when you need to retrieve customer consent requirements for specific regions or countries (GDPR, CCPA, etc.).
- Get CountriesRetrieve 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 provinces count for countryRetrieves 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 Province for CountryGet Province for Country
- Get countryRetrieve 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 provinces for countryRetrieve 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 CurrenciesRetrieve 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 IDRetrieve 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 collectionsRetrieves 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 countRetrieves 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.
- Retrieve a single customerRetrieve a single customer by their unique identifier. Use when you need to fetch detailed information about a specific customer.
- Get Customer AddressRetrieve 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 AddressesRetrieves 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 ordersRetrieves all orders for a specific, existing customer in Shopify using their unique customer ID.
- Get customers countRetrieves a count of all customers. Use when you need to know the total number of customers, optionally filtered by creation or update dates.
- Search CustomersSearch 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.
- Get Discount CodeRetrieves 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.
- Retrieve Discount Code Creation JobRetrieves 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.
- Get discount codes countRetrieves 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 Code LocationLook 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.
- Receive a single draft orderRetrieve 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.
- Get event by IDRetrieve 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 fulfillments by fulfillment orderRetrieves 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 fulfillment eventsRetrieves 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 moveRetrieve 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 orderRetrieves 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 ServicesRetrieve 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 Gift Card By IDRetrieves 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).
- Retrieves a list of gift cardsRetrieve a list of gift cards from Shopify. Use when you need to fetch gift cards with optional filtering by status and pagination support.
- Retrieves a count of gift cardsRetrieves 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.
- Get Inventory ItemRetrieves 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 ItemsRetrieves 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 LevelsRetrieves 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 LocationRetrieves 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 locationRetrieve 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 countQuery 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.
- Retrieve a single marketing eventRetrieves 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.
- Get marketing events countRetrieves a count of all marketing events in the store. Use when you need to know the total number of marketing events.
- Get blog metafieldsRetrieve a list of metafields from a blog resource. Use when you need to fetch metafields attached to a specific Shopify blog.
- Get metafield by IDRetrieve a single metafield from a resource by its ID. Use when you need to fetch metafield details without knowing the parent resource.
- Get metafieldsRetrieve 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 orderRetrieve a specific order using its unique identifier. Returns detailed order information including line items, customer data, addresses, financial status, fulfillment status, and more.
- Retrieve order fulfillmentsRetrieve fulfillments associated with a Shopify order. Use when you need to get delivery tracking information, shipment status, or fulfillment details for a specific order.
- Get specific refund for orderRetrieves 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 refunds for orderRetrieves 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 orders with filtersRetrieves 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 order transactions countRetrieve 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 page by IDRetrieve a single Shopify page by its unique ID. Use when you need to fetch detailed information about a specific page.
- Get PoliciesRetrieve 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.
- Check Batch Listing Support for Price RuleChecks 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
- Get Discount Codes for Price RuleRetrieve 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 productRetrieves details for an existing Shopify product using its unique product ID.
- Get product imageRetrieve 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 metafieldRetrieves a specific metafield for a Shopify product using the product ID and metafield ID.
- Get product metafieldsRetrieves 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 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`.
- Receive a single product variantRetrieves 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.
- Get recurring application chargesRetrieve 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 IDRetrieve a single redirect by its ID. Use when you need to get details about a specific URL redirect configuration in a Shopify store.
- Get redirectsRetrieve 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 countRetrieves 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 Script TagRetrieves a single script tag by its ID. Use when you need to get details of a specific script tag configuration.
- Get segments countQuery the number of segments for a shop. Use when you need to know how many customer segments exist.
- Get Shipping ZonesRetrieve 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 addressRetrieves 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 smart collection by IDRetrieve 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 collectionsRetrieve 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 countRetrieve 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 storefront access tokensRetrieves 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 transactionsRetrieve 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.
- Retrieve a single themeRetrieves 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.
- Get themesRetrieves a list of themes from a Shopify store. Use when you need to access theme information including name, role, and metadata.
- Get Theme AssetRetrieve 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.
- Retrieve a specific transactionRetrieve 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.
- Get WebhookRetrieves a single webhook subscription by its ID. Use when you need to get details of a specific webhook configuration.
- Get webhook subscriptions countQuery the number of webhook subscriptions for a shop. Use when you need to know how many webhook subscriptions exist, optionally filtered by query criteria.
- Shopify GraphQL Admin executeExecute 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.
- Shopify GraphQL collections and publication-ready collection readsShopify GraphQL collections and publication-ready collection reads. The response always includes raw GraphQL data, extracted userErrors, pageInfo, and cost extensions.
- Shopify GraphQL customers and customer searchShopify GraphQL customers and customer search. The response always includes raw GraphQL data, extracted userErrors, pageInfo, and cost extensions.
- Shopify GraphQL discounts and discount searchShopify GraphQL discounts and discount search. The response always includes raw GraphQL data, extracted userErrors, pageInfo, and cost extensions.
- Shopify GraphQL draft ordersShopify GraphQL draft orders. The response always includes raw GraphQL data, extracted userErrors, pageInfo, and cost extensions.
- Shopify GraphQL inventory items and levelsShopify GraphQL inventory items and levels. The response always includes raw GraphQL data, extracted userErrors, pageInfo, and cost extensions.
- Shopify GraphQL metafields and metaobjectsCanonical GraphQL read surface for metafields, metafield definitions, and metaobjects.
- Shopify GraphQL orders and order searchShopify GraphQL orders and order search. The response always includes raw GraphQL data, extracted userErrors, pageInfo, and cost extensions.
- Shopify GraphQL products, variants, media, and publishingGraphQL-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.
- Execute Shopify GraphQL queryExecutes a GraphQL query against the Shopify Admin API for flexible data retrieval and mutations including metafields. Response data is nested under result['data']['data'], not result['data']. Always inspect both response_data.errors (top-level) and mutation-level userErrors—HTTP 200 can accompany GraphQL validation failures. Query costs draw from a ~1000-point bucket (~50 points/second refill); monitor extensions.cost.throttleStatus to avoid THROTTLED errors. Paginate list queries using pageInfo.hasNextPage and endCursor to avoid silently missing records. productUpdate replaces the entire tags array—send the complete final tag list. refundCreate requires orderId at both the top level and inside each transactions element. transaction parentId must reference a CAPTURE-kind transaction. Numeric fields like numberOfOrders may be returned as strings—cast before aggregating.
- Shopify GraphQL shop and app metadataGraphQL-first shop, app installation, and configuration read action.
- Shopify GraphQL webhook subscriptionsShopify GraphQL webhook subscriptions. The response always includes raw GraphQL data, extracted userErrors, pageInfo, and cost extensions.
- Shopify GraphQL write operationsCanonical GraphQL write surface for Shopify orders, customers, inventory, discounts, collections, webhooks, fulfillments, metafields, and bulk operations.
- List article authorsRetrieve 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 tagsRetrieve 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 localesQuery available locales for the Shopify store using the Admin GraphQL API. Use when you need to retrieve the list of supported language/region combinations.
- Retrieve list of articles from blogRetrieves 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 a list of all blogsRetrieve 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.
- List bulk operationsRetrieve 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 channelsRetrieves 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 profilesQuery 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.
- Retrieve products in collectionRetrieve 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 a list of commentsRetrieve a list of comments from Shopify. Use when you need to get comments with optional filtering by dates, status, or pagination.
- Retrieves a list of customersRetrieve 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.
- Retrieve list of draft ordersRetrieve 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.
- List locationsRetrieve 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.
- Retrieve all marketing eventsRetrieves 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 list of pagesRetrieve 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.
- List Payment Terms TemplatesQuery 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.
- Receive A List Of All Product ImagesRetrieve all images for a Shopify product. Use when you need to get the complete list of images associated with a specific product.
- Get product variantsRetrieve 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 resource feedbackRetrieves 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.
- Retrieve all script tagsRetrieves 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 order transactionsRetrieves 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.
- Mark Comment as Not SpamMarks 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 SpamMark 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 product variantUpdate an existing product variant in Shopify. Use when you need to modify variant properties like price, SKU, weight, or inventory settings.
- Move Fulfillment Order to New LocationMove 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 definitionPin 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.
- Query app by API keyQuery 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 entitiesRetrieve 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 entityQuery 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 catalogsQueries 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 IDQuery 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 regionsQuery 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 app installationQuery 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 current Shopify bulk operationQuery 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 pagesQueries customer account pages from Shopify using the GraphQL Admin API. Use when you need to retrieve customizable pages for customer accounts.
- Query deletion eventsQuery 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 disputesQuery 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 domainQuery 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 eventsQuery 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 countQuery 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 jobQuery 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 IDQuery 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 definitionsQuery 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 metafield definition typesQueries 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 node by IDQuery 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 IDsQuery 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 storeQuery 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 jobQuery 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 versionsQuery 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 IDQuery 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 configurationQuery 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 (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.
- Query shop billing preferencesQuery 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 Shopify FunctionsQuery 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 Shop Pay payment request receiptsQuery 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 standard metafield templatesQuery 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 taxonomyQuery 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 IDRetrieve 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 subscriptionsQuery 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 single fulfillmentRetrieve 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.
- Release fulfillment holdReleases 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 orderReopens a previously closed Shopify order. Use when an order needs to be modified after being closed.
- Restore CommentRestores 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.
- Get resource metafieldsRetrieve 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 Price Rules ListRetrieve 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.
- Retrieve specific fulfillment orderRetrieve a specific fulfillment order by its ID. Use when you need detailed information about a particular fulfillment order including line items, destination, and status.
- Revoke app access scopesRevoke 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.
- Run bulk mutation operationCreate 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).
- Run Shopify bulk operation queryCreate 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.
- Search Gift CardsSearch 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.
- Send Customer Account InviteSends 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.
- Send an invoiceSend 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.
- Set Default Customer AddressSet 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 DeadlineSet the latest fulfillment deadline for multiple fulfillment orders. Use when you need to update deadline for one or more fulfillment orders.
- Set inventory levelSet 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 metafieldsCreate 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 FlowTrigger 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 app subscription line item capped amountUpdate 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 ArticleUpdate an existing article in a Shopify blog. Use when you need to modify article properties such as title, content, tags, or publication status.
- Modify an existing blogUpdates 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.
- Update CommentUpdate 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 custom collectionUpdate 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 CustomerUpdate 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 Customer AddressUpdates 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
- Bulk delete customer addressesPerforms 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.
- Modify an existing draft orderUpdate 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.
- Update Fulfillment TrackingUpdates 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 an Existing Gift CardUpdates 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 inventory itemUpdates 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 EventUpdates 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 IDUpdate an existing Shopify metafield by its ID. Use when you need to modify metafield properties like value, type, or description.
- Update metafield definitionUpdate 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.
- Update OrderUpdates mutable fields on an existing Shopify order.
- Update PageUpdates 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 RuleUpdate 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 ImageModify an existing product image. Use when you need to update image properties such as position, alt text, or variant associations.
- Update product metafieldUpdates an existing metafield for a specific Shopify product.
- Bulk update product variants via GraphQLUpdates 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.
- Update Pub/Sub webhook subscriptionUpdates 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 redirectUpdate 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.
- Updates An Existing Discount CodeUpdates 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.
- Update Script TagModify 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 CollectionUpdate an existing smart collection. Use when you need to modify a smart collection's properties, rules, or settings.
- Update smart collection product orderUpdates 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).
- Modify existing themeUpdate 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.
- Update webhook subscriptionUpdate 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.