# Admin API

Admins manage the platform, locations, and owner verification.

## Role requirements

- Most admin routes require the `admin` or `super_admin` role.
- Creating another admin requires the `super_admin` role.

## Dashboard

| Method | Path | Description |
|--------|------|-------------|
| GET | `/api/v1/admin/dashboard` | Revenue and user-growth summary with filters. |

## Reservations & buildings

| Method | Path | Description |
|--------|------|-------------|
| GET | `/api/v1/admin/reservations` | List all reservations. |
| GET | `/api/v1/admin/buildings` | List all buildings. |

## Locations

Admins have full CRUD over locations. Public read-only endpoints are documented in [`customer.md`](customer.md).

| Method | Path | Description |
|--------|------|-------------|
| POST | `/api/v1/admin/cities` | Create a city. |
| PUT | `/api/v1/admin/cities/{city}` | Update a city. |
| DELETE | `/api/v1/admin/cities/{city}` | Delete a city. |
| POST | `/api/v1/admin/countries` | Create a country. |
| PUT | `/api/v1/admin/countries/{country}` | Update a country. |
| DELETE | `/api/v1/admin/countries/{country}` | Delete a country. |
| POST | `/api/v1/admin/currencies` | Create a currency. |
| PUT | `/api/v1/admin/currencies/{currency}` | Update a currency. |
| DELETE | `/api/v1/admin/currencies/{currency}` | Delete a currency. |
| POST | `/api/v1/admin/regions` | Create a region. |
| PUT | `/api/v1/admin/regions/{region}` | Update a region. |
| DELETE | `/api/v1/admin/regions/{region}` | Delete a region. |

## Users & owners

| Method | Path | Description |
|--------|------|-------------|
| GET | `/api/v1/owners` | List owners. |
| POST | `/api/v1/owners/{owner}/verify` | Verify an owner profile. |
| GET | `/api/v1/admin/employees` | List all employees. |
| GET | `/api/v1/admin/notifications` | List all notifications. |
| POST | `/api/v1/admins` | Create a new admin (`super_admin` only). |
| GET | `/api/v1/customers` | List customers. |
| DELETE | `/api/v1/customers/{customer}` | Delete a customer. |

For detailed request/response schemas, generate Laravel Request Docs (see [`auto-generated.md`](../auto-generated.md)).
