This how-to retrieves Progressions and their tiers, as defined for your game in the Web Console.
Prerequisites
Section titled “Prerequisites”- Unity, Unreal, or Godot SDK installed and configured in your project (not required for REST).
- An active Player session (see Authentication).
- At least one Progression created in the Web Console.
Retrieve a Progression
Section titled “Retrieve a Progression”Get a Single Progression
Section titled “Get a Single Progression”string progressionKey = "mage";
LootLockerSDKManager.GetProgression(progressionKey, response =>{ if (!response.success) { Debug.Log("Failed: " + response.Error); }
// Output the name of the fetched progression Debug.Log(response.name);});See the Reference Documentation for the full response.

Connect the Progression Key to retrieve, then trigger the node from an event such as a button click. The response includes the Progression's ID, key, name, and whether it's active.
Coming soon — this sample hasn't been written yet. In the meantime, refer to the Reference Documentation for this endpoint.
Coming soon — this sample hasn't been written yet. In the meantime, refer to the Reference Documentation for this endpoint.
Get All Progressions
Section titled “Get All Progressions”LootLockerSDKManager.GetProgressions(response =>{ if (!response.success) { Debug.Log("Failed: " + response.Error); }
if (!response.items.Any()) { Debug.Log("Your game does not have any progressions, create one in the Web Console"); }
// Output the name for all progressions foreach (var progression in response.items) { Debug.Log(progression.name); }});See the Reference Documentation for the full response.

Trigger the node from an event such as a level start. The response returns a list of Progressions along with pagination data — see Paginate Progressions below.
Coming soon — this sample hasn't been written yet. In the meantime, refer to the Reference Documentation for this endpoint.
Coming soon — this sample hasn't been written yet. In the meantime, refer to the Reference Documentation for this endpoint.
Get All Progressions Using Count
Section titled “Get All Progressions Using Count”Count limits the number of entries returned.
int count = 20;
LootLockerSDKManager.GetProgressions(count, response =>{ if (!response.success) { Debug.Log("Failed: " + response.Error); }
if (!response.items.Any()) { Debug.Log("Your game does not have any progressions, create one in the Web Console"); }
// Output the name for all progressions foreach (var progression in response.items) { Debug.Log(progression.name); }});See the Reference Documentation for the full response.
Coming soon — this sample hasn't been written yet. In the meantime, refer to the Reference Documentation for this endpoint.
Coming soon — this sample hasn't been written yet. In the meantime, refer to the Reference Documentation for this endpoint.
Coming soon — this sample hasn't been written yet. In the meantime, refer to the Reference Documentation for this endpoint.
Paginate Progressions
Section titled “Paginate Progressions”Use the After parameter to paginate if your game has many Progressions.
int numberOfItemsPerPage = 10;LootLockerPaginatedProgressionsResponse progressions;
void Start(){ LootLockerSDKManager.StartGuestSession(_ => { // Fetch the initial progressions list LootLockerSDKManager.GetProgressions(numberOfItemsPerPage, response => { if (!response.success) { Debug.Log("Failed: " + response.Error); }
if (response.pagination.total == 0) { Debug.Log("Your game does not have any progressions, create one in the Web Console"); }
progressions = response; }); });}
void Update(){ if (progressions == null) return;
// Fetch the next page if more progressions exist if (Input.GetKeyDown(KeyCode.RightArrow) && progressions.pagination.next_cursor != null) { LootLockerSDKManager.GetProgressions(numberOfItemsPerPage, progressions.pagination.next_cursor, response => { if (!response.success) { Debug.Log("Failed: " + response.Error); }
progressions = response; Debug.Log($"Paginating right, got {progressions.items.Count} progressions"); }); }
// Fetch the previous page if we are not on the first page if (Input.GetKeyDown(KeyCode.LeftArrow) && progressions.pagination.previous_cursor != null) { LootLockerSDKManager.GetProgressions(numberOfItemsPerPage, progressions.pagination.previous_cursor, response => { if (!response.success) { Debug.Log("Failed: " + response.Error); }
progressions = response; Debug.Log($"Paginating left, got {progressions.items.Count} progressions"); }); }}See the Reference Documentation for the full response.

Supply a Count to limit the page size, and optionally an After value to start where a previous call left off.
Coming soon — this sample hasn't been written yet. In the meantime, refer to the Reference Documentation for this endpoint.
Coming soon — this sample hasn't been written yet. In the meantime, refer to the Reference Documentation for this endpoint.
Retrieve Progression Tiers
Section titled “Retrieve Progression Tiers”Get All Progression Tiers
Section titled “Get All Progression Tiers”string progressionKey = "mage";
LootLockerSDKManager.GetProgressionTiers(progressionKey, response =>{ if (!response.success) { Debug.Log("Failed: " + response.Error); }
// Output the progression tiers with levels, required points and rewards foreach (var progressionTier in response.items) { Debug.Log($"Level {progressionTier.step} requires {progressionTier.points_threshold} experience points");
foreach (var assetReward in progressionTier.rewards.asset_rewards) { Debug.Log($"Reaching level {progressionTier.step} awards asset with id: {assetReward.asset_id}"); }
foreach (var progressionPointsReward in progressionTier.rewards.progression_points_rewards) { Debug.Log($"Reaching level {progressionTier.step} awards {progressionPointsReward.amount} points in {progressionPointsReward.progression_name} progression"); }
foreach (var progressionResetReward in progressionTier.rewards.progression_reset_rewards) { Debug.Log($"Reaching level {progressionTier.step} resets the {progressionResetReward.progression_name} progression"); } }});See the Reference Documentation for the full response.

Connect the Progression Key to retrieve tiers for. The response is a list of tiers (points threshold, step, and data) plus their Rewards — Asset, Progression Points, and Progression Reset Rewards.
Coming soon — this sample hasn't been written yet. In the meantime, refer to the Reference Documentation for this endpoint.
Coming soon — this sample hasn't been written yet. In the meantime, refer to the Reference Documentation for this endpoint.
Get All Progression Tiers Using Count
Section titled “Get All Progression Tiers Using Count”Count limits the number of entries returned.
string progressionKey = "mage";int count = 20;
LootLockerSDKManager.GetProgressionTiers(progressionKey, count, response =>{ if (!response.success) { Debug.Log("Failed: " + response.Error); }
// Output the progression tiers with levels, required points and rewards foreach (var progressionTier in response.items) { Debug.Log($"Level {progressionTier.step} requires {progressionTier.points_threshold} experience points");
foreach (var assetReward in progressionTier.rewards.asset_rewards) { Debug.Log($"Reaching level {progressionTier.step} awards asset with id: {assetReward.asset_id}"); }
foreach (var progressionPointsReward in progressionTier.rewards.progression_points_rewards) { Debug.Log($"Reaching level {progressionTier.step} awards {progressionPointsReward.amount} points in {progressionPointsReward.progression_name} progression"); }
foreach (var progressionResetReward in progressionTier.rewards.progression_reset_rewards) { Debug.Log($"Reaching level {progressionTier.step} resets the {progressionResetReward.progression_name} progression"); } }});See the Reference Documentation for the full response.
Coming soon — this sample hasn't been written yet. In the meantime, refer to the Reference Documentation for this endpoint.
Coming soon — this sample hasn't been written yet. In the meantime, refer to the Reference Documentation for this endpoint.
Coming soon — this sample hasn't been written yet. In the meantime, refer to the Reference Documentation for this endpoint.
Paginate Progression Tiers
Section titled “Paginate Progression Tiers”Use the After parameter to paginate if a Progression has many tiers.
string progressionKey = "mage";int numberOfItemsPerPage = 10;LootLockerPaginatedProgressionTiersResponse progressionTiers;
void Start(){ LootLockerSDKManager.StartGuestSession(_ => { // Fetch the initial list of progression tiers LootLockerSDKManager.GetProgressionTiers(progressionKey, numberOfItemsPerPage, response => { if (!response.success) { Debug.Log("Failed: " + response.Error); }
progressionTiers = response; }); });}
void Update(){ if (progressionTiers == null) return;
// Fetch the next page if more tiers exist if (Input.GetKeyDown(KeyCode.RightArrow) && progressionTiers.pagination.next_cursor != null) { LootLockerSDKManager.GetProgressionTiers(progressionKey, numberOfItemsPerPage, progressionTiers.pagination.next_cursor, response => { if (!response.success) { Debug.Log("Failed: " + response.Error); }
progressionTiers = response; Debug.Log($"Paginating right, got {progressionTiers.items.Count} progression tiers"); }); }
// Fetch the previous page if we are not on the first page if (Input.GetKeyDown(KeyCode.LeftArrow) && progressionTiers.pagination.previous_cursor != null) { LootLockerSDKManager.GetProgressionTiers(progressionKey, numberOfItemsPerPage, progressionTiers.pagination.previous_cursor, response => { if (!response.success) { Debug.Log("Failed: " + response.Error); }
progressionTiers = response; Debug.Log($"Paginating left, got {progressionTiers.items.Count} progression tiers"); }); }}See the Reference Documentation for the full response.

Provide the Progression Key, a Count to limit the page size, and optionally an After value to start where a previous call left off.
Coming soon — this sample hasn't been written yet. In the meantime, refer to the Reference Documentation for this endpoint.
Coming soon — this sample hasn't been written yet. In the meantime, refer to the Reference Documentation for this endpoint.
Conclusion
Section titled “Conclusion”You've retrieved Progressions and their tiers from your game. Next, apply points to a specific holder with Player Progressions, Character Class Progressions, or Asset Instance Progressions.