Temel farklar
| Konu | GraphQL Admin API | REST Admin API |
|---|---|---|
| Adres | Tek uç nokta: /admin/api/SURUM/graphql.json | Kaynak başına: /admin/api/SURUM/KAYNAK.json |
| Durum | Önerilen | 1 Ekim 2024’ten beri legacy |
| İstek sınırı | Sorgu maliyetine göre puan | İstek sayısına göre kova |
| Sayfalama | İmleç; sayfa başına en fazla 250 öğe | Link başlığında page_info; en fazla 250 |
| Ürün başına varyant | Varsayılan sınır 2.048 | Eski modelde 100 |
| Yeni özellikler | Bazıları yalnız burada | Belgeye göre bazı yeni özellikler yok |
İki API de aynı erişim anahtarını ve X-Shopify-Access-Token başlığını kullanır. Geçiş için yeni bir anahtar gerekmez.
Kullanımdan kalkan REST uç noktaları
Senkron entegrasyonları için en önemli değişiklikler ürün tarafındadır:
- REST’te ürünleri listeleme, oluşturma, güncelleme ve silme 2024-04 sürümünde kullanımdan kalktı.
- Varyantları listeleme, oluşturma, güncelleme ve silme de aynı sürümde kullanımdan kalktı.
- Uygulamalar artık varyantın inventory_quantity alanıyla stok yazamaz; stok envanter seviyesi kaynağıyla yazılır.
- Varyantın inventory_quantity alanı salt okunurdur ve tüm lokasyonların toplamını gösterir.
Belgeye göre kullanımdan kalkmış bir API çalışmaya devam edebilir ama desteklenmez ve her an durabilir. Desteklenen alternatif duyurulduğunda en kısa sürede geçilmesi önerilir.
Stok senkronu için GraphQL karşılıkları
| İş | REST (legacy) | GraphQL |
|---|---|---|
| Ürün ve varyant okuma | GET /products.json | products sorgusu |
| Ürün oluşturma | POST /products.json | productCreate ya da productSet |
| Varyant fiyatı | PUT /variants/ID.json | productVariantsBulkUpdate |
| Stok yazma | POST /inventory_levels/set.json | inventorySetQuantities |
| Stok artır ya da azalt | POST /inventory_levels/adjust.json | inventoryAdjustQuantities |
| Lokasyonlar | GET /locations.json | locations sorgusu |
| Siparişler | GET /orders.json | orders sorgusu |
REST başvurusunda her uç noktanın yanında GraphQL karşılığı da yazılıdır. Geçiş planlarken bu eşleşmeleri kullanabilirsiniz.
Geçişte dikkat edilecekler
- Kimlikler: GraphQL kimlikleri gid://shopify/ProductVariant/123 biçimindedir; REST’teki sayı bu kimliğin son parçasıdır.
- Sınırlar: GraphQL’de istek sayısı değil sorgu maliyeti sayılır. Tek sorgu 1.000 puanı geçemez.
- Stok yazma: inventorySetQuantities 2026-04 sürümünden itibaren karşılaştırma değeri ve tekrar koruma anahtarı ister.
- Büyük veri: Binlerce ürünü okumak için toplu işlemler (bulk operations) sorgu sınırlarına takılmaz.
Ayrıntılar stok güncelleme ve istek sınırları sayfalarında.
Sık sorulanlar
Shopify REST API kapatıldı mı?
Hayır, çalışmaya devam ediyor. Ama 1 Ekim 2024’ten beri legacy kabul ediliyor ve yeni herkese açık uygulamalar 1 Nisan 2025’ten beri yalnız GraphQL ile yazılabiliyor.
REST’te hangi uç noktalar kullanımdan kalktı?
Ürün ve varyantları listeleme, oluşturma, güncelleme ve silme 2024-04 sürümünde kullanımdan kalktı. Varyantın inventory_quantity alanıyla stok yazmak da artık mümkün değil.
GraphQL için yeni bir anahtar gerekir mi?
Hayır. Aynı erişim anahtarı ve X-Shopify-Access-Token başlığı iki API’de de geçerlidir.
Stoğu GraphQL ile hangi işlem yazar?
Kesin değer için inventorySetQuantities, artış ya da azalış için inventoryAdjustQuantities.
Eski bir REST entegrasyonunu hemen değiştirmem gerekir mi?
Çalışıyorsa hemen durmaz. Ama kullanımdan kalkmış uç noktalar desteklenmediği ve her an durabileceği için, ürün ve varyant yazan kısımları öncelikle GraphQL’e taşımanız önerilir.
Kaynaklar
İlgili Shopify API konuları
Son güncelleme: 27.10.2026 · Shopify API rehberinin tamamı


