SEEGEA
developers

Shopify product API: GraphQL Admin, quotas and best practices

The Shopify Admin GraphQL API is the correct way to interact with products in 2026. REST product endpoints are deprecated. Here is what every developer and freelance integrator needs to know.

Book a demoGoogle Meet · 30 min · no commitment
Created in FranceOne-click AI copyFull rollback

Building a Shopify integration in 2026 means GraphQL Admin API — no exceptions. The product and variant REST endpoints are deprecated, new API versions require GraphQL, and the GraphQL API surface is richer and better documented than REST ever was.

Key mutations for product operations

productUpdate (base product fields)

Updates title, body HTML, vendor, product type, tags, status, SEO fields. Does not affect variants. Accepts a metafields array for custom attributes. Safe on existing products.

productVariantsBulkUpdate (variant fields)

Updates price, compare-at price, barcode, weight, inventory policy for multiple variants in a single call. More efficient than calling productVariantUpdate per variant.

metafieldsSet (custom attributes)

Sets one or multiple metafields on any Shopify object. The correct approach for Google Product Category, custom attributes, brand data. Accepts type-safe values (string, number, json, etc.).

Shopify API stack

ShopifyPrestaShopWebhookPostgreSQL
OperationCorrect mutationCommon mistake
Update product title + metaproductUpdateproductSet (destructive)
Update variant priceproductVariantsBulkUpdateproductVariantUpdate (serial calls)
Set custom attributesmetafieldsSetproductUpdate.metafields (only for simple cases)
Update inventoryinventorySetOnHandQuantitiesinventoryAdjustQuantities (relative)
Add product to collectioncollectionAddProductsSmart collection rules (async)
Upload product imageproductCreateMediafileCreate (different object type)
Never use productSet on an existing product. This mutation replaces the entire product including variants — it can delete variant data that is not included in the input. Use productUpdate for existing products.

Rate limit best practices

For bulk product operations:

  1. Use bulkOperationRunQuery for read operations on large catalogs (async, no rate limit pressure)
  2. For writes, batch mutations: productVariantsBulkUpdate accepts up to 100 variants per call
  3. Always read extensions.cost.throttleStatus in responses and back off when currentlyAvailable is below 20
  4. On Shopify Plus, request a rate limit increase via the Partner Dashboard if your integration needs it

Seegea handles all Shopify GraphQL API calls on your behalf — rate limits, retries, pagination, and bulk operations are managed transparently. Created in France between Annecy and Chantilly.

See Seegea's Shopify API integration

30-min Google Meet · live catalog import via GraphQL Admin

See Seegea's Shopify API integration
Created in France (Annecy – Chantilly) · Email & Google Meet support

FAQ

Yes. Shopify deprecated key REST product endpoints (Products, Variants) in API version 2024-10. New integrations must use GraphQL Admin API. Existing integrations have a migration window but should transition now.

Give your catalog the attention it deserves.

Google Meet · 30 min · no commitment

Book a demo