{"openapi":"3.0.3","info":{"title":"BARKODOS API","version":"1.1.0","description":"Barkodlu stok ve GS1 numara yönetimini ERP, CRM, muhasebe, e-ticaret ve depo yazılımlarına bağlamak için REST API.\n\nKimlik: Authorization: Bearer bk_live_… (panel → Entegrasyonlar → API ve webhook). Kapsamlar: okuma, stok-yazma, urun-yazma, muhasebe, baski.\n\nSunucudan sunucuya kullanım içindir; anahtar tarayıcı ya da mobil uygulama koduna konmaz. Dakikada 120 istek (X-RateLimit-* başlıkları).\n\nYazma isteklerinde Idempotency-Key başlığı 24 saat içinde aynı isteğin tekrarını engeller; stok hareketinde referans.haricId kalıcı tekrar korumasıdır.\n\nOlaylar (webhook ve GET /olaylar): stok.degisti, hareket.olusturuldu, stok.asgari_alti, urun.olusturuldu, urun.guncellendi, sayim.tamamlandi. Webhook imzası: HMAC-SHA256(sır, \"<x-barkodos-zaman>.<gövde>\")."},"servers":[{"url":"/api/v1"}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","bearerFormat":"bk_live_…"}},"parameters":{"IdempotencyKey":{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","maxLength":100},"description":"Aynı anahtarla 24 saat içinde gelen tekrar aynı yanıtı döndürür."}},"schemas":{"Hata":{"type":"object","properties":{"hata":{"type":"object","properties":{"kod":{"type":"string"},"mesaj":{"type":"string"},"alanlar":{"type":"object","additionalProperties":{"type":"string"}}}}}},"Harici":{"type":"object","description":"Dış sistem kodları: { \"erp\": \"STK-001\", \"muhasebe\": \"153.01.001\" }. Sistem adı küçük harf, 2–20 karakter.","additionalProperties":{"type":"string","maxLength":60}},"Urun":{"type":"object","properties":{"id":{"type":"string","example":"U-001"},"ad":{"type":"string"},"netMiktar":{"type":"string","nullable":true},"marka":{"type":"string","nullable":true},"kategori":{"type":"string"},"birim":{"type":"string"},"gtin":{"type":"string","nullable":true},"gtin14":{"type":"string","nullable":true},"icKod":{"type":"string","nullable":true},"aktif":{"type":"boolean"},"satisFiyati":{"type":"number","nullable":true},"webAdresi":{"type":"string","nullable":true},"gorselAdresi":{"type":"string","nullable":true},"minMiktar":{"type":"integer"},"harici":{"$ref":"#/components/schemas/Harici"},"stok":{"type":"object","properties":{"toplam":{"type":"integer"},"konumlar":{"type":"array","items":{"type":"object","properties":{"konum":{"type":"string"},"ad":{"type":"string"},"miktar":{"type":"integer"}}}}}},"guncelleme":{"type":"string","format":"date"},"degisim":{"type":"string","format":"date-time"}}},"UrunYaz":{"type":"object","required":["ad","kategori","birim"],"properties":{"ad":{"type":"string","minLength":2,"maxLength":120},"marka":{"type":"string"},"kategori":{"type":"string"},"birim":{"type":"string"},"netMiktar":{"type":"string"},"minMiktar":{"type":"integer"},"birimMaliyet":{"type":"number","description":"Yalnız \"muhasebe\" kapsamıyla."},"satisFiyati":{"type":"number"},"webAdresi":{"type":"string"},"gorselAdresi":{"type":"string"},"barkod":{"type":"string","enum":["ic","yeni","mevcut","rezerve"],"description":"ic: iç kod verilir · yeni: firma önekinden sıradaki GTIN · mevcut: gtin alanındaki numara · rezerve: rezerve numara"},"gtin":{"type":"string"},"harici":{"$ref":"#/components/schemas/Harici"}}},"Referans":{"type":"object","description":"Hareketi ERP/muhasebe belgesine bağlar.","properties":{"belgeTuru":{"type":"string","enum":["fatura","irsaliye","siparis","uretim","iade","sayim","diger"]},"belgeNo":{"type":"string","maxLength":40},"cari":{"type":"string","maxLength":120},"haricId":{"type":"string","maxLength":80,"description":"Kalıcı tekrar koruması: aynı anahtarla aynı haricId ikinci hareketi oluşturmaz."}}},"Hareket":{"type":"object","properties":{"id":{"type":"string","example":"H-00444"},"tarih":{"type":"string","format":"date-time"},"tur":{"type":"string","enum":["giris","cikis","transfer","sayim"]},"miktar":{"type":"integer","description":"Giriş/çıkış/aktarımda pozitif; sayımda fark (eksi olabilir)."},"etki":{"type":"integer","description":"Toplam stoğa etkisi (işaretli)."},"kaynak":{"type":"string","nullable":true},"hedef":{"type":"string","nullable":true},"aciklama":{"type":"string","nullable":true},"kullanici":{"type":"string"},"urun":{"type":"object","properties":{"id":{"type":"string"},"gtin":{"type":"string","nullable":true},"icKod":{"type":"string","nullable":true},"ad":{"type":"string"},"birim":{"type":"string"},"harici":{"$ref":"#/components/schemas/Harici"}}},"referans":{"$ref":"#/components/schemas/Referans","nullable":true}}},"HareketYaz":{"type":"object","required":["kod","tur","miktar"],"properties":{"kod":{"type":"string","description":"GTIN, iç kod ya da U-001"},"tur":{"type":"string","enum":["giris","cikis","sayim","transfer"]},"miktar":{"type":"integer","description":"sayim: konumdaki mutlak miktar"},"konum":{"type":"string","description":"giris/cikis/sayim konumu; transferde kaynak"},"kaynak":{"type":"string"},"hedef":{"type":"string","description":"transfer hedefi"},"aciklama":{"type":"string","maxLength":200},"referans":{"$ref":"#/components/schemas/Referans"}}},"Olay":{"type":"object","properties":{"id":{"type":"string","example":"evt_000000123"},"olay":{"type":"string","enum":["stok.degisti","hareket.olusturuldu","stok.asgari_alti","urun.olusturuldu","urun.guncellendi","sayim.tamamlandi"]},"zaman":{"type":"string","format":"date-time"},"veri":{"type":"object"}}}}},"security":[{"bearer":[]}],"paths":{"/hesap":{"get":{"summary":"Anahtar bilgisi (ad, amaç, kapsamlar)","x-kapsam":"herhangi","security":[{"bearer":[]}],"responses":{"200":{"description":"Anahtar"},"400":{"description":"Geçersiz alan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"401":{"description":"Anahtar yok ya da geçersiz","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"403":{"description":"Anahtarın kapsamı yetmiyor","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"429":{"description":"Dakikalık istek sınırı aşıldı","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}}}}},"/urunler":{"get":{"summary":"Ürün listesi; artımlı eşitleme için degisim_sonra","x-kapsam":"okuma","security":[{"bearer":[]}],"parameters":[{"name":"q","in":"query","required":false,"description":"Ad, marka, GTIN ya da iç kodda arama","schema":{"type":"string"}},{"name":"gtin","in":"query","required":false,"description":"GTIN ile tam eşleşme","schema":{"type":"string"}},{"name":"kategori","in":"query","required":false,"description":"Kategori","schema":{"type":"string"}},{"name":"harici","in":"query","required":false,"description":"Dış sistem kodu: sistem:kod (ör. erp:STK-001)","schema":{"type":"string"}},{"name":"degisim_sonra","in":"query","required":false,"description":"Bu zamandan sonra değişenler (ISO 8601)","schema":{"type":"string","format":"date-time"}},{"name":"durum","in":"query","required":false,"description":"aktif (varsayılan), pasif, tumu","schema":{"type":"string","enum":["aktif","pasif","tumu"]}},{"name":"limit","in":"query","required":false,"description":"En çok 100","schema":{"type":"integer"}},{"name":"sayfa","in":"query","required":false,"description":"1'den başlar","schema":{"type":"integer"}}],"responses":{"200":{"description":"Sayfa","content":{"application/json":{"schema":{"type":"object","properties":{"veri":{"type":"array","items":{"$ref":"#/components/schemas/Urun"}},"sayfa":{"type":"integer"},"limit":{"type":"integer"},"toplam":{"type":"integer"}}}}}},"400":{"description":"Geçersiz alan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"401":{"description":"Anahtar yok ya da geçersiz","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"403":{"description":"Anahtarın kapsamı yetmiyor","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"429":{"description":"Dakikalık istek sınırı aşıldı","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}}}},"post":{"summary":"Ürün aç (ERP ana verisi). harici ile tekrar gelirse yeni ürün açılmaz","x-kapsam":"urun-yazma","security":[{"bearer":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UrunYaz"}}}},"responses":{"200":{"description":"Aynı dış kodla var (tekrar: true)"},"201":{"description":"Açıldı","content":{"application/json":{"schema":{"type":"object","properties":{"veri":{"$ref":"#/components/schemas/Urun"}}}}}},"400":{"description":"Geçersiz alan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"401":{"description":"Anahtar yok ya da geçersiz","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"403":{"description":"Anahtarın kapsamı yetmiyor","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"409":{"description":"GTIN ya da dış kod başka üründe","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"429":{"description":"Dakikalık istek sınırı aşıldı","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}}}}},"/urunler/{kod}":{"get":{"summary":"Barkod, iç kod ya da kimlikle ürün","x-kapsam":"okuma","security":[{"bearer":[]}],"parameters":[{"name":"kod","in":"path","required":true,"description":"GTIN (8–14 hane), iç kod (BK-0001) ya da BARKODOS kimliği (U-001)","schema":{"type":"string"}}],"responses":{"200":{"description":"Ürün","content":{"application/json":{"schema":{"type":"object","properties":{"veri":{"$ref":"#/components/schemas/Urun"}}}}}},"400":{"description":"Geçersiz alan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"401":{"description":"Anahtar yok ya da geçersiz","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"403":{"description":"Anahtarın kapsamı yetmiyor","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"404":{"description":"Ürün yok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"429":{"description":"Dakikalık istek sınırı aşıldı","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}}}},"patch":{"summary":"Ürünü güncelle (GTIN değişmez). harici: { sistem: null } kodu siler","x-kapsam":"urun-yazma","security":[{"bearer":[]}],"parameters":[{"name":"kod","in":"path","required":true,"description":"GTIN (8–14 hane), iç kod (BK-0001) ya da BARKODOS kimliği (U-001)","schema":{"type":"string"}},{"$ref":"#/components/parameters/IdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"ad":{"type":"string"},"marka":{"type":"string"},"kategori":{"type":"string"},"birim":{"type":"string"},"netMiktar":{"type":"string"},"minMiktar":{"type":"integer"},"birimMaliyet":{"type":"number","description":"Yalnız \"muhasebe\" kapsamıyla."},"satisFiyati":{"type":"number"},"webAdresi":{"type":"string"},"gorselAdresi":{"type":"string"},"harici":{"$ref":"#/components/schemas/Harici"}}}}}},"responses":{"200":{"description":"Güncellendi","content":{"application/json":{"schema":{"type":"object","properties":{"veri":{"$ref":"#/components/schemas/Urun"}}}}}},"400":{"description":"Geçersiz alan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"401":{"description":"Anahtar yok ya da geçersiz","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"403":{"description":"Anahtarın kapsamı yetmiyor","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"404":{"description":"Ürün yok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"409":{"description":"Dış kod başka üründe","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"429":{"description":"Dakikalık istek sınırı aşıldı","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}}}}},"/stok":{"get":{"summary":"Ürün başına stok (toplam ya da konum)","x-kapsam":"okuma","security":[{"bearer":[]}],"parameters":[{"name":"konum","in":"query","required":false,"description":"Konum kimliği (ör. K1)","schema":{"type":"string"}}],"responses":{"200":{"description":"Stok listesi"},"400":{"description":"Geçersiz alan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"401":{"description":"Anahtar yok ya da geçersiz","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"403":{"description":"Anahtarın kapsamı yetmiyor","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"429":{"description":"Dakikalık istek sınırı aşıldı","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}}}}},"/konumlar":{"get":{"summary":"Konumlar (depo, raf, mağaza, araç, şantiye…)","x-kapsam":"okuma","security":[{"bearer":[]}],"responses":{"200":{"description":"Konumlar"},"400":{"description":"Geçersiz alan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"401":{"description":"Anahtar yok ya da geçersiz","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"403":{"description":"Anahtarın kapsamı yetmiyor","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"429":{"description":"Dakikalık istek sınırı aşıldı","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}}}}},"/stok/hareketler":{"post":{"summary":"Stok hareketi: giriş, çıkış, sayım ya da aktarım; belge referansıyla","x-kapsam":"stok-yazma","security":[{"bearer":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HareketYaz"}}}},"responses":{"200":{"description":"Aynı haricId ile daha önce kaydedilmiş (tekrar: true)"},"201":{"description":"Kaydedildi","content":{"application/json":{"schema":{"type":"object","properties":{"veri":{"type":"object","properties":{"hareket":{"$ref":"#/components/schemas/Hareket"},"urun":{"$ref":"#/components/schemas/Urun"}}}}}}}},"400":{"description":"Geçersiz alan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"401":{"description":"Anahtar yok ya da geçersiz","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"403":{"description":"Anahtarın kapsamı yetmiyor","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"404":{"description":"Ürün yok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"409":{"description":"Yetersiz stok ya da pasif ürün","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"429":{"description":"Dakikalık istek sınırı aşıldı","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}}}}},"/hareketler":{"get":{"summary":"Hareket geçmişi; imleçle (sonra) artımlı çekim, eskiden yeniye","x-kapsam":"okuma","security":[{"bearer":[]}],"parameters":[{"name":"sonra","in":"query","required":false,"description":"Bu hareketten sonrakiler (ör. H-00444)","schema":{"type":"string"}},{"name":"baslangic","in":"query","required":false,"description":"Gün (YYYY-AA-GG, Türkiye saati)","schema":{"type":"string"}},{"name":"bitis","in":"query","required":false,"description":"Gün (dahil)","schema":{"type":"string"}},{"name":"tur","in":"query","required":false,"description":"giris, cikis, transfer, sayim","schema":{"type":"string"}},{"name":"urun","in":"query","required":false,"description":"Ürün kodu","schema":{"type":"string"}},{"name":"konum","in":"query","required":false,"description":"Konum kimliği","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"En çok 500","schema":{"type":"integer"}}],"responses":{"200":{"description":"Sayfa; sonraki doluysa devamı var","content":{"application/json":{"schema":{"type":"object","properties":{"veri":{"type":"array","items":{"$ref":"#/components/schemas/Hareket"}},"toplam":{"type":"integer"},"sonraki":{"type":"string","nullable":true}}}}}},"400":{"description":"Geçersiz alan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"401":{"description":"Anahtar yok ya da geçersiz","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"403":{"description":"Anahtarın kapsamı yetmiyor","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"429":{"description":"Dakikalık istek sınırı aşıldı","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}}}}},"/hareketler/{id}":{"get":{"summary":"Tek hareket","x-kapsam":"okuma","security":[{"bearer":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Hareket kimliği (H-00444)","schema":{"type":"string"}}],"responses":{"200":{"description":"Hareket"},"400":{"description":"Geçersiz alan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"401":{"description":"Anahtar yok ya da geçersiz","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"403":{"description":"Anahtarın kapsamı yetmiyor","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"404":{"description":"Hareket yok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"429":{"description":"Dakikalık istek sınırı aşıldı","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}}}}},"/olaylar":{"get":{"summary":"Olay kuyruğu: webhook alamayan sistemler için çekme (son 1000 olay)","x-kapsam":"okuma","security":[{"bearer":[]}],"parameters":[{"name":"sonra","in":"query","required":false,"description":"Bu olaydan sonrakiler (ör. evt_000000123)","schema":{"type":"string"}},{"name":"olay","in":"query","required":false,"description":"Virgülle: stok.degisti, hareket.olusturuldu, stok.asgari_alti, urun.olusturuldu, urun.guncellendi, sayim.tamamlandi","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"En çok 500","schema":{"type":"integer"}}],"responses":{"200":{"description":"eksik: true ise imleç saklama süresinin dışında kalmış, tam eşitleme yapın","content":{"application/json":{"schema":{"type":"object","properties":{"veri":{"type":"array","items":{"$ref":"#/components/schemas/Olay"}},"sonraki":{"type":"string","nullable":true},"devami":{"type":"boolean"},"eksik":{"type":"boolean"}}}}}},"400":{"description":"Geçersiz alan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"401":{"description":"Anahtar yok ya da geçersiz","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"403":{"description":"Anahtarın kapsamı yetmiyor","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"429":{"description":"Dakikalık istek sınırı aşıldı","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}}}}},"/muhasebe/stok-degeri":{"get":{"summary":"Stok değeri: miktar × ürün kartındaki birim maliyet (FIFO ya da ağırlıklı ortalama hesaplanmaz)","x-kapsam":"muhasebe","security":[{"bearer":[]}],"parameters":[{"name":"konum","in":"query","required":false,"description":"Konum kimliği","schema":{"type":"string"}},{"name":"format","in":"query","required":false,"description":"csv: \";\" ayraçlı, ondalık virgüllü, UTF-8 BOM","schema":{"type":"string","enum":["json","csv"]}}],"responses":{"200":{"description":"JSON ya da CSV"},"400":{"description":"Geçersiz alan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"401":{"description":"Anahtar yok ya da geçersiz","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"403":{"description":"Anahtarın kapsamı yetmiyor","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"429":{"description":"Dakikalık istek sınırı aşıldı","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}}}}},"/muhasebe/hareketler":{"get":{"summary":"Maliyetli hareket dökümü (tutar = stok etkisi × birim maliyet)","x-kapsam":"muhasebe","security":[{"bearer":[]}],"parameters":[{"name":"baslangic","in":"query","required":false,"description":"Gün (YYYY-AA-GG); baslangic ya da sonra zorunlu","schema":{"type":"string"}},{"name":"bitis","in":"query","required":false,"description":"Gün (dahil)","schema":{"type":"string"}},{"name":"sonra","in":"query","required":false,"description":"Hareket imleci","schema":{"type":"string"}},{"name":"tur","in":"query","required":false,"description":"Hareket türü","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"En çok 5000","schema":{"type":"integer"}},{"name":"format","in":"query","required":false,"description":"json ya da csv","schema":{"type":"string","enum":["json","csv"]}}],"responses":{"200":{"description":"birimMaliyet hareket anındaki kart maliyeti (maliyetKaynagi: hareket) ya da eski kayıtlarda güncel kart maliyeti (kart)"},"400":{"description":"Geçersiz alan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"401":{"description":"Anahtar yok ya da geçersiz","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"403":{"description":"Anahtarın kapsamı yetmiyor","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"429":{"description":"Dakikalık istek sınırı aşıldı","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}}}}},"/barkod/{kod}/dogrula":{"get":{"summary":"Barkod doğrulama: kontrol basamağı, önek, kayıtlı mı","x-kapsam":"okuma","security":[{"bearer":[]}],"parameters":[{"name":"kod","in":"path","required":true,"description":"Barkod numarası","schema":{"type":"string"}}],"responses":{"200":{"description":"Doğrulama"},"400":{"description":"Geçersiz alan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"401":{"description":"Anahtar yok ya da geçersiz","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"403":{"description":"Anahtarın kapsamı yetmiyor","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"429":{"description":"Dakikalık istek sınırı aşıldı","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}}}}},"/barkod/{kod}.svg":{"get":{"summary":"Barkod görseli (SVG)","x-kapsam":"okuma","security":[{"bearer":[]}],"parameters":[{"name":"kod","in":"path","required":true,"description":"Numara ya da iç kod","schema":{"type":"string"}},{"name":"tur","in":"query","required":false,"description":"ean13, itf14, code128, qr","schema":{"type":"string","enum":["ean13","itf14","code128","qr"]}},{"name":"olcek","in":"query","required":false,"description":"1–10","schema":{"type":"integer"}}],"responses":{"200":{"description":"SVG","content":{"image/svg+xml":{"schema":{"type":"string"}}}},"400":{"description":"Geçersiz alan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"401":{"description":"Anahtar yok ya da geçersiz","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"403":{"description":"Anahtarın kapsamı yetmiyor","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}},"429":{"description":"Dakikalık istek sınırı aşıldı","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hata"}}}}}}}}}