Enstrüman logoları
BIST hisseleri, Türk fonları ve ABD hisseleri için PNG logolar — tek uç nokta, düzgün HTTP önbellekleme. Eksik logolar dürüst 404'tür; yedek görsel size aittir.
Uç noktalar
| Uç nokta | Kapsam | Açıklama |
|---|---|---|
| GET/v1/logos/{id} | assets:logos | Enstrümanın logosu, image/png olarak |
Kimlikler nasıl çözülür
Herhangi bir kanonik enstrüman kimliği geçin. fund: kimlikleri fon KURUCUSUNUN logosuna çözülür (fonlar kurucularına çoktan-bire eşlenir — Portfoy uygulamasının kullandığı kuralın aynısı). Katalog satırları logo_url alanını yalnızca varlık gerçekten mevcutsa taşır; keşif bu sayede pasiftir: logo_url değeri null ise istek atmayın.
<img> etiketine gömme — ?api_key= istisnası
Başlık tabanlı kimlik doğrulama resim etiketlerini bozar; bu yüzden bu rota — yalnızca bu rota — anahtarınızı ?api_key= olarak da kabul eder. Kapsam: assets:logos.
<!-- the one route where ?api_key= works (img tags can't send headers) -->
<img
src="https://api.theportfoy.com/portgate/v1/logos/bist:THYAO?api_key=pg_live_xxxx"
alt="THYAO"
width="40" height="40"
onerror="this.style.display='none' /* 404 = no logo: show your own fallback */"
/>Önbellekleme: ETag + 304
Yanıtlar Cache-Control: public, max-age=86400 ve bir ETag gönderir; If-None-Match ile yapılan koşullu istekler bedava bir 304 alır. Tarayıcılar bunu kendiliğinden halleder — bir proxy, önbellek başlıklarını iletmelidir.
curl -i -H "X-API-Key: $PORTGATE_KEY" \
-H 'If-None-Match: "6d2c…"' \
"https://api.theportfoy.com/portgate/v1/logos/bist:THYAO"
HTTP/1.1 304 Not Modified
Cache-Control: public, max-age=86400
ETag: "6d2c…"Eksikler dürüst 404'tür
Eksik bir logo 404 problem yanıtı döndürür — asla bir markaymış gibi davranan üretilmiş bir yer tutucu değil. Kendi yedeğinizi çizin (renkli bir kutuda baş harfler olağan kalıptır). Kapsam (2026-08-18 senkronu itibarıyla): BIST 616/649 · fon kurucuları 82/90 · ABD 1.155/1.587. Düzenli aralıklarla yeniden senkronize ediyoruz; eşleşmeyen semboller gerçek bir logo var olana dek 404 kalır.
