I have been using an app to edit some aspects of orders. This app is quite expensive. I decided to create my own custom app just for my store to accomplish what I need to. I quickly discovered the app I am using seems to have functionality that is not available to me. For example, the app can cancel orders and create custom order names - I cannot find access to perform either of these actions in the Shopify API. Am I missing something in the documentation, or do some apps have special privileges and/or access to internal Shopify APIs that normal developers don’t have?
Hey @Benjamin_Brooke
All API access is determined by the access scopes requested by the app. This is likely the difference you’re seeing between your custom app and the paid one you’re using. Some apps might have additional scopes that enable specific features, so I’d recommend reviewing all available scopes at Shopify API access scopes to ensure your app has the necessary permissions.
For example, looking at the specific functionality you mentioned, you can cancel orders using the orderCancel
mutation (which requires the write_orders
scope). As for custom order names, this is available through the orderCreate
mutation, where the OrderCreateOrderInput
object allows you to set a custom name parameter.
If you’re still not finding what you need, our unstable API versions might be worth exploring as they contain features still in development. While not recommended for production use, these versions sometimes include functionality that hasn’t made it to stable releases yet. You can learn more about these at About Shopify API versioning.
Hope that helps.
Thanks, Kyle - I was able to find the orderCancel mutation and get it working. Now I am running into an issue with orderCreate. I am using the node.js template seem to have worked out all the issues with mutation variables but now I get this:
Access denied for orderCreate field. Required access: write_orders access scope. Also: This mutation is only accessible to apps authenticated using [offline tokens](https://shopify.dev/docs/apps/build/authentication-authorization/access-tokens/offline-access-tokens.
What’s interesting is that I do have the scope and at one point I’m pretty sure I did create an order. I tried uninstall/reinstall - not exactly sure why I am getting this, from what I read offline is the default method.
Hey @Benjamin_Brooke
Great to see the orderCancel is working for you now. If you configured your app through the CLI, the default access token is online access. You can see if this is excluded in your app toml file. If so, that would explain why you are getting that error. App configuration