> For the complete documentation index, see [llms.txt](https://docs.gnoswap.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.gnoswap.io/contracts/staker/external_incentive.gno.md).

# external\_incentive.gno

{% embed url="<https://github.com/gnoswap-labs/gnoswap/blob/main/contract/r/gnoswap/staker/v1/external_incentive.gno>" %}

## CreateExternalIncentive

```go
func CreateExternalIncentive(
	cur realm,
	targetPoolPath string,
	rewardToken string,
	rewardAmount int64,
	startTimestamp int64,
	endTimestamp int64
)
```

CreateExternalIncentive creates an incentive program for a pool.

#### Parameters

| Name             | Type   | Description                                      |
| ---------------- | ------ | ------------------------------------------------ |
| `cur`            | realm  | Pass `cross` as argument.                        |
| `targetPoolPath` | string | The path of the pool in which to add incentives. |
| `rewardToken`    | string | The path of the token to add as incentives.      |
| `rewardAmount`   | int64  | The amount of tokens to add as incentives.       |
| `startTimestamp` | int64  | The time to start the incentive program.         |
| `endTimestamp`   | int64  | The time to end the incentive program.           |

## EndExternalIncentive

```go
func EndExternalIncentive(
	cur realm,
	targetPoolPath string,
	incentiveId string
)
```

EndExternalIncentive ends an incentive program.

#### Parameters

| Name             | Type   | Description                                        |
| ---------------- | ------ | -------------------------------------------------- |
| `cur`            | realm  | Pass `cross` as argument.                          |
| `targetPoolPath` | string | The path of the pool to end the incentive program. |
| `incentiveId`    | string | The ID of the incentive program to end.            |
