---
title: "infisical secrets"
description: "Perform CRUD operations with Infisical secrets"
---
```
infisical secrets
```
## Description
This command enables you to perform CRUD (create, read, update, delete) operations on secrets within your Infisical project. With it, you can view, create, update, and delete secrets in your environment.
### Sub-commands
Use this command to print out all of the secrets in your project
```bash
$ infisical secrets
```
### Environment variables
Used to fetch secrets via a [machine identity](/documentation/platform/identities/machine-identities) apposed to logged in credentials. Simply, export this variable in the terminal before running this command.
```bash
# Example
export INFISICAL_TOKEN=$(infisical login --method=universal-auth --client-id= --client-secret= --silent --plain) # --plain flag will output only the token, so it can be fed to an environment variable. --silent will disable any update messages.
```
Alternatively, you may use service tokens.
Please note, however, that service tokens are being deprecated in favor of [machine identities](/documentation/platform/identities/machine-identities). They will be removed in the future in accordance with the deprecation notice and timeline stated [here](https://infisical.com/blog/deprecating-api-keys).
```bash
# Example
export INFISICAL_TOKEN=
```
Used to disable the check for new CLI versions. This can improve the time it takes to run this command. Recommended for production environments.
To use, simply export this variable in the terminal before running this command.
```bash
# Example
export INFISICAL_DISABLE_UPDATE_CHECK=true
```
### Flags
Parse shell parameter expansions in your secrets
Default value: `true`
The project ID to fetch secrets from. This is required when using a machine identity to authenticate.
```bash
# Example
infisical secrets --projectId=
```
Used to select the environment name on which actions should be taken on
Default value: `dev`
The `--path` flag indicates which project folder secrets will be injected from.
```bash
# Example
infisical secrets --path="/" --env=dev
```
This command allows you selectively print the requested secrets by name
```bash
$ infisical secrets get ...
# Example
$ infisical secrets get DOMAIN
```
### Flags
Used to select the environment name on which actions should be taken on
Default value: `dev`
Used to print the plain value of a single requested secret without any table style.
Default value: `false`
Example: `infisical secrets get DOMAIN --raw-value`
When running in CI/CD environments or in a script, set `INFISICAL_DISABLE_UPDATE_CHECK` env to `true`. This will help hide any CLI update messages and only show the secret value.
This command allows you to set or update secrets in your environment. If the secret key provided already exists, its value will be updated with the new value.
If the secret key does not exist, a new secret will be created using both the key and value provided.
```bash
$ infisical secrets set ...
## Example
$ infisical secrets set STRIPE_API_KEY=sjdgwkeudyjwe DOMAIN=example.com HASH=jebhfbwe
```
### Flags
Used to select the environment name on which actions should be taken on
Default value: `dev`
Used to select the project folder in which the secrets will be set. This is useful when creating new secrets under a particular path.
```bash
# Example
infisical secrets set DOMAIN=example.com --path="common/backend"
```
This command allows you to delete secrets by their name(s).
```bash
$ infisical secrets delete ...
## Example
$ infisical secrets delete STRIPE_API_KEY DOMAIN HASH
```
### Flags
Used to select the environment name on which actions should be taken on
Default value: `dev`
The `--path` flag indicates which project folder secrets will be injected from.
```bash
# Example
infisical secrets delete ... --path="/"
```
This command allows you to fetch, create and delete folders from within a path from a given project.
```bash
$ infisical secrets folders
```
### sub commands
Used to fetch all folders within a path in a given project
```
infisical secrets folders get --path=/some/path/to/folder
```
#### Flags
The path from where folders should be fetched from
Default value: `/`
Fetch folders using a [machine identity](/documentation/platform/identities/machine-identities) access token.
Default value: ``
Used to create a folder by name within a path.
```
infisical secrets folders create --path=/some/path/to/folder --name=folder-name
```
### Flags
Path to where the folder should be created
Default value: `/`
Name of the folder to be created in selected `--path`
Default value: ``
Used to delete a folder by name within a path.
```
infisical secrets folders delete --path=/some/path/to/folder --name=folder-name
```
### Flags
Path to where the folder should be created
Default value: `/`
Name of the folder to be deleted within selected `--path`
Default value: ``
This command allows you to generate an example .env file from your secrets and with their associated comments and tags. This is useful when you would like to let
others who work on the project but do not use Infisical become aware of the required environment variables and their intended values.
To place default values in your example .env file, you can simply include the syntax `DEFAULT:` within your secret's comment in Infisical. This will result in the specified value being extracted and utilized as the default.
```bash
$ infisical secrets generate-example-env
## Example
$ infisical secrets generate-example-env > .example-env
```
### Flags
Used to select the environment name on which actions should be taken on
Default value: `dev`