> ## Documentation Index
> Fetch the complete documentation index at: https://docs.teamfortuna.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# Localization String Tables — GET /v1/locres

> Access raw Valorant StringTable localization data for any supported locale. Fetch available locale codes or the full string table for a specific language.

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
```

<CodeGroup>
  ```bash cURL theme={null}
  curl -X GET "https://astra.teamfortuna.xyz/v1/locres" \
    -H "User-Agent: MyApp/1.0 (+https://example.com)"
  ```
</CodeGroup>

### Response

```json theme={null}
{
  "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}
```

<ParamField path="locale" type="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`.
</ParamField>

<CodeGroup>
  ```bash en-US theme={null}
  curl -X GET "https://astra.teamfortuna.xyz/v1/locres/en-US" \
    -H "User-Agent: MyApp/1.0 (+https://example.com)"
  ```

  ```bash ja-JP theme={null}
  curl -X GET "https://astra.teamfortuna.xyz/v1/locres/ja-JP" \
    -H "User-Agent: MyApp/1.0 (+https://example.com)"
  ```
</CodeGroup>

### Response (abbreviated)

```json theme={null}
{
  "status": 200,
  "data": {
    "MMRegion": {
      "DevRegion": "開発"
    },
    "NetworkErrors": {
      "KickedPlayerFromParty": "パーティーからキックされました",
      "GenericBeaconConnectionFailed": "ビーコン接続に失敗しました",
      "BeaconSpawnFailureError": "参加失敗。ビーコンを生成できませんでした"
    },
    "OnlinePresence": {
      "Away": "離席",
      "Chat": "チャット",
      "DoNotDisturb": "Do Not Disturb",
      "Offline": "オフライン",
      "Online": "オンライン"
    }
  }
}
```

<Note>
  The string table contains thousands of entries. Consider caching the response for your locale and only refreshing when the game version changes.
</Note>

<Tip>
  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.
</Tip>

<Warning>
  The locale must be one of the exactly supported codes listed above. Unsupported locale codes will return an error.
</Warning>
