{
    "slug": "locale-catalog",
    "name": "Locale Catalog",
    "summary": "Stream Ember'in referans dil listesi — 14 dil, kodlar, yazı yönü, tarih biçimleri, bayraklar ve işletim sistemi dilinden otomatik seçim.",
    "description": "Bütün Stream Ember API'leri ve uygulamaları dil olarak bu listedeki 14 kodu kullanır. Varsayılan dil tr. resolve parametresi, Launcher gibi istemcilerin işletim sistemi ya da tarayıcı dilini (uk-UA, zh-Hant-TW, ms…) desteklenen bir dile çevirmesini sağlar.",
    "version": "2.0.0",
    "status": "stable",
    "updated": "2026-10-07",
    "methods": [
        "GET"
    ],
    "format": "json",
    "auth": "none",
    "tags": [
        "i18n",
        "languages",
        "locale",
        "flags"
    ],
    "consumers": [
        "Launcher",
        "Falcon",
        "EventFabric",
        "platform-events",
        "google-language-catalog"
    ],
    "endpoint": "https://api.streamember.com/locale-catalog/",
    "docs_html": "https://api.streamember.com/?docs=locale-catalog",
    "docs_markdown": "https://api.streamember.com/locale-catalog/API.md",
    "manifest_json": "https://api.streamember.com/?docs=locale-catalog&format=json",
    "pages": [],
    "examples": [
        {
            "title": "Dil listesi",
            "url": "https://api.streamember.com/locale-catalog/"
        },
        {
            "title": "Tek dil",
            "url": "https://api.streamember.com/locale-catalog/?code=zh-Hant"
        },
        {
            "title": "İşletim sistemi dilini çöz (Ukraynaca → Rusça)",
            "url": "https://api.streamember.com/locale-catalog/?resolve=uk-UA"
        },
        {
            "title": "Markdown tablo",
            "url": "https://api.streamember.com/locale-catalog/?format=md"
        }
    ],
    "body_markdown": "## Genel bakış\n\nBu API, ekosistemin **tek dil standardını** tanımlar. Kodlar iki harfli ISO 639-1 kodlarıdır; Çince yazıya göre ikiye ayrılır (`zh-Hans`, `zh-Hant`). Diğer API'ler dili her zaman `?lang=` query string parametresiyle alır ve bu kodlardan birine çözer.\n\n| Kod | Dil | Varsayılan locale | `covers` |\n|---|---|---|---|\n| `tr` | Türkçe | `tr-TR` | `az` |\n| `en` | English | `en-US` | — |\n| `de` | Deutsch | `de-DE` | — |\n| `fr` | Français | `fr-FR` | — |\n| `es` | Español | `es-ES` | `ca`, `gl` |\n| `pt` | Português (Brasil) | `pt-BR` | — |\n| `ru` | Русский | `ru-RU` | `uk`, `be`, `kk`, `ky`, `uz`, `tg` |\n| `ar` | العربية (sağdan sola) | `ar-SA` | — |\n| `zh-Hans` | 简体中文 | `zh-CN` | `zh`, `zh-CN`, `zh-SG` |\n| `zh-Hant` | 繁體中文 | `zh-TW` | `zh-TW`, `zh-HK`, `zh-MO` |\n| `ja` | 日本語 | `ja-JP` | — |\n| `ko` | 한국어 | `ko-KR` | — |\n| `vi` | Tiếng Việt | `vi-VN` | — |\n| `id` | Bahasa Indonesia | `id-ID` | `ms` |\n\n`covers`, bu dili seçebilecek diğer işletim sistemi dillerini listeler. Sistem bir dili başka dile **çevirmez**; `covers` yalnızca otomatik seçim içindir.\n\n## Hızlı başlangıç\n\n```text\nGET https://api.streamember.com/locale-catalog/\nGET https://api.streamember.com/locale-catalog/?resolve=zh-Hant-TW\n```\n\n```json\n{\n  \"requested\": \"uk-UA\",\n  \"matched_by\": \"covers_language\",\n  \"fallback\": false,\n  \"language\": { \"code\": \"ru\", \"locale\": \"ru-RU\", \"nativeName\": \"Русский\", \"…\": \"…\" }\n}\n```\n\n## Parametreler\n\n| Parametre | Tür | Varsayılan | Açıklama |\n|---|---|---|---|\n| `code` | metin | — | Tek dil kaydı (tam kod, büyük/küçük harf duyarsız). Bulunamazsa 404. |\n| `resolve` | metin | — | Herhangi bir dil etiketini 14 koddan birine çözer. |\n| `format` | metin | `json` | `json` ya da `md` |\n\n`resolve` sırası: desteklenen kodla başlıyor (`zh-Hant-TW` → `zh-Hant`, `matched_by: prefix`) → tam kod (`code`) → `covers` içinde tam (`zh-TW` → `zh-Hant`, `covers`) → ilk alt etiket (`tr-TR` → `tr`, `language`) → ilk alt etiket `covers` içinde (`uk-UA` → `ru`, `covers_language`) → `tr` (`default`, `fallback: true`). Launcher, `fallback: true` döndüğünde arayüz için `en` seçmelidir.\n\n## Yanıt biçimi\n\n| Alan | Açıklama |\n|---|---|\n| `code` | Ekosistem dil kodu |\n| `locale` | Varsayılan bölgeli kod (`pt-BR`) |\n| `languageCode`, `iso6393` | ISO 639-1 / 639-3 |\n| `name`, `nativeName` | İngilizce ve kendi dilindeki ad |\n| `countryCode`, `countryName`, `countryNativeName` | Varsayılan ülke |\n| `direction` | `ltr` ya da `rtl` |\n| `dateFormat`, `timeFormat`, `timezone` | Varsayılan biçimler |\n| `covers` | Otomatik seçim için yan diller |\n| `default` | Varsayılan dil mi (`tr`) |\n| `order` | Listeleme sırası |\n| `flag`, `flags` | 1x1 ve 4x3 SVG bayrak adresleri |\n\n## Hatalar\n\n| HTTP | `error` | Ne zaman |\n|---|---|---|\n| 404 | `not_found` | `code` desteklenmiyor |\n| 405 | `method_not_allowed` | GET dışı istek |\n| 500 | `internal_error` | `data/languages.json` okunamadı |\n\n## Değişiklik geçmişi\n\n- **2.0.0** — 31 dilden 14 dile inildi; `id` alanı `code` oldu, `zh` → `zh-Hans`, `zh-TW` → `zh-Hant`. `covers`, `resolve` ve `index.php` eklendi; statik `index.json` yerine `data/languages.json`.\n"
}