Player data lets you persist arbitrary JSON for a player: level, coins, unlocked content,
preferences — whatever your game needs. Documents are scoped to the signed-in player.
A typical setup has two sides: define the shape in the dashboard, then read and write it from
the SDK.
A player data template defines the structure and defaults for a kind of document, keeping
records consistent across players and versions. Define templates in the dashboard; players
inherit them automatically. Run Code Generation → Sync Schemas in the Flock window to turn each template into a typed C#
class, then read and write the signed-in player’s document directly:// Read (paginates and caches the player's documents on first call)
var progress = await FlockClient.Instance.Player.GetPlayerProgressAsync();
// Mutate the typed object and save it back
progress.Level = 2;
progress.Coins += 100;
await progress.UpdateAsync();
The method and field names come from your template (PlayerProgress → GetPlayerProgressAsync).
Keep documents small and purpose-scoped (e.g. a progression doc and a settings doc) rather
than one giant blob — it makes partial updates and debugging far easier.