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

# Admin Dashboard

> Manage your deployed backend with the built-in admin interface.

Every Backdrift project includes an **Admin Dashboard**—a browser-based interface for managing your deployed backend without writing code.

## Accessing the Dashboard

1. Go to your project in Backdrift
2. Click the **Admin** tab
3. Use the built-in dashboard

Or access the generated React frontend at your Amplify URL.

## Features

<CardGroup cols={2}>
  <Card title="Data Browser" icon="table">
    View, create, edit, and delete records for any entity.
  </Card>

  <Card title="User Management" icon="users">
    View registered users, disable accounts, reset passwords.
  </Card>

  <Card title="Jobs Monitor" icon="clock">
    View scheduled jobs, trigger manual runs, see history.
  </Card>

  <Card title="Logs Viewer" icon="file-lines">
    View execution logs from Lambda functions.
  </Card>
</CardGroup>

## Data Browser

Browse and manage data for any entity in your blueprint.

### Viewing Records

* Paginated table view
* Sort by any column
* Filter by field values
* Search across text fields

### Creating Records

1. Click **+ New**
2. Fill in the form (validation included)
3. Click **Create**

The form is auto-generated from your entity schema, including:

* Required field indicators
* Enum dropdowns
* Date pickers
* Foreign key selectors

### Editing Records

1. Click a row to open details
2. Click **Edit**
3. Modify fields
4. Click **Save**

### Deleting Records

1. Select rows with checkboxes
2. Click **Delete Selected**
3. Confirm deletion

<Warning>
  Deletion is permanent. Consider adding soft-delete to your blueprint if you need recovery.
</Warning>

## User Management

View and manage users from your Cognito User Pool.

### User List

| Column     | Description                    |
| ---------- | ------------------------------ |
| Email      | User's email address           |
| Status     | Verified, Unverified, Disabled |
| Created    | Registration date              |
| Last Login | Most recent authentication     |

### Actions

* **Disable User** - Prevent login without deleting
* **Enable User** - Restore access
* **Reset Password** - Send password reset email
* **Delete User** - Permanently remove (careful!)

## Jobs Monitor

View and manage scheduled jobs.

### Job List

| Column   | Description                      |
| -------- | -------------------------------- |
| Name     | Job identifier                   |
| Schedule | Cron expression (human readable) |
| Last Run | Timestamp and status             |
| Next Run | Scheduled next execution         |

### Actions

* **Run Now** - Trigger immediate execution
* **View History** - See past 10 executions
* **View Logs** - Jump to CloudWatch logs

### Execution History

Expand any job to see recent runs:

```
✅ 2024-01-15 00:00:02 (2.3s) - Success
✅ 2024-01-14 00:00:01 (2.1s) - Success
❌ 2024-01-13 00:00:03 (15.2s) - Failed: Connection timeout
✅ 2024-01-12 00:00:01 (2.0s) - Success
```

Click any run to view logs.

## Logs Viewer

View execution logs from Lambda functions.

### Log Streams

Select a function to see its log streams:

* `create-task-handler`
* `list-tasks-handler`
* `job-cleanup-handler`
* `health-handler`

### Log Events

View individual log entries with:

* Timestamp
* Request ID
* Log level (INFO, WARN, ERROR)
* Message

### Filtering

* Filter by time range
* Search by keyword
* Filter by log level

## Multi-Tenant View

In multi-tenant mode, the Admin Dashboard respects tenant isolation:

* **Organization Admins** see only their organization's data
* **Platform Admins** (you) can switch between organizations

### Switching Organizations

1. Click the organization dropdown in the header
2. Select an organization
3. Data browser shows that org's data

## Seeding Data

Populate your database with test data:

1. Go to the **Admin** tab
2. Click **Seed Data**
3. Choose a profile:
   * **Minimal** - Just enough to test
   * **Realistic** - Full sample dataset
   * **Stress Test** - Large volume for performance testing
4. Click **Seed**

<Warning>
  Seeding adds data—it doesn't clear existing records. Run on empty databases or be prepared for duplicates.
</Warning>

## Keyboard Shortcuts

| Shortcut | Action          |
| -------- | --------------- |
| `/`      | Focus search    |
| `n`      | New record      |
| `e`      | Edit selected   |
| `d`      | Delete selected |
| `r`      | Refresh data    |
| `?`      | Show shortcuts  |

<Card title="Seed Data" icon="seedling" href="/operations/seed-data">
  Learn more about populating test data.
</Card>
