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
401döner. Başarısız denemeler hesap kilidine sayılır (5 hatada 5 dakika kilit). - Belirteç,
Jwt:ExpireMinutesayarı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
sunucuZamanideğerini saklayın ve bir sonraki çağrıdadegisenSonraolarak 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:Keydeğerini kendi güçlü anahtarınızla değiştirin. Bkz. Yönetim ve bakım.