productSet mutation not working?

anderbb
Shopify Partner
2 0 0

https://shopify.dev/docs/api/admin-graphql/2024-04/mutations/productSet

 

Attempting to use this, and it just isn't working at all - is this going to be radically changed in the time between now and when this API moves out of "release candidate"? Or is this something that I should be shelving and re-approaching several API releases from now

 

Some notes

 

  1. Synchronous mode doesn't work at all - if you explicitly specify it, e.g. for a product with 5 variants, it still runs asynchronously
  2. It will not add new variants to an existing product, and it does not appear to be able to update existing ones either
  3. If there are any changes to the option structure of a product it will throw errors, it seems entirely incapable of resolving conflicts (e.g. if you try and convert the size of one product from "OS" to "OSXL" and add a 2nd variant called "OS", it will throw an error about the duplicate "OS" even though the final product should only have 1)
  4. Would love for it to be able to upsert metafields based on namespace/key, but instead it tries to recreating them, forcing me to fetch the metafield IDs before building the payload
  5. No ability for localization - I still have to fire off a half dozen API calls to create the french localization of my products afterwards
Replies 3 (3)

jacktcg97
Shopify Partner
1 0 1

Also this API seems to not publish the product on any market thus making it invisible on the shop. And from what I have seen there is no API capable of doing so

AsafGitai
Shopify Staff
13 5 3

Hey @anderbb 

I'm unable to reproduce the initial issues you mentioned  - see recording https://screenshot.click/17-57-cpyig-9auy0.mp4
Are you still facing any of the ones you mentioned?

Thanks,
Asaf

anderbb
Shopify Partner
2 0 0

We have already upgraded to 2024-04, and simply decided not to use this mutation. It's possible it was fixed, but you would know better than I. Even with 1-3 fixed, points 4+5 are enough to make this mutation not-very-useful for syncing products from our ERP