You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Oct 6, 2026. It is now read-only.
Repository navigation
This repository was archived by the owner on Oct 6, 2026. It is now read-only.
Shopify Python API and Future GraphQL-Only Support #761
Shopify has announced plans to deprecate the REST API in favor of GraphQL-only support. However, the shopify_python_api package still heavily relies on REST under the hood, even when using the shopify.GraphQL client.
As Shopify transitions to a GraphQL only approach, I'm wondering
Will the Shopify Python API be updated to fully support GraphQL-only workflows?
Are there plans to remove REST dependencies and provide an optimized GraphQL client?
Should developers continue using this package for GraphQL, or should we start migrating to custom GraphQL clients?
If an official GraphQL-first version is planned, is there an ETA or roadmap?
Any insights into future plans and recommendations would be greatly appreciated. Thank you so much! 🙏
Bump! I see that REST will (might) be abandoned around April. This plugin supports some GraphQL queries (GraphQL.execute(query)) so it's possible to switch and consume GraphQL here as well
Reacted by Mancio Basoc, Melodie Vidal, Wilmer Martinez and Christian Jauvin
Hey @sle-c@Arkham - do you know the answers to the above? I think it will be important to add clarity about which parts of this package will be inoperable due to the REST API decommissioning next month
Reacted by Melodie Vidal, Wilmer Martinez and Christian Jauvin
As a Python developer new to Shopify, I am confused by this situation. What is the status of this library, in relation to GraphQL and REST support's future?
I am not a maintener of this project. But the experience we get is the following:
The futur of shopify is full graphql.
This lib already support the possibility of execute graphql query
As REST and graphql are fundamentaly different the current lib interface may not be logic anymore.
My reco is go forward and start making yor own graphql query with the client already existing in this lib and use LLM engine of you choices with the shopify doc as MCP or context to help you with that
I switched to the gql python library. IMO this library (shopify API) should have a clear warning in the README, to better explain the situation (what is there currently is not explicit enough). I imagine that it could be even possible to create yet another library that would wrap GraphQL, to offer a higher-level interface, as this one is doing? But I repeat: having this library be a high-level wrapper around a deprecated API, as well as a sub-interface to GraphQL, is too confusing.
Reacted by Navid, Rafal Pietrzak, David Adeniji and Cam Sture
For anyone following this discussion: I ran into the same limitation (this package being REST-heavy with incomplete GraphQL support) and built a separate helper library focused purely on GraphQL.
Not sure exactly what you have in mind by "GraphQL SDK". For my part, what I have in mind is this: a higher-level, object-oriented wrapper around a lower-level GQL-based (or any other GraphQL client library for Python) implementation, which would allow to manipulate dataclasses like Products, Orders, and such without thinking at all in terms of GraphQL primitives. A little bit like what this current library was doing, for the REST interface. But, to be honest, I'm not even sure it would make sense (or be worth the effort), as one could argue that GraphQL, in itself, is already a high enough level of abstraction, and that providing another one on top of it would not be really necessary.
Hey saw your issue, I'm building a tool that auto-fixes these errors by scanning solved cases from top Shopify devs.
If I solved this for you right now, would you pay $7 to never see this error again?
(Reply YES/NO - takes 10 sec. If YES, I'll fix your error free as a test.)
Reacted by SD, Christian Jauvin, Navid, fanglad, Fabricio Werneck, Silvan Spross, mancio-askembla, birdhouses, Thijs van Nierop and Gytis Žilinskas
Not sure exactly what you have in mind by "GraphQL SDK". For my part, what I have in mind is this: a higher-level, object-oriented wrapper around a lower-level GQL-based (or any other GraphQL client library for Python) implementation, which would allow to manipulate dataclasses like Products, Orders, and such without thinking at all in terms of GraphQL primitives. A little bit like what this current library was doing, for the REST interface. But, to be honest, I'm not even sure it would make sense (or be worth the effort), as one could argue that GraphQL, in itself, is already a high enough level of abstraction, and that providing another one on top of it would not be really necessary.
I agree, that's just stacking more complexity and making it harder to understand and maintain. I'd recommend something like making a Shopify Python SDK that uses GraphQL under the hood with type safety, pydantic models, and lots of documentation that makes it easy to use in a nice object oriented way. Essentially, what this was trying to do with REST but with GraphQL only, but much nicer, with better exceptions, and easier to use. We could also give the ability for the user to write their own custom GraphQL if they need something more optimized than what the SDK already has
However, what I'm thinking might be a big project and not sure if volunteer open-source developers should be building this since it is a paid service
We are closing this issue because it has been inactive for a few months.
This probably means that it is not reproducible or it has been fixed in a newer version.
If it’s an enhancement and hasn’t been taken on since it was submitted, then it seems other issues have taken priority.
If you still encounter this issue with the latest stable version, please reopen using the issue template. You can also contribute directly by submitting a pull request– see the CONTRIBUTING.md file for guidelines
Activity
rafalpietrzakio commentedon Feb 13, 2025
Bump! I see that REST will (might) be abandoned around April. This plugin supports some GraphQL queries (GraphQL.execute(query)) so it's possible to switch and consume GraphQL here as well
rjh336 commentedon Mar 4, 2025
Hey @sle-c @Arkham - do you know the answers to the above? I think it will be important to add clarity about which parts of this package will be inoperable due to the REST API decommissioning next month
github-actions commentedon May 4, 2025
This issue is stale because it has been open for 60 days with no activity. It will be closed if no further action occurs in 14 days.
sdobbelaere commentedon May 5, 2025
bump
github-actions commentedon Jul 5, 2025
This issue is stale because it has been open for 60 days with no activity. It will be closed if no further action occurs in 14 days.
AMontagu commentedon Jul 5, 2025
bump
cjauvin commentedon Aug 11, 2025
As a Python developer new to Shopify, I am confused by this situation. What is the status of this library, in relation to GraphQL and REST support's future?
AMontagu commentedon Aug 13, 2025
I am not a maintener of this project. But the experience we get is the following:
My reco is go forward and start making yor own graphql query with the client already existing in this lib and use LLM engine of you choices with the shopify doc as MCP or context to help you with that
cjauvin commentedon Aug 13, 2025
I switched to the gql python library. IMO this library (shopify API) should have a clear warning in the README, to better explain the situation (what is there currently is not explicit enough). I imagine that it could be even possible to create yet another library that would wrap GraphQL, to offer a higher-level interface, as this one is doing? But I repeat: having this library be a high-level wrapper around a deprecated API, as well as a sub-interface to GraphQL, is too confusing.
tulayha commentedon Aug 30, 2025
For anyone following this discussion: I ran into the same limitation (this package being REST-heavy with incomplete GraphQL support) and built a separate helper library focused purely on GraphQL.
Repo: https://github.com/tulayha/shopify-gql-helper-py
PyPI: https://pypi.org/project/shopify-gql-helper/
It’s a lightweight GraphQL-first client.
Current features:
Planned (contributions welcome):
Sharing here in case it’s useful until/if this package officially shifts to GraphQL.
Note: this is read-only/ETL-focused right now; haven't tested out mutations and they may throw errors.
NavidBecause commentedon Sep 2, 2025
I wonder if we can create our own Shopify GraphQL SDK with full docs and make it really good and easy
cjauvin commentedon Sep 3, 2025
Not sure exactly what you have in mind by "GraphQL SDK". For my part, what I have in mind is this: a higher-level, object-oriented wrapper around a lower-level GQL-based (or any other GraphQL client library for Python) implementation, which would allow to manipulate dataclasses like
Products,Orders, and such without thinking at all in terms of GraphQL primitives. A little bit like what this current library was doing, for the REST interface. But, to be honest, I'm not even sure it would make sense (or be worth the effort), as one could argue that GraphQL, in itself, is already a high enough level of abstraction, and that providing another one on top of it would not be really necessary.Krrish1999 commentedon Sep 4, 2025
Hey saw your issue, I'm building a tool that auto-fixes these errors by scanning solved cases from top Shopify devs.
If I solved this for you right now, would you pay $7 to never see this error again?
(Reply YES/NO - takes 10 sec. If YES, I'll fix your error free as a test.)
NavidBecause commentedon Oct 1, 2025
I agree, that's just stacking more complexity and making it harder to understand and maintain. I'd recommend something like making a Shopify Python SDK that uses GraphQL under the hood with type safety, pydantic models, and lots of documentation that makes it easy to use in a nice object oriented way. Essentially, what this was trying to do with REST but with GraphQL only, but much nicer, with better exceptions, and easier to use. We could also give the ability for the user to write their own custom GraphQL if they need something more optimized than what the SDK already has
However, what I'm thinking might be a big project and not sure if volunteer open-source developers should be building this since it is a paid service
github-actions commentedon Dec 1, 2025
This issue is stale because it has been open for 60 days with no activity. It will be closed if no further action occurs in 14 days.
NavidBecause commentedon Dec 1, 2025
bump
github-actions commentedon Jan 31, 2026
This issue is stale because it has been open for 60 days with no activity. It will be closed if no further action occurs in 14 days.
github-actions commentedon Feb 14, 2026
We are closing this issue because it has been inactive for a few months.
This probably means that it is not reproducible or it has been fixed in a newer version.
If it’s an enhancement and hasn’t been taken on since it was submitted, then it seems other issues have taken priority.
If you still encounter this issue with the latest stable version, please reopen using the issue template. You can also contribute directly by submitting a pull request– see the CONTRIBUTING.md file for guidelines
Thank you!