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

# backenduser:grant

> Grant permissions, or superuser status, to an existing backend user

Grants permissions, or superuser status, to a backend user who already exists. The user keeps every permission they
already hold; this command never removes one.

Admins on the Backend Users page can only grant permissions they hold themselves. When a feature adds new permissions,
nobody but a superuser can grant them at first. Use this command when no admin on the site can sign in as a superuser.

**Arguments:**

| Argument | Required | Description |
| - | - | - |
| `username` | Yes | Login of the backend user to grant to |
| `permissions` | No | One or more permission codes to grant, separated by spaces. Only permissions shown on the Backend Users page are accepted. The notice on that page lists the code beside each permission an admin cannot grant |

**Options:**

| Option | Description |
| - | - |
| `--all-manageable` | Grant every permission that can be managed on the Backend Users page, the same set `backenduser:create` gives a new user. |
| `--superuser` | Make the user a superuser. A superuser holds every permission, including ones that features add later. |

Give at least one permission code, `--all-manageable`, or `--superuser`. If the login does not exist, or any permission
code is unknown or not shown on the Backend Users page, the command changes nothing, lists the codes it accepts, and
exits with an error. A feature registers its permissions only while it is turned on in Portal Settings, so turn the
feature on before granting its permissions.

Admins on the Backend Users page can only edit a user whose permissions they also hold. After you grant a permission
to one admin, every admin who does not hold it can no longer edit that admin's account. Grant the permission to every
admin who manages users, or use `--superuser` instead.

Every change is recorded in the usage log with `system` as the user.

**Examples:**

Grant the Manage API Relay permission after turning on Integration Automation:

```bash theme={null}
php artisan backenduser:grant admin interworks.integration.manage_api_relay
```

Bring an existing admin up to date with every manageable permission:

```bash theme={null}
php artisan backenduser:grant admin --all-manageable
```

Make an admin a superuser:

```bash theme={null}
php artisan backenduser:grant admin --superuser
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.