Why Your Partner App Must Enable Bulk Operations Now (and How)

Shopify now requires partner apps to explicitly enable bulk queries or mutations before using the GraphQL Admin API. Learn who’s affected, the exact steps to enable access, and best‑practice code snippets to keep your app running smoothly.

Why Your Partner App Must Enable Bulk Operations Now (and How)
5 sections

Starting today, Shopify has added a new gatekeeper for bulk operations in the GraphQL Admin API. If you build public or custom partner apps that run bulk queries or bulk mutations, you’ll need to enable the appropriate permission in the Partner Dashboard before those calls succeed. This post breaks down the change, tells you exactly who needs to act, and walks you through the steps and code you’ll need to stay compliant.

What Changed

Bulk operations are now split into two distinct permission sets:

  • Bulk Queries – required to call bulkOperationRunQuery. - Bulk Mutations – required to call bulkOperationRunMutation. If your app attempts a bulk operation without the matching permission, Shopify returns an access denied error. The rule applies to every GraphQL Admin API version, so it’s not a version‑specific quirk.
  • Who Is Affected

    Only apps that are built and published through the Partner Dashboard are subject to this change. That means:

    • Public apps listed on the Shopify App Store. • Custom apps you create as a partner for specific merchants. Apps that merchants create directly in the Shopify admin or via the Dev Dashboard remain untouched for now. If your app has already run bulk operations, Shopify pre‑enabled the needed permission. You can verify the status in the Partner Dashboard. However, any app that hasn’t run a bulk query or mutation in the last 31 days loses that specific permission and will need to be re‑enabled.

    How to Enable Bulk Operations

  • Log into the Partner Dashboard. 2. Navigate to Apps → Your App → API access requests. 3. In the Run bulk operations section, toggle Allow bulk queries and/or Allow bulk mutations depending on what your app uses. 4. Save the changes. No new app version, no reinstall, and no store‑level configuration is required – the permission propagates to every store that has the app installed.
  • mutation RunBulkMutation {

    bulkOperationRunMutation(

    mutation: "mutation { productUpdate(id: \"gid://shopify/Product/123456789\", tags: \"new, sale\") { product { id } } }"

    ) {

    bulkOperation {

    id

    status

    }

    userErrors { field message }

    }

    }

    The code snippet above shows a typical bulk mutation. After you enable bulk mutations in the dashboard, this call will succeed. If the permission is missing, the response will contain an accessDenied error instead of the usual bulkOperation payload.

    Best Practices & Common Pitfalls

    • Check permission programmatically – Before you fire a bulk operation, you can query the app’s permission status via the GraphQL appInstallation endpoint. If it’s missing, log a clear warning and skip the operation.

    • Automate re‑enabling – Set up a cron job that calls the Partner API’s appPermissionsUpdate endpoint (if you have API access) to re‑grant bulk permissions after a 31‑day lull.

    • Separate concerns – If your app mixes queries and mutations, enable both permissions from the start. This avoids a surprise “access denied” after a future feature rollout.

    • Version‑agnostic – Because the rule applies to all Admin API versions, you don’t need to version‑gate this check. One permission toggle covers every future GraphQL version you might upgrade to.

    Conclusion & Next Steps

    Bulk operations are a powerful tool for moving large data sets, and Shopify’s new permission model keeps that power safe and predictable. Take a few minutes today to verify your app’s bulk‑query and bulk‑mutation settings in the Partner Dashboard, and add a simple permission‑check to your codebase. Doing so will prevent unexpected downtime and keep your merchants’ workflows running smoothly.

    Ready to update your app? Head to the Partner Dashboard now, enable the needed bulk permissions, and let your bulk jobs run without interruption.

    Tags
    Sources

    Related Articles

    Enable Bulk Operations: New Permission Requirement for Shopify Apps

    Enable Bulk Operations: New Permission Requirement for Shopify Apps

    Starting today, Shopify apps must explicitly enable bulk query and mutation access before running bulk operations via the GraphQL Admin API. Learn what changed, who’s impacted, and how to enable the permissions in minutes.

    November 6, 20264 min
    Merchant Notes Empower Store Credit Transactions in Shopify API 2027-01

    Merchant Notes Empower Store Credit Transactions in Shopify API 2027-01

    Shopify’s 2027-01 API adds optional merchant‑only notes to store credit credits and debits, giving merchants better context without affecting customers. Learn what changed, who’s impacted, and how to implement the new note field today.

    November 6, 20263 min
    Multi‑Group Location Ranking Arrives in Shopify’s Unstable Functions API

    Multi‑Group Location Ranking Arrives in Shopify’s Unstable Functions API

    Shopify’s latest Function API upgrade lets order routing functions rank a single location across multiple fulfillment groups, simplifying multi‑warehouse logic. Learn what changes, who it impacts, and how to update your code today.

    November 5, 20264 min
    Review App Access and Security Directly in Shopify Admin

    Review App Access and Security Directly in Shopify Admin

    Shopify now lets merchants see detailed app activity, permissions, and security measures right in the admin. Learn what changed, who it impacts, and how to act now.

    November 5, 20264 min