How to successfully bulk update inventory using REST and GraphQL API?

How do I bulk update item inventory using API?

We can do both REST and Graph QL api, but I can’t get bulk updating of inventory on variants to work?

Thanks!

I don’t think the REST API supports bulk inventory updates, but the GraphQL API does:
https://shopify.dev/api/admin-graphql/2022-01/mutations/inventoryBulkAdjustQuantityAtLocation

Bulk inventory updates can also be done with a CSV import:
https://help.shopify.com/en//manual/locations/changing-quantities/exporting-or-importing-inventory

Hi mate,

Have you sorted out what you were looking to achieve? Please let me know as I am in the same situation.

Thanks and looking forward

Abad

Hi,

No we needed to go GraphQL way on this.

Thanks for your response. I am having the same problem. Have you come up with any solution? I mean did you build any application? I am looking to update in bulk pricing and inventory but don’t want to pay for apps like stock sync etc. happy to purchase any software that can do the job. Please advise. Thanks

Hey @abad , I’ve built a few apps to do similar things with other APIs but I haven’t tried with Shopify’s GraphQL API yet. It does look possible though, based on their API docs.

GraphQL itself has a bit of a learning curve, but this should be easy for any dev that’s already familiar with it. You might be able to hire someone to build a web app that parses a CSV into a GraphQL mutation for bulk upload. Once you have the endpoint and query format figured out, the rest would only take a few hours to build in something like Appsmith, or any other app builder that supports GraphQL.

GraphQL supports DELTAs only. It’s not a way of setting a new value. For that you have to do one by one using REST or manually via CSV. We have a custom inventory management app and I’ve tried every which way to get a sync to work but the only way of doing it is to go through all published items one by one and update if they’re different.

Watch out for rate limits if you do this too.

Is there a solution available in new GraphQL API version 2024-01 ?