Skip to main content
Valorant’s localization system stores all in-game text as raw StringTable data — a mapping of internal string keys to the display text shown to players in a given language. The /v1/locres endpoints expose these tables so you can build fully localized tools without making repeated per-request translation calls. You fetch the string table once for your target locale, store it locally, and resolve any key whenever you need it.

List available locales

Use this endpoint to retrieve the complete list of locale codes the API supports. You can then pass any of these codes to the /v1/locres/{locale} endpoint to fetch the corresponding string table.

Endpoint

GET https://astra.teamfortuna.xyz/v1/locres
curl -X GET "https://astra.teamfortuna.xyz/v1/locres" \
  -H "User-Agent: MyApp/1.0 (+https://example.com)"

Response

{
  "status": 200,
  "data": [
    {
      "locale": "ar-AE",
      "tables": 806,
      "entries": 25893
    },
    {
      "locale": "de-DE",
      "tables": 789,
      "entries": 24308
    },
    {
      "locale": "en-US",
      "tables": 810,
      "entries": 26941
    },
    {
      "locale": "es-ES",
      "tables": 801,
      "entries": 24777
    },
    {
      "locale": "es-MX",
      "tables": 803,
      "entries": 25075
    },
    {
      "locale": "fr-FR",
      "tables": 790,
      "entries": 24618
    },
    {
      "locale": "id-ID",
      "tables": 704,
      "entries": 17319
    },
    {
      "locale": "it-IT",
      "tables": 802,
      "entries": 25001
    },
    {
      "locale": "ja-JP",
      "tables": 796,
      "entries": 25130
    },
    {
      "locale": "ko-KR",
      "tables": 805,
      "entries": 25937
    },
    {
      "locale": "pl-PL",
      "tables": 804,
      "entries": 25261
    },
    {
      "locale": "pt-BR",
      "tables": 802,
      "entries": 25116
    },
    {
      "locale": "ru-RU",
      "tables": 804,
      "entries": 25715
    },
    {
      "locale": "th-TH",
      "tables": 721,
      "entries": 20715
    },
    {
      "locale": "tr-TR",
      "tables": 792,
      "entries": 24950
    },
    {
      "locale": "vi-VN",
      "tables": 787,
      "entries": 24831
    },
    {
      "locale": "zh-CN",
      "tables": 798,
      "entries": 26161
    },
    {
      "locale": "zh-TW",
      "tables": 795,
      "entries": 26141
    }
  ]
}

Get string table for a locale

Once you know which locale you need, pass its code as a path parameter to retrieve the full StringTable for that language. The response contains every localized string that Valorant ships for that locale, organized by table namespace.

Endpoint

GET https://astra.teamfortuna.xyz/v1/locres/{locale}
locale
string
required
The locale code to retrieve the string table for. Must be one of the supported codes returned by GET /v1/locres: ar-AE, de-DE, en-US, es-ES, es-MX, fr-FR, id-ID, it-IT, ja-JP, ko-KR, pl-PL, pt-BR, ru-RU, th-TH, tr-TR, vi-VN, zh-CN, or zh-TW.
curl -X GET "https://astra.teamfortuna.xyz/v1/locres/en-US" \
  -H "User-Agent: MyApp/1.0 (+https://example.com)"

Response (abbreviated)

{
  "status": 200,
  "data": {
    "MMRegion": {
      "DevRegion": "開発"
    },
    "NetworkErrors": {
      "KickedPlayerFromParty": "パーティーからキックされました",
      "GenericBeaconConnectionFailed": "ビーコン接続に失敗しました",
      "BeaconSpawnFailureError": "参加失敗。ビーコンを生成できませんでした"
    },
    "OnlinePresence": {
      "Away": "離席",
      "Chat": "チャット",
      "DoNotDisturb": "Do Not Disturb",
      "Offline": "オフライン",
      "Online": "オンライン"
    }
  }
}
The string table contains thousands of entries. Consider caching the response for your locale and only refreshing when the game version changes.
Use /v1/locres together with /v1/version to build an offline-capable localization cache — fetch string tables once and invalidate when the version endpoint reports a new version.
The locale must be one of the exactly supported codes listed above. Unsupported locale codes will return an error.