Localization

Localization

Manage all your in-game text in 15 languages and update it live without a new release

Get Started Free

Fifteen Languages, One Key

Store up to 15 language values per key in one place and edit them side by side, the same way you manage news translations.

Players Download Only Their Language

The SDK requests a single language at runtime, so devices only ever fetch the strings they actually need.

Live Updates, No Rebuild

Fix a typo or reword a button and players see it after the next cache window, with no store submission required.

Quick Integration

Quick Integration

C#
// Unity C# - Localization
using HorizOn;

var horizon = new HorizonClient("YOUR_API_KEY");

// Pick the player's language once
horizon.Localization.SetLanguage("de");

// Fetch a single string for the current language
var label = await horizon.Localization.GetLocalization("menu.play");
Debug.Log($"Play button: {label}");

// Fetch every key for one language at startup (cached in memory)
var all = await horizon.Localization.GetAllLocalizations("de");
foreach (var pair in all) {
    Debug.Log($"{pair.Key}: {pair.Value}");
}
REST
# REST API - Localization

# Fetch every key for one language
curl -X GET "https://eu.horizon.pm/api/v1/app/localization/all?lang=de" \
  -H "X-API-Key: YOUR_API_KEY"

# Fetch a single key (falls back to en if the language is missing)
curl -X GET "https://eu.horizon.pm/api/v1/app/localization/menu.play?lang=de" \
  -H "X-API-Key: YOUR_API_KEY"

# List the languages that actually have content
curl -X GET https://eu.horizon.pm/api/v1/app/localization/languages \
  -H "X-API-Key: YOUR_API_KEY"
Frequently Asked Questions

Frequently Asked Questions

Ready to Integrate?

Start building with horizOn today. Free tier included.