Conecta tu juego con horizOn
Elige un camino abajo y ponte en marcha en minutos, sin configuración larga.
Usa https://horizon.pm como URL base para los ejemplos anteriores. Los endpoints de la app requieren X-API-Key.
/api/v1/app/user-management/signupCreación de jugador anónimo o por correo electrónico
/api/v1/app/user-management/signinInicio de sesión del jugador y validación de sesión
/api/v1/app/leaderboard/submitEnviar una puntuación
/api/v1/app/cloud-save/saveGuardar datos del jugador
/api/v1/app/cloud-save/loadCargar datos del jugador
/api/v1/app/remote-config/allLeer todos los valores de configuración en vivo
/api/v1/app/user-feedback/submitRecopilar informes de errores e ideas de los jugadores
Crea una clave a nivel de cuenta en Dashboard, luego API Keys, pégala en la configuración de tu cliente MCP y pide al asistente inicios rápidos de SDK u operaciones de API en vivo.
{
"mcpServers": {
"horizOn": {
"command": "npx",
"args": ["-y", "horizon-mcp"],
"env": {
"HORIZON_ACCOUNT_API_KEY": "hzn_acc_YOUR_ACCOUNT_KEY",
"HORIZON_BASE_URL": "https://horizon.pm"
}
}
}
} Ver el servidor MCP en 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.
Ver la referencia completa de la APIEl horizOn simpleServer expone una REST API que replica el conjunto de funcionalidades de horizOn Cloud. Todos los endpoints requieren el header X-API-Key para la autenticacion.
¿Por qué PHP? Para máxima simplicidad — el backend principal de horizOn usa Spring/Kotlin para rendimiento empresarial. El Simple Server está construido intencionalmente en PHP para que los desarrolladores puedan entenderlo, modificarlo y alojarlo fácilmente.
Ver en GitHubSDKs, plugins y herramientas
Todo lo que necesitas para integrar horizOn en tu juego. Descarga SDKs para tu motor favorito y empieza en minutos.
Nuevo en horizOn?
Sigue nuestra guia paso a paso para configurar tu primer proyecto e integrar el SDK.
Recursos del SDK
Descarga SDKs, plugins y accede a la documentacion para tu motor de juego.
Unity2
Unreal Engine2
Godot2
Otros recursos2
Cada cliente está limitado a 10 peticiones por minuto. Diseña tus llamadas a la API de forma eficiente.
Almacenar datos en caché localmente Cargar todas las configuraciones al iniciar Enviar puntuaciones solo cuando mejoran Usar el parámetro useCache Hacer peticiones idénticas repetidas Obtener configuraciones individuales repetidamente Enviar puntuaciones en cada frame Saltarse siempre la caché
Patrón de inicio eficiente: Carga solo lo que necesitas al iniciar, y confía en la caché para el resto.
Ver la referencia completa de la API¿Tienes una pregunta o has encontrado un bug? Abre un ticket desde el dashboard si tienes una cuenta, o usa el formulario de ticket para invitados en horizon.pm. También puedes unirte a la comunidad de Discord para obtener ayuda rápida.
Abrir un ticket de soporteDescubre HorizOn en Acción
Explora cómo aplicaciones reales integran las funciones de HorizOn para resolver desafíos comunes
App Móvil de Lista de Compras
Lista de Compras con Sincronización
Una app móvil de lista de compras donde los usuarios guardan sus listas en la nube, reciben noticias sobre ofertas y descuentos, y acceden a sus datos desde cualquier dispositivo.
Funciones de HorizOn Utilizadas
ShopSync
¡Bienvenido de nuevo!
Ejemplos de Código
// 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"
}
} Por Qué Funciona
Ideal para apps de consumo que necesitan cuentas de usuario y sincronización entre dispositivos. Cloud Save garantiza que las listas se sincronicen sin problemas, News mantiene a los usuarios informados sobre ofertas, y Login ofrece una gestión de cuentas segura.
App de Auditoría Automotriz
Control de Calidad y Cumplimiento
Una app empresarial para auditores del sector automotriz que realizan inspecciones de calidad con checklists remotos actualizables de forma centralizada, sin necesidad de redesplegar la app.
Funciones de HorizOn Utilizadas
AutoCorp Control de Calidad
Ejemplos de Código
// 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 Por Qué Funciona
Ideal para apps empresariales que requieren autenticación segura y configuraciones actualizables. Remote Config permite actualizar checklists de forma instantánea en todos los dispositivos, News comunica cambios normativos, y Login garantiza que solo el personal autorizado acceda al sistema.
Roguelike en Steam
Juego Indie en Steam
Un roguelike en Steam sin barreras de registro, con guardado en la nube, ajustes remotos del balanceo del juego y reporte de bugs integrado.
Funciones de HorizOn Utilizadas
DUNGEON DEPTHS
Una aventura Roguelike
Ejemplos de Código
// 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"
} Por Qué Funciona
Perfecto para juegos que necesitan incorporar jugadores al instante y ajustar el balanceo con flexibilidad. Anonymous Login elimina la fricción del registro, Remote Config permite cambios de balanceo en tiempo real, Cloud Save conserva el progreso, y Feedback captura reportes de bugs con información del dispositivo automática.
¿Listo para Crear el Tuyo?
Empieza a integrar HorizOn en tu proyecto hoy mismo con nuestra guía de inicio paso a paso