Подключите свою игру к horizOn
Выберите путь ниже и запуститесь за считанные минуты, без долгой настройки.
Используйте https://horizon.pm как базовый URL для примеров выше. Эндпоинты приложения требуют X-API-Key.
/api/v1/app/user-management/signupСоздание игрока анонимно или по email
/api/v1/app/user-management/signinВход игрока и проверка сессии
/api/v1/app/leaderboard/submitОтправить результат
/api/v1/app/cloud-save/saveСохранить данные игрока
/api/v1/app/cloud-save/loadЗагрузить данные игрока
/api/v1/app/remote-config/allПрочитать все значения конфигурации в реальном времени
/api/v1/app/user-feedback/submitСобирать сообщения об ошибках и идеи игроков
Создайте ключ уровня аккаунта в Dashboard, затем API Keys, вставьте его в конфигурацию вашего MCP-клиента и попросите ассистента о quickstart для SDK или операциях с API в реальном времени.
{
"mcpServers": {
"horizOn": {
"command": "npx",
"args": ["-y", "horizon-mcp"],
"env": {
"HORIZON_ACCOUNT_API_KEY": "hzn_acc_YOUR_ACCOUNT_KEY",
"HORIZON_BASE_URL": "https://horizon.pm"
}
}
}
} Открыть MCP-сервер на GitHub Apple requires every iOS build that offers a third-party sign-in option to also offer Sign in with Apple (App Store Review Guideline 4.8). horizOn User Management supports Apple Sign-In natively.
Полный справочник по APIhorizOn simpleServer предоставляет REST API, которое повторяет набор функций horizOn Cloud. Все endpoints требуют заголовок X-API-Key для аутентификации.
Почему PHP? Для максимальной простоты — основной бэкенд horizOn использует Spring/Kotlin для корпоративной производительности. Simple Server намеренно создан на PHP, чтобы разработчики могли легко понять, изменить и самостоятельно развернуть его.
Смотреть на GitHubSDK, плагины и инструменты
Все необходимое для интеграции horizOn в вашу игру. Скачайте SDK для вашего любимого движка и начните работу за считанные минуты.
Впервые в horizOn?
Следуйте нашему пошаговому руководству, чтобы настроить первый проект и интегрировать SDK.
Ресурсы SDK
Скачивайте SDK, плагины и получайте доступ к документации для вашего игрового движка.
Unity2
Unreal Engine2
Godot2
Другие ресурсы2
Каждый клиент ограничен 10 запросами в минуту. Проектируйте свои вызовы API эффективно.
Кэшировать данные локально Загружать все конфигурации при запуске Отправлять результаты только при улучшении Использовать параметр useCache Делать повторяющиеся одинаковые запросы Многократно запрашивать отдельные конфигурации Отправлять результаты каждый кадр Всегда обходить кэш
Эффективная схема запуска: Загружайте при запуске только то, что действительно нужно, а для остального полагайтесь на кэширование.
Полный справочник по APIЕсть вопрос или нашли баг? Откройте тикет из панели, если у вас есть аккаунт, или используйте гостевую форму тикета на horizon.pm. Вы также можете присоединиться к сообществу Discord для быстрой помощи.
Создать тикет в поддержкуСмотрите HorizOn в Деле
Узнайте, как реальные приложения используют возможности HorizOn для решения типичных задач
Мобильное Приложение Списка Покупок
Список Покупок с Синхронизацией
Мобильное приложение для списков покупок, где пользователи могут сохранять списки в облаке, получать информацию об акциях и скидках и работать со своими данными на любом устройстве.
Используемые Функции HorizOn
ShopSync
С возвращением!
Примеры Кода
// Register user with email
await UserManager.Instance.SignUpEmail(
"user@example.com",
"securePassword123",
"John Doe"
);
// Sign in existing user
await UserManager.Instance.SignInEmail(
"user@example.com",
"securePassword123"
);// Define shopping list structure
[System.Serializable]
public class ShoppingList
{
public List<string> Items;
public DateTime LastUpdated;
}
// Save list to cloud
var list = new ShoppingList {
Items = new List<string> { "Milk", "Eggs", "Bread" },
LastUpdated = DateTime.Now
};
await CloudSaveManager.Instance.SaveObject(list);
// Load from cloud
var saved = await CloudSaveManager.Instance.LoadObject<ShoppingList>();// Fetch latest deals and offers
var news = await NewsManager.Instance.LoadNews(limit: 5);
foreach (var deal in news)
{
Debug.Log($"{deal.Title}: {deal.Message}");
// Display in UI: "50% off milk this week!"
}# REST API Alternative
# Register user
POST https://horizon.pm/user/signup/email
Content-Type: application/json
X-API-Key: YOUR_API_KEY
{
"email": "user@example.com",
"password": "securePassword123",
"displayName": "John Doe"
}
# Save cloud data
POST https://horizon.pm/cloud-save
Content-Type: application/json
X-API-Key: YOUR_API_KEY
Authorization: Bearer USER_TOKEN
{
"data": {
"items": ["Milk", "Eggs", "Bread"],
"lastUpdated": "2025-02-07T10:00:00Z"
}
} Почему Это Работает
Идеально для потребительских приложений, которым нужны аккаунты пользователей и кросс-девайс синхронизация. Cloud Save обеспечивает бесшовную синхронизацию списков, News информирует пользователей об акциях, а Login предоставляет безопасное управление аккаунтом.
Приложение для Аудита Автопроизводителей
Контроль Качества и Соответствие Стандартам
Бизнес-приложение для автомобильных аудиторов, позволяющее проводить проверки качества с помощью удалённых чеклистов, которые можно обновлять централизованно без повторного развёртывания приложения.
Используемые Функции HorizOn
AutoCorp Контроль качества
Примеры Кода
// Secure login for auditor
await UserManager.Instance.SignInEmail(
"auditor@company.com",
"securePassword"
);
// Check authentication status
if (UserManager.Instance.IsSignedIn)
{
var user = UserManager.Instance.CurrentUser;
Debug.Log($"Auditor: {user.DisplayName}");
}// Load audit checklist from remote config
var checklistJson = await RemoteConfigManager.Instance.GetString(
"audit_checklist_v2",
defaultValue: "{}"
);
// Parse checklist
var checklist = JsonUtility.FromJson<AuditChecklist>(checklistJson);
// Load compliance rules (updated without app deployment)
bool requiresPhotos = await RemoteConfigManager.Instance.GetBool(
"photos_required",
true
);// Fetch compliance updates and audit changes
var updates = await NewsManager.Instance.LoadNews(limit: 10);
foreach (var update in updates)
{
// Display critical compliance changes
Debug.Log($"[{update.Title}] {update.Message}");
}# REST API Alternative
# Login
POST https://horizon.pm/user/signin/email
Content-Type: application/json
X-API-Key: YOUR_API_KEY
{
"email": "auditor@company.com",
"password": "securePassword"
}
# Get remote config
GET https://horizon.pm/remote-config/audit_checklist_v2
X-API-Key: YOUR_API_KEY
Authorization: Bearer USER_TOKEN Почему Это Работает
Идеально для корпоративных приложений, требующих безопасной аутентификации и обновляемых конфигураций. Remote Config позволяет мгновенно обновлять чеклисты на всех устройствах, News рассылает изменения нормативных требований, а Login гарантирует доступ только авторизованному персоналу.
Roguelike Игра в Steam
Инди-Игра в Steam
Roguelike игра в Steam без барьеров регистрации, с сохранением прогресса в облаке, удалённой настройкой баланса и встроенной системой отчётов об ошибках.
Используемые Функции HorizOn
DUNGEON DEPTHS
Roguelike-приключение
Примеры Кода
// No registration required - instant play
await UserManager.Instance.SignUpAnonymous("Player_" + Random.Range(1000, 9999));
// Token is cached automatically for session restore
if (UserManager.Instance.IsSignedIn)
{
Debug.Log("Ready to play!");
}// Load game balance values (updatable without patch)
int maxHealth = await RemoteConfigManager.Instance.GetInt("max_health", 100);
float enemyDamage = await RemoteConfigManager.Instance.GetFloat("enemy_damage", 15.0f);
bool eventActive = await RemoteConfigManager.Instance.GetBool("halloween_event", false);
// Apply to gameplay
player.MaxHealth = maxHealth;
enemy.Damage = enemyDamage;// Define save structure
[System.Serializable]
public class GameProgress
{
public int Level;
public int Gold;
public List<string> UnlockedCharacters;
}
// Save progress
var progress = new GameProgress {
Level = 12,
Gold = 5000,
UnlockedCharacters = new List<string> { "Knight", "Mage" }
};
await CloudSaveManager.Instance.SaveObject(progress);
// Load on startup
var saved = await CloudSaveManager.Instance.LoadObject<GameProgress>();// Bug report with automatic device info
await FeedbackManager.Instance.ReportBug(
title: "Crash in level 5",
message: "Game freezes when boss spawns"
);
// Feature request
await FeedbackManager.Instance.RequestFeature(
title: "New character class",
message: "Please add Necromancer class"
);# REST API Alternative
# Anonymous signup
POST https://horizon.pm/user/signup/anonymous
Content-Type: application/json
X-API-Key: YOUR_API_KEY
{
"displayName": "Player_1234"
}
# Get remote config
GET https://horizon.pm/remote-config/max_health
X-API-Key: YOUR_API_KEY
Authorization: Bearer USER_TOKEN
# Submit feedback
POST https://horizon.pm/feedback/bug
Content-Type: application/json
X-API-Key: YOUR_API_KEY
Authorization: Bearer USER_TOKEN
{
"title": "Crash in level 5",
"message": "Game freezes when boss spawns"
} Почему Это Работает
Идеально для игр, которым нужен мгновенный онбординг игроков и гибкая настройка баланса. Anonymous Login убирает барьер регистрации, Remote Config позволяет менять баланс игры на лету, Cloud Save сохраняет прогресс, а Feedback собирает баг-репорты с автоматической информацией об устройстве.
Готовы Создать Свой Проект?
Начните интеграцию HorizOn в свой проект уже сегодня с помощью нашего пошагового руководства quickstart