ikas API · Genel

ikas API access token alma: client_credentials ve süre

ikas'ta özel uygulama erişim token'ını client_credentials akışıyla alır. client_id ve client_secret, https://api.myikas.com/api/admin/oauth/token adresine form verisi olarak gönderilir. Yanıttaki access_token her GraphQL isteğinde Authorization: Bearer başlığıyla kullanılır. ikas örneğinde expires_in 14400 saniye, yani 4 saattir. Süre dolunca aynı istekle yeni token alınır.

POSThttps://api.myikas.com/api/admin/oauth/tokengrant_type=client_credentials; gövde application/x-www-form-urlencoded

İstek alanları

AlanDeğer
grant_typeclient_credentials
client_idÖzel uygulamanın client_id değeri (ör. CLIENT_ID)
client_secretÖzel uygulamanın client_secret değeri (ör. CLIENT_SECRET)

İstek application/x-www-form-urlencoded içerik türüyle gönderilir. ikas'a göre token adresi ile GraphQL adresi farklıdır; token'ı GraphQL adresinden istemeye çalışmayın (ikas: Authentication).

Yanıt ve kullanım

Yanıt alanıAnlamı
access_tokenİsteklerde kullanılacak token
token_typeBearer
expires_inGeçerlilik süresi, saniye; ikas örneğinde 14400

Token'ı aldıktan sonra her istek https://api.myikas.com/api/v2/admin/graphql adresine POST ile, Content-Type: application/json ve Authorization: Bearer ACCESS_TOKEN başlıklarıyla gider. Eski entegrasyonlar aynı token'ı v1 adresinde kullanır. İlk deneme için ikas'ın önerdiği küçük sorgu: me { id }.

Token'ı ve token yanıtını kayıt dosyalarına yazmayın. Bearer token'ı ele geçiren biri, süre bitene kadar uygulamanın izinleriyle mağazanızda işlem yapabilir.

Yenileme

Özel uygulamada ayrı bir yenileme token'ı yoktur. Süre dolduğunda aynı client_credentials isteğini tekrar atarsınız. Pratik bir düzen şöyledir:

  • Token'ı ve bitiş zamanını bellekte tutun; her istekte yeni token almayın.
  • Süre dolmadan birkaç dakika önce yenileyin; uzun toplu işler yarıda kalmaz.
  • Bir istek 401 dönerse token'ı bir kez yenileyip isteği tekrarlayın.
  • expires_in değerini sabit varsaymayın; her yanıttan okuyun.
  • Aynı mağaza için birden fazla sunucu çalışıyorsa token'ı ortak bir önbellekte tutun; her sunucunun ayrı token istemesi gereksiz istek üretir.

ikas App Store'daki admin uygulamaları ise OAuth2 Authorization Code akışını kullanır ve süresi dolan token'ı grant_type=refresh_token, refresh_token, client_id ve client_secret alanlarıyla yeniler.

Sık hatalar

BelirtiOlası nedenÇözüm
Token isteği 400 ya da 401client_id, secret ya da grant_type hatalıÜç alanı ve içerik türünü kontrol edin
GraphQL isteği 401Token süresi doldu ya da Bearer öneki eksikYeni token alın, başlığı Bearer ile yazın
Token alındı, sorgu yetki hatası veriyorUygulamada gereken izin yokİzni panelde ekleyin
Çok sayıda token isteği sonrası 429Her istekte yeniden token alınıyorToken'ı süresi boyunca saklayın

Sık sorulanlar

ikas access token ne kadar geçerli?

ikas'ın örnek yanıtında expires_in 14400 saniyedir, yani 4 saat. Süreyi her token yanıtındaki expires_in alanından okuyun.

ikas token adresi nedir?

Belgelerde https://api.myikas.com/api/admin/oauth/token olarak geçer. GraphQL istekleri ise ayrı adrese, api/v2/admin/graphql yoluna gider.

Özel uygulamada refresh token var mı?

Hayır. Özel uygulama süre dolunca client_credentials isteğini tekrarlar. Refresh token, OAuth2 kullanan admin uygulamalarına özgüdür.

Token'ı her istekte yeniden almalı mıyım?

Hayır. Token süresi boyunca geçerlidir. Her istekte token almak gereksiz istek üretir ve hız sınırına yaklaştırır.

Kaynaklar

İlgili ikas API konuları

Son güncelleme: 27.10.2026 · ikas API rehberinin tamamı

ikas entegrasyonunu kod yazmadan kurun

Saystok bu API'lerle stok, sipariş ve fiyatı sizin yerinize eşitler. 30 gün ücretsiz.