> ## Documentation Index
> Fetch the complete documentation index at: https://bruno-a6972042-mintlify-c74cb75a.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Command Options

Bruno CLI provides a variety of command options to help you customize your API testing and execution process. These options allow you to specify environments, configure reports, handle security, and much more. Below is a comprehensive list of available options:

## Options

To use options, add them to the bru run command after you specify the collection file or folder:

```bash theme={null}
bru run [options]
```

To view a list of available options for Bruno CLI, run the following command:

```bash theme={null}
bru run -h
```

### Basic options

| Option         | Details                   |
| -------------- | ------------------------- |
| `-h`, `--help` | Output usage information  |
| `--version`    | Output the version number |

### Setup options

| Option                       | Details                                                                                                                                                                                                                 |
| ---------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `--env [string]`             | Specify environment to run with                                                                                                                                                                                         |
| `--global-env [string]`      | Specify global/workspace-level environment to run with                                                                                                                                                                  |
| `--workspace-path [string]`  | Specify workspace path when collection is not located at the root                                                                                                                                                       |
| `--env-var [string]`         | Overwrite a single environment variable, multiple usages possible                                                                                                                                                       |
| `--env-file [string]`        | Path to the environment file (.bru or .json) to use for the collection run                                                                                                                                              |
| `--sandbox [string]`         | Specifies the JavaScript execution sandbox mode: `safe` (default) or `developer`. <br /><br /> **Note:** Starting from v3.0.0, the default is "safe" mode. Use `--sandbox=developer` to enable Developer Mode features. |
| `--csv-file-path`            | CSV file to run the collection with                                                                                                                                                                                     |
| `--json-file-path`           | Path to the JSON data file                                                                                                                                                                                              |
| `--iteration-count [number]` | Number of times to run the collection                                                                                                                                                                                   |
| `-r`                         | Indicates a recursive run \[boolean] \[default: false]                                                                                                                                                                  |

### Request options

| Option                    | Details                                                                 |
| ------------------------- | ----------------------------------------------------------------------- |
| `--delay [number]`        | Delay between each requests (in milliseconds)                           |
| `--tests-only`            | Only run requests that have tests or active assertions                  |
| `--bail`                  | Stop execution after a failure of a request, test, or assertion         |
| `--tags [string]`         | Only run requests that have ALL of the specified tags (comma-separated) |
| `--exclude-tags [string]` | Skip requests that have ANY of the specified tags (comma-separated)     |
| `--parallel`              | Run requests in parallel order                                          |

### Secret Manager options

| Option                        | Details                                                                                                                                                                                                                  |
| ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `--secrets-env-file [string]` | Path to a dotenv file containing credentials for an external secret manager (HashiCorp Vault, AWS Secrets Manager, or Azure Key Vault). Values are injected at runtime and are never written to disk or printed in logs. |

The `--secrets-env-file` flag is used together with `--env` when your environment file has an `externalSecrets` block configured. See [Secret Managers](/bru-cli/secret-managers) for credential file formats and full usage examples for each provider.

```bash theme={null}
bru run collection/ --env Production --secrets-env-file ./secrets.env
```

### SSL & Security options

| Option                 | Details                                                                                              |
| ---------------------- | ---------------------------------------------------------------------------------------------------- |
| `--cacert [string]`    | CA certificate to verify peer against                                                                |
| `--ignore-truststore`  | Use custom CA certificate exclusively and ignore default truststore \[boolean] \[default: false]     |
| `--client-cert-config` | Path to the Client certificate config file used for securing the connection                          |
| `--insecure`           | Allow insecure server connections                                                                    |
| `--disable-cookies`    | Disable automatic saving and sending of cookies between requests \[boolean] \[default: false]        |
| `--noproxy`            | Disable all proxy settings (both collection-defined and system proxies) \[boolean] \[default: false] |

### Output & Reporting options

| Option                          | Details                                                                                     |
| ------------------------------- | ------------------------------------------------------------------------------------------- |
| `-o`, `--output [string]`       | **\[DEPRECATED]** Path to write file results to. Use reporter options instead               |
| `-f`, `--format [string]`       | **\[DEPRECATED]** Format of the file results. Use reporter options instead                  |
| `--reporter-json [string]`      | Path to generate a JSON report                                                              |
| `--reporter-junit [string]`     | Path to generate a JUnit report                                                             |
| `--reporter-html [string]`      | Path to generate an HTML report                                                             |
| `--reporter-skip-all-headers`   | Skip all headers in the report \[boolean] \[default: false]                                 |
| `--reporter-skip-headers`       | Skip specific headers in the report \[array] \[default: \[]]                                |
| `--reporter-skip-request-body`  | Omits request bodies from reports \[boolean] \[default: false]                              |
| `--reporter-skip-response-body` | Omits response bodies from reports \[boolean] \[default: false]                             |
| `--reporter-skip-body`          | Shorthand: omits both request and response bodies from reports \[boolean] \[default: false] |

### Import options

Used with `bru import openapi` (and related import commands). Run `bru import openapi -h` for the full list.

| Option                             | Details                                                                                                                                                             |
| ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `-s`, `--source [string]`          | Path or URL to the OpenAPI specification (YAML or JSON)                                                                                                             |
| `-o`, `--output [string]`          | Output **directory** for a collection on disk (folder import)                                                                                                       |
| `-f`, `--output-file [string]`     | Output **file** path for a single Bruno collection JSON export                                                                                                      |
| `-n`, `--collection-name [string]` | Name for the imported collection                                                                                                                                    |
| `--collection-format [string]`     | **OpenAPI folder import only:** `bru` (classic `.bru` files) or `opencollection` ([OpenCollection YAML](/opencollection-yaml/overview)). Default: `opencollection`. |
| `--insecure`                       | Skip TLS verification when `--source` is an `https://` URL                                                                                                          |
| `-g`, `--group-by [string]`        | OpenAPI only: group requests by `tags` or `path` (default: `tags`)                                                                                                  |

## Examples

This will run all the requests in your collection.

```bash copy theme={null}
bru run
```

You can also run specific files or folders:

```bash copy theme={null}
# Run a single file
bru run request.bru

# Run multiple files
bru run request1.bru request2.bru

# Run a folder
bru run <folder-name>

# Run multiple folders
bru run <folder-1-name> <folder-2-name>

# Mix of files and folders
bru run <folder-1-name> request1.bru <folder-2-name> request2.bru
```

## Next Steps

Now that you're familiar with the command options, explore these guides to get the most out of Bruno CLI:

1. [Command Examples](/bru-cli/runCollection) - Learn how to execute your collections with the above command options
2. [Import Data](/bru-cli/import) - Import OpenAPI and WSDL specifications into Bruno collections
3. [Generate Reports](/bru-cli/builtInReporters) - Create detailed test reports in multiple formats
4. [Secret Managers](/bru-cli/secret-managers) - Fetch secrets from HashiCorp Vault, AWS Secrets Manager, or Azure Key Vault at runtime

***

## Support

If you encounter any issues or have any feedback or suggestions, please raise them on our [GitHub repository <strong><sup>↗</sup></strong>](https://github.com/usebruno/bruno)
