> ## Documentation Index
> Fetch the complete documentation index at: https://docs.boost.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# Rewards

> Retrieve information about ERC20 Incentive rewards

<Warning>
  The One-Time Actions docs are under active development and will be subject to changes.
</Warning>

The ERC20 Incentive is designed to store and distribute assets that can be claimed by users. The Boost SDK provides several methods to retrieve information about the current state of its rewards.

## API

### `reward`

Retrieves the amount of the pegged asset configured at time of initialization. This represents the value of the reward denominated in the pegged token (e.g., 1 USDC). When claimed, the user receives an equivalent value in the actual reward asset token, calculated based on the current price ratio between the pegged token and the reward asset.

For example:

* If the reward is pegged to 1 USDC
* And the reward asset token is worth 0.25 USDC per token
* Then claiming the reward would transfer 4 reward asset tokens to the claimant (1 USDC ÷ 0.25 = 4 tokens)

<CodeGroup>
  ```ts index.ts theme={null}
  await erc20PeggedIncentive.reward()
  ```
</CodeGroup>

#### Parameters

<ParamField path="parameters" type="Omit<wagmi.ReadContractParameters, 'address' | 'args' | 'functionName' | 'abi'>">
  Optional parameters to pass to the underlying `readContract` method. Checkout [wagmi's documentation](https://wagmi.sh/core/api/actions/readContract#parameters) for more information. `address`, `args`, `functionName`, `abi` are handled for you under the hood.
</ParamField>

#### Returns

<ResponseField name="Promise<bigint>" type="bigint">
  Returns the amount (in wei) of the pegged asset that each claim is valued at.
</ResponseField>

### `asset`

Retrieves the address of the ERC20-like token that will be transferred when rewards are claimed.

<CodeGroup>
  ```ts index.ts theme={null}
  await erc20PeggedIncentive.asset();
  ```
</CodeGroup>

#### Parameters

<ParamField path="parameters" type="Omit<wagmi.ReadContractParameters, 'address' | 'args' | 'functionName' | 'abi'>">
  Optional parameters to pass to the underlying `readContract` method. Checkout [wagmi's documentation](https://wagmi.sh/core/api/actions/readContract#parameters) for more information. `address`, `args`, `functionName`, `abi` are handled for you under the hood.
</ParamField>

#### Returns

<ResponseField name="ERC20-like address" type="Address">
  The address of the reward asset token that will be transferred when claims are processed.
</ResponseField>

### `peg`

Retrieves the address of the token that the reward value is pegged to.

<CodeGroup>
  ```ts index.ts theme={null}
  await erc20PeggedIncentive.peg();
  ```
</CodeGroup>

#### Parameters

<ParamField path="parameters" type="Omit<wagmi.ReadContractParameters, 'address' | 'args' | 'functionName' | 'abi'>">
  Optional parameters to pass to the underlying `readContract` method. Checkout [wagmi's documentation](https://wagmi.sh/core/api/actions/readContract#parameters) for more information. `address`, `args`, `functionName`, `abi` are handled for you under the hood.
</ParamField>

#### Returns

<ResponseField name="ERC20-like address" type="Address">
  The address of the token that the reward is pegged to.
</ResponseField>

### `limit`

Retrieves the spending limit for this incentive. The sum of all claims cannot exceed this amount. Denominated in the asset token.

<CodeGroup>
  ```ts index.ts theme={null}
  await erc20PeggedIncentive.limit()
  ```
</CodeGroup>

#### Parameters

<ParamField path="parameters" type="Omit<wagmi.ReadContractParameters, 'address' | 'args' | 'functionName' | 'abi'>">
  Optional parameters to pass to the underlying `readContract` method. Checkout [wagmi's documentation](https://wagmi.sh/core/api/actions/readContract#parameters) for more information. `address`, `args`, `functionName`, `abi` are handled for you under the hood.
</ParamField>

#### Returns

<ResponseField name="Promise<bigint>" type="bigint">
  Returns the total budget for this incentive, denominated in the asset token.
</ResponseField>
