Cloud Saves

Cloud Saves

Sync player progress across every device so players never lose their game

Get Started Free

Flexible Data Format

Save data is a plain string, so you can serialize any structure — JSON, MessagePack, or custom format — without schema constraints.

Instant Cross-Device Sync

The latest save is always available from any device as soon as the player authenticates with their horizOn account.

Player Retention

Players who know their progress is safe are far more likely to return after switching devices or reinstalling.

Quick Integration

Quick Integration

Puzzle Quest

Level 47

Progress73%
Score: 128,450
Play Time: 12h 34m
3/3
C#
// Unity C# - Cloud Saves
using HorizOn;

var horizon = new HorizonClient("YOUR_API_KEY");

// Save player data to the cloud
var saveData = JsonUtility.ToJson(new PlayerSave {
    Level = 42,
    Gold = 1500,
    Checkpoint = "world_3_boss"
});
await horizon.CloudSaves.Save(userId, saveData);

// Load player data from the cloud
var loaded = await horizon.CloudSaves.Load(userId);
var playerSave = JsonUtility.FromJson<PlayerSave>(loaded.Data);
Debug.Log($"Loaded level: {playerSave.Level}");
REST
# REST API - Cloud Saves

# Save player data
curl -X POST https://eu.horizon.pm/api/v1/app/cloud-save/save \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"userId":"USER_ID","saveData":"{\"level\":42,\"gold\":1500,\"checkpoint\":\"world_3_boss\"}"}'

# Load player data
curl -X POST https://eu.horizon.pm/api/v1/app/cloud-save/load \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"userId":"USER_ID"}'
Frequently Asked Questions

Frequently Asked Questions

Ready to Integrate?

Start building with horizOn today. Free tier included.