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

# App Variables

> App Variables allow you to store values through the API to be used across installs of an app.

App variables are values that you can store in the API to be used across all
installs of an app.

App variables are meant for sensitive values that you want to manage through the
API, but do not want included in the app as an input or secret. For example, an
API key where you don't want it visible in the app's inputs TOML file as
part of a git-backed repo.

Nuon's API stores app variables in the Nuon data plane which is a PostgreSQL
database with no encryption.

## Defining App Variables

You can create app variables using the CLI.

```sh theme={null}
nuon apps variables create --name=external_api_key --value=b25yYW5nZXRpZ2h0bHlhdHRlbXB0cGxlbnR5cmVhZGRvdWJsZXdlc3RleWVodW50d2g=
```

Once created you should be able to view the default using the CLI.

```sh theme={null}
nuon apps variables list
```

If you no longer need the default, you can delete it using the CLI

```
nuon variables delete --id=app_variable_id
```

## Using App Variables

App variables are included in the install state, and are available in job plans.
Using our example secret named `external_api_key`, you could interpolate it's
value in your app using `{{ .nuon.app.variables.external_api_key }}`.

<Note>
  If you add or update an app variable after an install has been created, you
  will need to update that install's state before the value will be included in
  plans. Running a deploy or sandbox provision will trigger a state update.
</Note>
