> ## 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 Variable Incentive is designed to store and distribute dynamic amounts of 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 ETH decimal format reward multiplier. If set to `0n` or `1 ether`, user will be transferred the whole amount asserted at claim time.

<CodeGroup>
  ```ts index.ts theme={null}
  await erc20VariableIncentive.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 reward multiplier.
</ResponseField>

### `asset`

Retrieves the address of the ERC20-like asset to be rewarded on claim.

<CodeGroup>
  ```ts index.ts theme={null}
  await erc20VariableIncentive.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 asset transferred on claim
</ResponseField>

### `limit`

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

<CodeGroup>
  ```ts index.ts theme={null}
  await erc20VariableIncentive.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
</ResponseField>
