Economy #

Read more about the Economy system in Hiro here.

Donation claim #

Claim one or more rewards which are partially or full donated by other players.

1
2
3
4
5
6
const request : EconomyDonationClaimRequest = {
    donation_ids: ["donation_1", "donation_2"]
};

const donationRewards = await hiroClient.economyDonationClaim(session, request);
console.log(donationRewards);

Donate some resource (currencies, items, etc.) to a user by donation ID.

1
2
3
4
5
6
7
const request : EconomyDonationGiveRequest = {
    user_id: "user_id",
    donation_id: "donation_1"
};

const updateAck = await hiroClient.economyDonationGive(session, request);
console.log(updateAck);

Get donation progress #

Get progress on one or more donations for a set of players by their IDs.

1
2
3
4
5
6
const request : EconomyDonationGetRequest = {
    ids: ["donation_1", "donation_2"]
};

const donations = await hiroClient.economyDonationGet(session, request);
console.log(donations);

Request a donation #

Request a donation which other players can contribute into.

1
2
3
4
5
6
const request : EconomyDonationRequest = {
    donation_id: "donation_1"
};

const donationAck = await hiroClient.economyDonationRequest(session, request);
console.log(donationAck);

Get store items #

Get all store items defined in the Virtual Store.

1
2
3
4
5
6
const request : EconomyListRequest = {
    store_type: EconomyStoreType.AppleAppStore
};

const economyList = await hiroClient.economyStoreGet(session, request);
console.log(economyList);

Grant currencies or reward modifiers #

Grant one or more currencies or reward modifiers to te player.

1
2
3
4
5
6
7
8
const request : EconomyGrantRequest = {
    currencies: {
        "coins": "100"
    }
};

const updateAck = await hiroClient.economyGrant(session, request);
console.log(updateAck);

Send a purchase intent #

Send a marker of intent to purchase by the player.

1
2
3
4
5
6
7
const request : EconomyPurchaseIntentRequest = {
    item_id: "item_1",
    store_type: EconomyStoreType.AppleAppStore,
    sku: "sku_1"
};

await hiroClient.economyPurchaseIntent(session, request);

Purchase a store item #

Purchase a store item by the player.

1
2
3
4
5
6
7
8
const request : EconomyPurchaseRequest = {
    item_id: "item_1",
    store_type: EconomyStoreType.AppleAppStore,
    receipt: "<receipt>"
};

const purchaseAck = await hiroClient.economyPurchaseItem(session, request);
console.log(purchaseAck);

Get ad placement status #

Get the current status on an Ad placement which may have been rewarded.

1
2
3
4
5
6
7
8
const request : EconomyPlacementStatusRequest = {
    reward_id: "reward_1",
    placement_id: "placement_1",
    count: 0
};

const placementStatus = await hiroClient.economyPlacementStatus(session, request);
console.log(placementStatus);

Start a new ad placement #

Start a new Ad placement by placement ID.

1
2
3
4
5
6
const request : EconomyPlacementStartRequest = {
    placement_id: "placement_1"
};

const placementStatus = await hiroClient.economyPlacementStart(session, request);
console.log(placementStatus);

Placement success #

Webhook RPC to handle Rewarded Video Ad placement success callbacks.

1
await hiroClient.eonomyPlacementSuccess(session);

Placement fail #

Webhook RPC to handle Rewarded Video Ad placement failure callbacks.

1
hiroClient.economyPlacementFail(session);