I’ve been trying to disable products via API from specific channels, other than the “Online Store” but with no luck for now.
Currently, I’m able to disable a product from the “Online Store” sales channel with “published: false”, but this property is listed as deprecated and suggested to use the Publication object.
Requesting the Publication object keeps requiring the read_publications,write_publications access, but these scopes are missing as it says “Oauth error missing_shopify_permission: read_publications,write_publications”.
Here https://community.shopify.com/c/Shopify-APIs-SDKs/write-publications-and-read-publications-access/m-… I saw that there is a follow-up which can help in achieving this, but I still got no response from Shopify forums or support regarding it.
My app is a public one and the functionality I need to create is to disable the specific product from all sales channels and then enable it only on the “Online store” channel.
I found an app that manages to do that, so I think there should be a way, but I couldn’t find this in the docs. The app’s name is “Bulk Product Edit (BPE)”
Any idea how I can get this working?
Regards
2
Answers
If you’re trying to control the visibility (publish or unpublish) of a product on a channel other than Point of Sale or Online Store, this is not possible via the API at the moment. You can only disable enable from online store.
"published" is marked as deprecated on GraphQL API but not on Rest Admin API (Search ‘Create a new unpublished product’).
So you can still use the Rest Admin API