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

# Execute Proposal

> Low-level instruction to execute an approved governance proposal

# createExecuteProposalInstruction

Builds a raw instruction to execute an approved governance proposal after the timelock period has passed. Applies the proposed change -- either a VaultSettingsAction or PositionUpdate -- to the vault. This instruction is permissionless and can be called by anyone once the timelock expires.

## Usage

```typescript theme={null}
import { createExecuteProposalInstruction } from "@exponent-labs/exponent-sdk/client/vaults";
import { PublicKey, SystemProgram } from "@solana/web3.js";

const ix = createExecuteProposalInstruction({
  payer: payerKeypair.publicKey,
  vault: vaultAddress,
  proposal: proposalAddress,
  exponentPrices: exponentPricesAddress,
  systemProgram: SystemProgram.programId,
});
```

## Accounts

| Name | Signer | Writable | Description |
| - | - | - | - |
| `payer` | Yes | Yes | Fee payer for the transaction |
| `vault` | No | Yes | Vault account to apply the proposal changes to |
| `proposal` | No | Yes | Approved proposal to execute |
| `exponentPrices` | No | Yes | Exponent prices oracle account |
| `systemProgram` | No | No | System program |

## Returns

`TransactionInstruction` — a transaction instruction ready to be added to a transaction.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.