Conecte seu jogo ao horizOn
Escolha um caminho abaixo e fique no ar em minutos, sem configuração demorada.
Use https://horizon.pm como URL base para os exemplos acima. Os endpoints do app exigem X-API-Key.
/api/v1/app/user-management/signupCriação de jogador anônimo ou por e-mail
/api/v1/app/user-management/signinLogin do jogador e validação de sessão
/api/v1/app/leaderboard/submitEnviar uma pontuação
/api/v1/app/cloud-save/saveSalvar dados do jogador
/api/v1/app/cloud-save/loadCarregar dados do jogador
/api/v1/app/remote-config/allLer todos os valores de configuração ao vivo
/api/v1/app/user-feedback/submitColetar relatos de bugs e ideias dos jogadores
Crie uma chave no escopo da conta no Dashboard, depois API Keys, cole-a na configuração do seu cliente MCP e peça ao assistente quickstarts de SDK ou operações de API ao 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 o servidor MCP no 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 a referência completa da APIO horizOn simpleServer expoe uma REST API que espelha o conjunto de funcionalidades do horizOn Cloud. Todos os endpoints requerem o header X-API-Key para autenticacao.
Por que PHP? Para máxima simplicidade — o backend principal do horizOn usa Spring/Kotlin para desempenho empresarial. O Simple Server é intencionalmente construído em PHP para que os desenvolvedores possam entendê-lo, modificá-lo e hospedá-lo facilmente.
Ver no GitHubSDKs, plugins e ferramentas
Tudo o que voce precisa para integrar o horizOn no seu jogo. Baixe SDKs para o seu motor favorito e comece em minutos.
Novo no horizOn?
Siga nosso guia passo a passo para configurar seu primeiro projeto e integrar o SDK.
Recursos do SDK
Baixe SDKs, plugins e acesse a documentacao para o seu motor de jogo.
Unity2
Unreal Engine2
Godot2
Outros recursos2
Cada cliente é limitado a 10 requisições por minuto. Planeje suas chamadas de API de forma eficiente.
Armazene os dados em cache localmente Carregue todas as configs na inicialização Envie pontuações apenas quando houver melhora Use o parâmetro useCache Fazer requisições idênticas repetidas Buscar configs individuais repetidamente Enviar pontuações a cada frame Sempre ignorar o cache
Padrão de inicialização eficiente: Carregue na inicialização apenas o que você precisa, depois confie no cache para o resto.
Ver a referência completa da APITem uma pergunta ou encontrou um bug? Abra um ticket pelo dashboard se você tiver uma conta, ou use o formulário de ticket de convidado em horizon.pm. Você também pode entrar na comunidade do Discord para ajuda rápida.
Abrir um ticket de suporteVeja o HorizOn em Ação
Descubra como aplicações reais integram as funcionalidades do HorizOn para resolver desafios comuns
App Móvel de Lista de Compras
Lista de Compras com Sincronização
Uma app móvel de lista de compras onde os utilizadores podem guardar as suas listas na cloud, receber novidades sobre ofertas e descontos e aceder aos seus dados em qualquer dispositivo.
Funcionalidades HorizOn Utilizadas
ShopSync
Bem-vindo de volta!
Exemplos 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 Que Funciona
Perfeita para apps de consumo que precisam de contas de utilizador e sincronização entre dispositivos. Cloud Save garante que as listas sincronizam sem falhas, News mantém os utilizadores informados sobre ofertas e Login oferece gestão segura de contas.
App de Auditoria para Fabricantes Automóveis
Controlo de Qualidade e Conformidade
Uma app empresarial para auditores do setor automóvel, concebida para realizar inspeções de qualidade com checklists remotas atualizáveis centralmente sem reimplantar a app.
Funcionalidades HorizOn Utilizadas
AutoCorp Controle de Qualidade
Exemplos 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 Que Funciona
Ideal para apps empresariais que exigem autenticação segura e configurações atualizáveis. Remote Config permite atualizações instantâneas de checklists em todos os dispositivos, News comunica alterações de conformidade e Login garante que apenas pessoal autorizado acede ao sistema.
Roguelike no Steam
Jogo Indie no Steam
Um roguelike no Steam sem barreiras de registo, com gravação de progresso na cloud, atualizações remotas de balanceamento e reporte de bugs integrado.
Funcionalidades HorizOn Utilizadas
DUNGEON DEPTHS
Uma aventura Roguelike
Exemplos 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 Que Funciona
Perfeito para jogos que precisam de onboarding imediato e balanceamento flexível. Login Anónimo elimina a fricção do registo, Remote Config permite ajustes de balanceamento em tempo real, Cloud Save preserva o progresso e Feedback captura reportes de bugs com informações automáticas do dispositivo.
Pronto Para Construir o Seu Projeto?
Comece hoje a integrar o HorizOn no seu projeto com o nosso guia quickstart passo a passo