The Shopify API is the interface that allows external tools (ERP, CRM, logistics, applications, AI) to read and modify your store's data: products, orders, customers, inventory. In this guide, we review the different Shopify APIs, how to get a key, real-world integration use cases, as well as the limits and quotas to respect to avoid breaking anything. At Stellar, we deliver API integrations every week for the 100+ stores we've supported: this guide condenses what we've learned from our experience in the field.

Summary
What is the Shopify API?
An API (Application Programming Interface) is a secure gateway that allows one software program to communicate with another. The Shopify API allows any external tool, whether it's your ERP, CRM, logistics provider, or a custom script, to view and modify your store's data without using the admin interface.
Imagine your store at the center of an ecosystem: on the left, the ERP pushing prices and inventory. On the right, the CRM retrieving new customers. Below, the logistics provider receiving orders to ship and returning tracking numbers. Each of these arrows is an API call. This is what makes Shopify an open platform, not a closed box.
In practice, three approaches coexist for connecting to a store:
- The public app, installed from the Shopify App Store, which uses the API for you without you having to write a single line of code.
- The custom app, created directly in your store's admin, which generates an access token to connect a specific tool only to your store.
- The custom integration, a dedicated development that orchestrates multiple APIs to meet a specific business need.
The Different Shopify APIs
Talking about "the Shopify API" in the singular is a misnomer: Shopify exposes several APIs, each with its own role. Here are the five you need to know to understand 95% of integration projects.
| API | What it's for | Who uses it | Concrete example |
|---|---|---|---|
| Admin API | Manage the store: products, orders, customers, inventory, promotions | ERP, CRM, back-office tools, apps | An ERP updates inventory every night |
| Storefront API | Display the store on a custom storefront (see our page Storefront API and Hydrogen) | Front-end developers | A custom website displays the catalog in real-time |
| Orders API (part of the Admin API) | Read, create, and modify orders | Logistics providers, invoicing tools | The WMS retrieves orders to prepare every 5 minutes |
| Products API (part of the Admin API) | Create and update product sheets and variants | PIM, ERP, import tools | A PIM synchronizes 3,000 SKUs with their images |
| Ajax / Cart API | Manipulate the cart on the browser side, within the theme | Theme developers | Add a product to the cart without reloading the page |
Remember the fundamental distinction: the Admin API manages the store, the Storefront API displays it. The former is what you will use in almost all projects connecting to business tools.
How to Get Your Shopify API Key
The Shopify API key (more precisely, the access token for a custom app) can be obtained in a few minutes, without coding, directly from your store's admin. Here's the exact step-by-step process:
- Open Settings at the bottom left of your Shopify admin.
- Click on Apps and sales channels.
- Click on Develop apps (if this is your first time, Shopify will ask you to allow custom app development).
- Click on Create an app, give it an explicit name, for example "ERP Connection."
- In the Configuration tab, define the permissions (scopes): read products, write orders, etc.
- Install the app on the store, then retrieve the Admin API access token in the API Credentials tab.
Security box, read twice. This token grants access to your data according to the scopes granted: never share it via email or in a shared document, and never display it on the browser side. Apply the principle of least privilege: if your tool only needs to read orders, grant only the order reading scope, nothing else. Shopify only displays the token once: store it in a secret manager, and revoke it immediately if in doubt.
Webhooks: Real-time Notifications
A webhook is the opposite of an API call: instead of regularly querying Shopify to see if something has changed, Shopify notifies your tool as soon as an event occurs. The result: no delay, no unnecessary calls, no quota consumed for nothing.
Four concrete examples that we regularly implement:
- Order created to Slack: each new order instantly appears in a team channel, with the amount and products.
- Low stock to email: as soon as a variant falls below a threshold, the buyer receives a restock alert.
- Customer created to CRM: each new customer account is pushed to the CRM with their contact information and marketing consent.
- Refund to accounting: each credit note is transmitted to the accounting tool, which generates the corresponding entry without re-entry.
Webhooks can be configured either via an app (Shopify Flow can cover some of them without code), or via the API itself for advanced cases. A point of vigilance: your server must respond quickly to each notification, otherwise Shopify will eventually deactivate the webhook after several consecutive failures. Always plan for a recovery mechanism.
5 Real-world API Integration Use Cases
Here are five families of integrations that we actually deliver at Stellar. We present them without our clients' figures, but with the exact logic of each project: the initial problem, the API mobilized, and what it changes daily.
1. ERP Synchronization
The problem: inventory and prices maintained manually in two systems, with discrepancies leading to overselling. The solution: a connector that makes the ERP the single source of truth and pushes prices, inventory, and SKUs to the Admin API at regular intervals. If you are not yet equipped, start by choosing the ERP to connect before thinking about the connector: the direction of the flows depends entirely on the chosen tool.
2. Logistics Flow
The problem: orders exported as CSV and reimported by the logistics provider, with the errors and delays that entails. The solution: orders are automatically sent to the WMS via the Orders API, and tracking numbers are uploaded to Shopify upon shipment, triggering the customer's tracking email without human intervention.
3. Custom Dashboard
The problem: a manager who oversees multiple channels and wastes time consolidating figures. The solution: a dashboard that aggregates sales data via the Admin API (in GraphQL) and cross-references it with advertising spending, for a single view of profit margin per product and per channel.
4. AI Tool Connected to the Catalog
The problem: product descriptions that are long to write and inconsistent. The solution: a tool developed by our Studio that reads the catalog via the API, generates structured content, then writes the results to the store, including for reading and writing metafields that enrich each product sheet.
5. Reporting and CRM Connections
The problem: sales teams who don't see what their professional customers are ordering online. The solution: orders and customer accounts are pushed to the CRM continuously, which is particularly structuring for CRM integrations for B2B, where account tracking determines repeat purchases.“The question that matters isn't "which API to call," it's "who will be responsible for this flow in six months." An integration without a clear owner becomes a debt. That's the first point we lock down on every project, before writing a single call.”
Florian Pohl, co-founder of Stellar Projects
To give an idea of what an API call is, here is a real and deliberately simple GraphQL Admin request that retrieves the last five created products:
# Récupère les 5 produits les plus récents avec leur stock total
query ProduitsRecents {
products(first: 5, sortKey: CREATED_AT, reverse: true) {
edges {
node {
id # global product identifier
title # product sheet name
totalInventory # cumulative stock of all variants
}
}
}
}
Limits, Quotas, and Pitfalls
The Shopify API has rate limits, and this is the primary cause of failure for poorly designed integrations. Two mechanisms coexist:
- On the REST API: a "leaky bucket" system. You have a pool of calls that empties with each request and refills continuously, approximately 2 requests per second on a standard plan. Beyond that, Shopify responds with a 429 error, and you have to wait.
- On the GraphQL API: a cost points budget. Each request costs a number of points proportional to what it asks for, and the budget refills every second. A well-constructed request retrieves in one call what REST would require in ten.
Important point for any project launched in 2026: Shopify has officially placed its REST Admin API under maintenance in favor of GraphQL. New public apps must use GraphQL, and new features are only released in GraphQL. If you are launching an integration today, it should be designed with GraphQL first: a connector written in REST will have to be rewritten.
The errors we most often see in audits: scripts that endlessly query the API where a webhook would suffice, access tokens with all scopes granted "just to be safe," integrations without 429 error handling that silently lose data, and custom apps whose function no one remembers. Each of these errors can be corrected, but all are cheaper to avoid from the design stage.
Should You Code or Use an App?
Our position is simple and sometimes counter-intuitive for an agency that thrives on development: custom development is a last resort, not the first reflex. The decision-making order we apply to each project:
- Does a public app exist and cover the need? Take it. It is maintained, updated with each API evolution, and its monthly cost is almost always lower than the ownership cost of a custom development.
- Is the need simple but specific? A custom app with a few well-chosen scopes, possibly combined with Shopify Flow, covers a lot of cases without a heavy development project.
- Is the need structuring and differentiating? Here, custom development is justified: this is the case for complex ERP connectors, management dashboards, and AI tools connected to your store that we build in the Studio.
The right criterion is not technical, it is economic: custom development is justified when the flow it automates is at the heart of your margin or differentiation. To go further on the ecosystem as a whole, our complete Shopify guide places APIs within the overall view of an e-commerce project. And if you are still unsure about your own case, a thirty-minute conversation with our team is usually enough to decide.