> ## 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.

# Remove Policy

> Low-level instruction to remove a Squads instruction constraint policy from the vault

# createRemovePolicyInstruction

Builds a raw instruction to remove a Squads instruction constraint policy from the vault. Once removed, the vault's smart account will no longer be able to execute transactions matching the removed policy. Requires the manager role.

## Usage

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

const ix = createRemovePolicyInstruction({
  payer: wallet.publicKey,
  vault: vaultAddress,
  manager: managerPublicKey,
  squadsSettings: squadsSettingsPda,
  squadsSettingsTransaction: squadsSettingsTransactionPda,
  squadsProposal: squadsProposalPda,
  squadsPolicy: squadsPolicyPda,
  squadsProgram: SQUADS_PROGRAM_ID,
  systemProgram: SYSTEM_PROGRAM_ID,
});
```

## Accounts

| Name                        | Signer | Writable | Description                     |
| --------------------------- | ------ | -------- | ------------------------------- |
| `payer`                     | Yes    | Yes      | Fee payer for the transaction   |
| `vault`                     | No     | No       | The Strategy Vault account      |
| `manager`                   | Yes    | No       | The vault manager authority     |
| `squadsSettings`            | No     | Yes      | Squads settings account         |
| `squadsSettingsTransaction` | No     | Yes      | Squads settings transaction PDA |
| `squadsProposal`            | No     | Yes      | Squads proposal PDA             |
| `squadsPolicy`              | No     | Yes      | Squads policy PDA to remove     |
| `squadsProgram`             | No     | No       | Squads v4 program               |
| `systemProgram`             | No     | No       | System program                  |

## Returns

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