# Locations

> Manage all locations in your system.

## Identity

| Field | Value |
| --- | --- |
| Route | `/admin/locations` |
| Area | admin |
| Audience | Panel administrators (requires admin permissions) |
| Component | `LocationsPage` |
| Source | `src/app/(app)/admin/locations/page.tsx` |
| Dynamic | no |

| Title i18n key | `admin.locations.title` |
| Description i18n key | `admin.locations.subtitle` |
| Permission | `admin.locations.view` |
| Nav group | `infrastructure` |
| Sidebar label | Locations & Nodes |

## Summary (for AI)

**Locations** Manage all locations in your system. Sidebar label: “Locations & Nodes”. Requires permission `admin.locations.view`. Key UI: Location type is permanent and was set when this location was created.; Create Location; Create your first location to get started; Edit location; View location nodes; Confirm deletion.

## How to guide users

1. Open Admin sidebar.
2. Open **Locations & Nodes**, then **Locations**.
3. Direct URL: `/admin/locations`.
4. User needs permission `admin.locations.view` (or `admin.root`).

## Sections on this page

- What are Locations?
- Examples
- Getting Started

## Notable UI actions / labels

- Location type is permanent and was set when this location was created.
- Create Location
- Create your first location to get started
- Edit location
- View location nodes
- Confirm deletion
- Confirm
- Cancel deletion
- Delete location
- Edit Location
- Description
- Fill in the details to create a new location.

## Widget slugs

- [`admin-locations`](../widgets/admin-locations.md)

## Related APIs / hooks

- `/api/admin/locations`
- `/api/system/country-codes`

Hooks: `usePersistedListFilters`, `usePluginWidgets`
