# Progression

**URL:** https://heroiclabs.com/docs/hiro/unreal/progression/
**Keywords:** progression, hiro
**Categories:** hiro, unreal, progression

---


# Progression

Read more about the Progression system in Hiro [here](../../concepts/progression/).

## Get all progressions

Get progressions.

```cpp
FHiroOnProgressionsGet OnProgressionsGet;
OnProgressionsGet.AddDynamic(this, &AMyActor::OnProgressionsGet);
FOnError OnError;

HiroClient->ProgressionsGet(Session, OnProgressionsGet, OnError);

void AMyActor::OnProgressionsGet(const FHiroProgressionList& ProgressionList)
{
    UE_LOG(LogTemp, Log, TEXT("%s"), *ProgressionList.ToJson());
}
```

## Purchase progression

Purchase a progression for permanent unlock, if supported.

```cpp
FHiroProgressionPurchaseRequest Request;
Request.Id = TEXT("progression_1");

FHiroOnProgressionsPurchase OnProgressionsPurchase;
OnProgressionsPurchase.AddDynamic(this, &AMyActor::OnProgressionsPurchase);
FOnError OnError;

HiroClient->ProgressionsPurchase(Session, Request, OnProgressionsPurchase, OnError);

void AMyActor::OnProgressionsPurchase(const FHiroProgressionList& ProgressionList)
{
    UE_LOG(LogTemp, Log, TEXT("%s"), *ProgressionList.ToJson());
}
```