# Access Requests block

> Just-in-Time Access Request Queue with Inline Approvals and Policy Review

Admin grid to review, approve, or deny just-in-time access requests with inline decisions, bulk approve, and status/approver filters, plus a policy-check detail sheet. ReUI DataGrid, Badge; shadcn Sheet, Button. Access control, permission approval.

- Type: Pro block
- Category: [Users](https://web.dev.reui.io/blocks/solutions/users.md)
- Page: https://web.dev.reui.io/blocks/solutions/users/solution-users-5
- MCP: `get_block("solution-users-5")`
- Built with: Avatar, Badge, Button, Card, Checkbox, Data Grid, Dropdown Menu, Input Group, Label, Popover, Scroll Area, Select, Separator, Sheet, Tooltip
- Installs with a ReUI Pro or Ultimate license; setup: https://web.dev.reui.io/docs/license-setup

## Best for

Access grants requested for 4h up to permanent, each with a justification, pass, warn or fail policy checks and a blocked count

## Agent notes

- `ACCESS_REQUESTS` is the sample queue, and each request's `policyChecks` hold the pass, warn or fail results as fixed data
- `handleApprove` and `handleApproveSelected` never read `policyChecks`, so a request with a failing check can still be approved
- The Policy settings button only calls `toast` with fixed text and opens no policy editor

## When not to use

- Reviewing actions an AI assistant proposes, with risk tiers and SLA clocks: use [Action Approval Inbox](https://web.dev.reui.io/blocks/solutions/agents/solution-agents-5.md) (`get_block("solution-agents-5")`)
- Rows that expand inline to reveal check results rather than opening a side sheet: use [Release Approvals](https://web.dev.reui.io/blocks/data-grid/expansion/data-grid-expansion-3.md) (`get_block("data-grid-expansion-3")`)

## Third-party libraries

- TanStack Table v9: [API reference](https://tanstack.com/table/v9/docs/framework/react/reference/index), [docs](https://tanstack.com/table/v9/docs/framework/react/quick-start)
- Sonner v2: [API reference](https://sonner.emilkowal.ski/toast), [docs](https://sonner.emilkowal.ski/getting-started)

## Install

```bash
npx shadcn@latest add @reui/solution-users-5
```

## About Users blocks

### When to use

- Workspace admin pages for people: a members directory, one member's record and the invitations queue
- Access control work: a role by permission matrix, just in time access requests and a day grouped audit log
- Enterprise sign-in settings for SSO providers, SCIM provisioning, 2FA, session limits and email domains

### When not to use

- A person editing their own account: avatar, name, email, password and notification choices: use the [Profile blocks](https://web.dev.reui.io/blocks/application/profile.md)
- A table section of your own records, with no roles, sign-in methods or invites around it: use the [Base blocks](https://web.dev.reui.io/blocks/data-grid/base.md)
- Notification, appearance or integration options, with no people or SSO to manage: use the [Settings blocks](https://web.dev.reui.io/blocks/application/settings.md)

### Agent notes

- Every page.tsx sets a padded `min-h-svh` wrapper, and page.tsx or the root caps the max width; drop both inside your app shell
- Feedback goes through sonner `toast` and no block mounts a Toaster, so render one in your layout or no message appears
- No block sends a request or writes storage: state sits in `useState` or uncontrolled inputs, so every change resets on reload

Every ReUI item has a twin like this one; the index is https://web.dev.reui.io/llms.txt. Agents with the ReUI MCP (https://web.dev.reui.io/docs/mcp) get the same guidance from the getters named above.
