open-api icon indicating copy to clipboard operation
open-api copied to clipboard

[FEATURE] Edit inventory without editing pricing

Open foxfriends opened this issue 4 years ago • 2 comments

Is your feature request related to a problem? Please describe. It's a bit weird that pricing, quantity, and SKU are edited at the same time, under a single endpoint titled "inventory". I want to be sure that I cannot be accidentally updating SKU or pricing when all I want to do is change the quantity. Additionally, because I cannot just change quantity, I need to download the whole inventory listing to be able to edit it and reupload, effectively doubling the number of requests I need to make.

Describe the solution you'd like Separate endpoints for editing just quantity, just SKU, or just pricing would make this process feel less error-prone. A way to make this request without having to first get the inventory would make it easier to use.

Describe alternatives you've considered No alternative, other than to use the existing update inventory endpoint, but it is unpleasant.

foxfriends avatar Feb 11 '21 01:02 foxfriends

Hi @foxfriends! Thank you for your feedback. We hear you on updateInventory being difficult to work with 😞 We're in the process of investigating what we can do about it. We might reach out with further questions or suggestions on how it can serve you best!

harjas avatar Mar 01 '21 13:03 harjas

First of all, lovely work on the v3 design and the great docs!

I agree with @foxfriends that updateInventory could be improved and want to back it up with some real world numbers. I too feel like many users of the API will want to achieve relatively simple tasks as "given an SKU, update the quantity" or "update the price". I am building a tool to update prices across multiple channels, and Etsy needs by far the most complex and scariest code to achieve this. Essentially, one has to inspect the current listing, and then build new property/values/offerings dicts. A single mistake there can mean irreversible damage to listings.

Right now, I'm at 75 lines of Python code to do "change price for a given SKU". I am far from certain it works, and I know it doesn't handle combinations of properties. In comparison, Shopify doesn't require inhouse developers to have to handle OAuth2, and the API call to change the price is literally one line. What took me less than an hour for Shopify took me a whole day for Etsy.

One example of why a simpler approach might be better is https://github.com/etsy/open-api/issues/314. It seems like the bug would affect fewer users if it were possible to update prices or quantities without having to handle properties and their values.

Please let me know if there's anything I can do to help. My code in it's current state is here.

maiksprenger avatar Jan 05 '22 17:01 maiksprenger