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

# NFT/Token Gating

<Card title="Recommended: JavaScript SDK for React Native" icon="react" color="#4779FE">
  While this SDK is still supported, we recommend using newer [JavaScript SDK](/docs/javascript/reference/react-native-quickstart), which is optimized for React Native, but also comes with a host of other benefits.
</Card>

For concepts, dashboard setup, and the two outcomes (block vs scope), see [Access Control](/docs/overview/access-control/overview) and [Gates](/docs/overview/access-control/gates). This page covers React Native–specific usage including scopes and UI.

Use checks to read scopes and adjust your UI. See scope examples below.

### Examples

**Block site for users without specific amount of tokens.**

Gate setup:

* User needs to have at least 1 SHIB to enter the site.

<Frame>
  <img src="https://mintcdn.com/dynamic-docs-testing/UE-XnPYRwgMqTMGV/images/dashboard/dashboard-access-gate-shib-config.png?fit=max&auto=format&n=UE-XnPYRwgMqTMGV&q=85&s=03d4a365297f33ed7f8e699059937517" width="1168" height="431" data-path="images/dashboard/dashboard-access-gate-shib-config.png" />
</Frame>

* User is blocked in the SDK UI:

<Frame>
  <img src="https://mintcdn.com/dynamic-docs-testing/L6Baf9nHRMN5_MjI/images/widget/widget-token-gate-rejection.png?fit=max&auto=format&n=L6Baf9nHRMN5_MjI&q=85&s=75fc185a3d9f7c91f675d330c9533fe5" width="373" height="299" data-path="images/widget/widget-token-gate-rejection.png" />
</Frame>

**Add scope for users' JWT when having specific NFT**

Gate setup:

* User needs to have specific NFT to have `admin` scope

<Frame>
  <img src="https://mintcdn.com/dynamic-docs-testing/UE-XnPYRwgMqTMGV/images/dashboard/dashboard-access-gate-scope-config.png?fit=max&auto=format&n=UE-XnPYRwgMqTMGV&q=85&s=4e7f38960c967e211619b84cc02bc66f" width="1128" height="439" data-path="images/dashboard/dashboard-access-gate-scope-config.png" />
</Frame>

* User has an `admin` scope added to the `jwt`
  ```Text json theme={"system"}
  {
    ...
    "scope": "admin",
    ...
  }
  ```

### Working with scopes
