Shopify Product API

Worldwide eCommerce sales grew by 8.9% in 2023—and that figure is only going to increase. Platforms like Shopify make it a cinch for businesses to quickly set up powerful, user-friendly shops that streamline the eCommerce experience.

But what if you sell thousands of products? It would take you hundreds of hours to create, update, and delete these products manually.

This is why many developers and technically-inclined eCommerce owners lean on the Shopify Product API. The API makes it easier to update and create products, including creating product variants.

The Shopify Product API has many moving parts, though, so it’s best to know how it works before diving into the code. In this guide, we’ll explain what the API is and share step-by-step instructions for creating, updating, and deleting products with the API. We’ll even share a huge time-saving tool to streamline your work with the Shopify API.

 

What Is the Shopify Product API?

Shopify Product API

An application programming interface (API) is a way for two or more software applications to communicate with each other directly, usually to automate tasks without manual human input.

So, the Shopify Product API is a powerful tool that developers and eCommerce entrepreneurs can use to manage Shopify stores programmatically.

With the right setup, the Product API lets you integrate your Shopify store with other systems. This makes it much easier to create new products, manage inventory, and more.

You’re free to manage your Shopify store manually, but we’re willing to bet you don’t have time for that. If you have the technical chops (or can hire someone who does), integrating with the Shopify API will save you more time and improve your store’s accuracy.

How the Shopify API Works

The Shopify Product API works by allowing API calls to Shopify’s admin API. As long as you have a database of product details ready to go, the API connection makes it easy to pull product information into your store automatically.

For example, let’s say you have a database provided by your eCommerce supplier with product descriptions, pricing information, specs, and inventory. The API automatically pulls this product data from the database and displays it in your store.

The API is customizable, too, so you’re free to cherrypick which data you want the API to feed in from the database.

 

Benefits of the Shopify Product API

Shopify Store on a mobile device

It might require technical skills, but this API connection has many benefits for larger eCommerce stores and dropshippers.

 

Bulk Product Management

The Shopify Product API makes it possible to manage products in bulk, so you can add, update, or delete multiple products at once. This is a big time-saver, especially for big stores.

 

Third-Party Integrations

The API also builds a seamless bridge between your Shopify store and other external platforms. This setup makes it possible to synchronize data across platforms and make your eCommerce system more coherent.

 

Custom Development

Need something more personalized? The API gives developers the freedom to build hyper-customized solutions. Whether it’s a unique inventory management system, a bespoke product recommendation engine, or a specialized reporting tool, the API makes nearly anything possible.

 

Inventory Management Automation

Inventory levels change almost constantly, but the API helps you stay on top of these changes. It auto-updates stock levels after each sale or when new stock arrives, ensuring your inventory levels are always accurate.

 

Dynamic Pricing

Maximize your margins with dynamic pricing. With the right tool, the API facilitates real-time pricing updates based on demand, competition, and other factors.

 

Better SEO Performance

Search engine performance matters. By leveraging this API, you can automate product titles, descriptions, and product images to optimize your pages for search engines automatically.

 

Flash Sales, Promotions, and Real-Time Recommendations

Are you planning a big sale? The API allows you to adjust prices, create bundles, and launch exclusive products programmatically, ensuring your flash sale goes off without a hitch.

 

How To Create a Product

Create a product via Shopify Product API

Creating a new product via API is pretty straightforward. Follow these steps to add a new product to your Shopify site.

 

1. Set up a Private App

Before you interact with the Shopify API, you need a private app in your Shopify account. This makes it possible to authenticate API requests.

To do this:

  • Log into the Shopify admin dashboard
  • Navigate to Apps > Manage private apps > Create a new private app
  • Fill in the app details and give it a name
  • Go to the Admin API section of your account to adjust permissions. For product creation, the permissions need to be “Read and Write”
  • Save your app to get an API key and an access token

 

2. Formulate an API Call

Once you have the credentials, you can create a call. You need three things to do that:

  • Endpoint: The endpoint to create a product is typically https://{your-shop-name}.myshopify.com/admin/api/2023-07/products.json.
  • Method: Since you’re adding new data, use the POST method.
  • Headers: Include headers such as Content-Type: application/json and X-Shopify-Access-Token: {your-access-token}.

 

3. Input Product Details

Next, define the details of the product you want to create, structured in JSON format.

Here’s a code example to give you an idea of how it should look:

{

  "product": {

    "title": "Burton Custom Freestyle Snowboard",

    "body_html": "<strong>Perfect for all snowboarding enthusiasts!</strong>",

    "vendor": "Burton",

    "product_type": "Snowboard",

    "tags": ["Freestyle", "All Mountain"],

    "variants": [{

      "option1": "First",

      "price": "499.99",

      "sku": "123"

    }],

    "images": [{

      "src": "https://{image_url_here}"

    }]

  }

}

This example includes attributes for title, vendor, and product type. It also includes a default product variant with price, SKU, and image data.

 

4. Send the API Request and Manage the Response

Use tools like Postman to send the POST request and JSON data to the endpoint.

Once you create the product, the API will return a response containing the product’s details. Check everything to catch potential errors or exceptions, like invalid data or rate limits.

 

5. Do Testing

Make sure Shopify created the product correctly. Log into your Shopify admin dashboard and go to Products. Check that the API successfully added the product and that all details, including product images, match the data you sent.

 

Updating a Product With the Shopify API

Update a product via Shopify Product API

Creating a product is easy enough, but what if you want to update an existing product? Follow these steps to update your product details.

 

1. Retrieve the Product ID

You need the product’s ID to update it. Go to this endpoint to retrieve your product list and IDs:

https://{your-shop-name}.myshopify.com/admin/api/2023-07/products.json.

Retrieve a product ID via Shopify Product API

Use a GET request to retrieve a list of products. From the list, pull the Product ID for the item you want to update.

 

2. Create an API Call For Updating

Product ID in hand, use this data to create a call:

  • Endpoint: https://{your-shop-name}.myshopify.com/admin/api/2023-07/products/{product-id}.json.
  • Method: Use the PUT method to update existing data.
  • Headers: Include headers like Content-Type: application/json and X-Shopify-Access-Token: {your-access-token}.

 

3. Define the Updated Data

Structure the updated data in JSON. You only need to include the fields you want to update. Here’s an example where you’re just updating the price and product title:

{

  "product": {

    "id": {product-id},

    "title": "Updated Burton Custom Freestyle Snowboard",

    "variants": [{

      "id": {variant-id},

      "price": "399.99"

    }]

  }

}

 

4. Send the API Request and Manage the Response

Send the PUT request to the update endpoint. The Shopify Product API will return the updated product details.

 

5. Do Testing

As always, log back into your Shopify admin dashboard to ensure it applied the update.

 

Deleting a Product in the Shopify App

Delete a product via Shopify Product API

Sometimes you need to remove items from your Shopify store. Instead of manually deleting them, you can use the Shopify Product API to remove these items from your store quickly.

 

1. Get the Product ID

Get the product’s ID first to delete it. Execute a GET request from this endpoint to get a list of products: https://{your-shop-name}.myshopify.com/admin/api/2023-07/products.json.

Find the Product ID for the item you want to remove.

 

2. Create an API Call For Deletion

Next, set up a call with these details:

  • Endpoint: https://{your-shop-name}.myshopify.com/admin/api/2023-07/products/{product-id}.json.
  • Method: Use the DELETE method to remove an item.
  • Headers: Include headers like Content-Type: application/json and X-Shopify-Access-Token: {your-access-token}.

 

3. Send the Request and Get a Response

Send a DELETE request to your endpoint. If it’s successful, the Shopify Product API will return a “200 OK” status without any body content.

 

4. Do Testing

Log back into your Shopify admin dashboard and make sure the product is gone from the Products section of your account.

 

Four Challenges of Using the Shopify Product API for Your Store

Shopify store on a laptop

The Shopify Product API gives developers a lot of flexibility, but it isn’t without its hurdles.

 

1. Rate Limits

The biggest challenge with the Shopify Product API is its rate limits. This limits the number of API requests you can make over a given timeframe. Rate limits keep the platform responsive for all users, but it can create bottlenecks if your eCommerce store needs frequent updates or large batch uploads.

You can try to use smart retry logic in your API calls to avoid rate limits, but even then, it isn’t a perfect solution.

 

2. Complex Product Variants and Relationships

It can get messy trying to manage products with multiple variants, options, or associated metafields. You need to plan carefully to maintain these relationships and ensure updates don’t disrupt your existing structures.

 

3. Inventory Accuracy

The Shopify Product API makes it easy to do bulk updates and changes. However, you could see syncing issues and discrepancies over time.

 

4. Learning Curve

If you’re new to either APIs or the Shopify ecosystem, the API comes with a hefty learning curve. You need to know what you’re doing so you don’t create more problems for your store.

You can always sign up for a Shopify community webinar alert in the Community portal to stay on top of new updates, but you'll still need existing coding or API knowledge to follow along.

 

The Fix: Update Your Store With an Off-The-Shelf Solution

The Shopify API can do a lot of heavy lifting, but it isn’t without its problems. Instead of building an integration like this from scratch, use an off-the-shelf solution like Spark Shipping.

Spark Shipping integrates with Shopify via the Shopify Product API, making it even easier to create and manage products while sidestepping rate limits.

Don’t reinvent the wheel: See how Spark Shipping automates pricing, inventory updates, fulfillment, and more for Shopify stores.