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

# NFT and token gating

> Require NFT ownership or a minimum token balance before content, rewards, or access unlock.

Require a holder before access. Holdings change, so ownership is checked at a point in time. Set the contract, the token rule, and how recent the check must be in your published gate.

| Require | Check |
| - | - |
| An NFT from a collection | [`nft-ownership`](/verification/nft-ownership) |
| A minimum token balance | [`token-holding`](/verification/token-holding) |

## Add the gate

```jsx theme={"system"}
import { VerifyGate } from '@proofable/sdk/widgets';

export function HolderContent() {
  return (
    <VerifyGate gateId="gate_your-holder-gate">
      <ProtectedContent />
    </VerifyGate>
  );
}
```

Confirm on your server with `gateCheck` before you grant access. Set a recency window on the gate so a holder who sold does not keep access through an old proof.

[Sell access with one gate](/gates/sell-access) walks through publishing and server checks.


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