API ve entegrasyon

JWT ile oturum açma, entegrasyon uç noktalarıyla ürün, kategori ve stok verisini harici sistemlere aktarma.

Depo Yönetim, diğer yazılımların (ERP, e-ticaret, mobil uygulama vb.) verisine erişebileceği bir REST API sunar. Kimlik doğrulama JWT (Bearer belirteç) iledir.

Oturum açma

İki giriş uç noktası vardır:

Uç nokta Kime Yanıt
POST /api/auth/login Tüm aktif kullanıcılar Erişim belirteci, tür (Bearer), bitiş zamanı ve kullanıcı bilgisi
POST /api/auth/giris Yalnızca Developer rolü (entegrasyon girişi) token ve bitisZamani

İstek gövdesi JSON'dur. Kullanıcı adı yerine e-posta da kabul edilir:

{ "kullaniciAdi": "kullanici@ornek.com", "sifre": "••••••••" }
  • Hatalı bilgi veya pasif hesapta 401 döner. Başarısız denemeler hesap kilidine sayılır (5 hatada 5 dakika kilit).
  • Belirteç, Jwt:ExpireMinutes ayarındaki süre kadar geçerlidir (örnek yapılandırmada 120 dakika). Süresi dolunca yeniden giriş yapın.
  • Sonraki isteklerde belirteci başlıkta gönderin: Authorization: Bearer <belirteç>.

Entegrasyon uç noktaları (salt okunur)

Harici bir sisteme ürün ve stok verisi aktarmak için Developer rolündeki bir hesapla api/entegrasyon uç noktalarını kullanın.

Uç nokta Açıklama
GET /api/entegrasyon/kategoriler Kategori listesi (id, ad, açıklama, sıralama, aktiflik).
GET /api/entegrasyon/urunler Ürünler, sayfalı. sayfa (varsayılan 1), sayfaBoyutu (varsayılan 200, en çok 500) ve degisenSonra (yalnızca bu tarihten sonra değişenler) parametreleri.
GET /api/entegrasyon/stoklar Stok kodu ve güncel stok, sayfalı. sayfa, sayfaBoyutu (varsayılan 1000, en çok 2000).
GET /api/entegrasyon/stok-sorgu?stokKodu=A&stokKodu=B Belirli stok kodlarının güncel stoku. En çok 50 kod.
GET /api/entegrasyon/resimler/{id} Ürün resim dosyası.

Sayfalı yanıtlar sayfa, sayfaBoyutu, toplamKayit, sunucuZamani ve kayitlar alanlarını içerir.

İpucu (artımlı eşitleme): Ürünleri düzenli eşitliyorsanız önceki yanıttaki sunucuZamani değerini saklayın ve bir sonraki çağrıda degisenSonra olarak verin; böylece yalnızca değişen ürünleri çekersiniz.

Örnek

# 1) Belirteç al
curl -X POST https://sunucu-adresi/api/auth/giris \
  -H "Content-Type: application/json" \
  -d '{"kullaniciAdi":"entegrasyon@ornek.com","sifre":"..."}'

# 2) Stokları çek
curl "https://sunucu-adresi/api/entegrasyon/stoklar?sayfa=1&sayfaBoyutu=1000" \
  -H "Authorization: Bearer <belirteç>"

Diğer API uç noktaları

Uygulamanın kendi mobil ve web arayüzünün de kullandığı uç noktalar:

Alan Uç noktalar
Stok işlemi POST /api/stok/giris, POST /api/stok/cikis
Stok sorgu GET /api/stok/urunler, GET /api/stok/urunler/{id}
Ürün GET /api/urun/liste, GET /api/urun/barkod/{barkod}, GET /api/urun/barkod-kontrol/{barkod}
Barkod görseli GET /api/urun/barkod-img/{barkod}, GET /api/urun/barkodlar-zip
Döviz kuru GET /api/kur/guncel, GET /api/kur/cevir
Raporlar GET /api/rapor/... (stok durumu, hareketler, varlık raporları, müşteri sipariş, ürün performans; Excel ve PDF)

Not: Bu uç noktaların istek gövdeleri ve yetkileri arayüzün ihtiyaçlarına göre tasarlanmıştır. Harici entegrasyon için önerilen yol, yukarıdaki entegrasyon uç noktalarıdır.

Güvenlik

  • API'yi yalnızca HTTPS üzerinden yayınlayın.
  • Entegrasyon için ayrı bir Developer hesabı açın ve şifresini güvenli saklayın.
  • Jwt:Key değerini kendi güçlü anahtarınızla değiştirin. Bkz. Yönetim ve bakım.
WhatsApp ile yazın