Skip to main content
Collection Settings in Bruno allow you to configure options that apply to all requests in a collection. Settings are managed through the CollectionSettings component and stored in the collection.bru file.

Accessing Collection Settings

1

Open Collection Actions

Click the three-dot menu next to your collection name in the sidebar.
2

Select 'Settings'

Choose “Settings” from the dropdown menu.
3

Navigate Between Tabs

Use the tabs to configure different aspects of your collection.
The CollectionSettings component provides multiple tabs, each managing specific configuration:

Overview

Collection metadata and documentation

Headers

Default HTTP headers for all requests

Vars

Collection-level variables

Auth

Collection-wide authentication

Script

Pre-request and post-response scripts

Tests

Collection-level test suite

Presets

URL and request presets

Proxy

HTTP/HTTPS proxy configuration

Client Certificates

SSL/TLS client certificates

Protobuf

Protocol Buffers for gRPC

Overview Tab

The Overview component displays collection metadata and documentation.

Collection Documentation

From the test suite (bruno-tests/collection/collection.bru):
Use the docs section to provide an overview of your API collection, including purpose, authentication requirements, and usage guidelines.

Headers Tab

The Headers component allows you to configure HTTP headers that will be sent with all requests in the collection.

Configuration

string
Header name (e.g., “User-Agent”, “X-API-Version”)
string
Header value. Supports variable interpolation: {{variable}}
boolean
default:true
Toggle to enable/disable headers without deleting them

Example

From the test suite:
collection.bru

Header Count Indicator

The Headers tab shows the number of active headers:
From CollectionSettings component
Common collection-level headers include API version headers, custom user agents, or tracking headers that should be sent with every request.

Vars Tab

The Vars component manages collection-level variables that can be set and retrieved in scripts.

Variable Types

Variables available before the request is sent.

Variable Scope

Accessible throughout the entire collection. Set with bru.setVar() and retrieved with bru.getVar().
Environment-specific values. Set with bru.setEnvVar() and retrieved with bru.getEnvVar().
Request-specific variables that don’t persist beyond the request.

Active Vars Count

The Vars tab displays the count of enabled variables:

Auth Tab

The Auth component configures authentication that applies to all requests set to “Inherit” mode.

Supported Auth Types

All authentication modes are available at the collection level:
  • AWS Sig v4 (awsv4)
  • Basic Auth (basic)
  • Bearer Token (bearer)
  • Digest Auth (digest)
  • NTLM Auth (ntlm)
  • OAuth 2.0 (oauth2)
  • WSSE Auth (wsse)
  • API Key (apikey)

Configuration Example

collection.bru

Inheritance Info

The Auth tab displays this helpful message:
Individual requests can override collection auth by selecting a different auth mode instead of “Inherit”.
See the Authentication guide for detailed information on each auth type.

Script Tab

The Script component allows you to configure collection-level pre-request and post-response scripts.

Collection Scripts Example

From the test suite:
collection.bru

Script Execution Order

When a request is sent:
  1. Collection pre-request script runs first
  2. Folder pre-request script runs next (if applicable)
  3. Request pre-request script runs last
  4. HTTP request is sent
  5. Request post-response script runs first
  6. Folder post-response script runs next
  7. Collection post-response script runs last

Use Cases for Collection Scripts

See the Scripts guide for more information.

Tests Tab

The Test component allows you to write tests that run for every request in the collection.

Collection-Level Tests Example

collection.bru

When to Use Collection Tests

  • Validate response time across all endpoints
  • Check for required headers (CORS, security headers)
  • Verify authentication is working collection-wide
  • Ensure consistent error response formats
See the Tests guide for detailed testing information.

Presets Tab

The Presets component allows you to configure default request settings.
string
Default base URL for all requests. Can be overridden per request.

Preset Indicator

Proxy Tab

The ProxySettings component configures HTTP/HTTPS proxy settings.

Proxy Configuration

string
required
Proxy server hostname or IP address
number
required
Proxy server port (e.g., 8080, 3128)
enum
Proxy protocol: http or https
object
Optional proxy authentication:
  • username: Proxy username
  • password: Proxy password

Proxy Status Indicator

Proxy settings apply to all requests in the collection. Ensure your proxy is properly configured to avoid request failures.

Client Certificates Tab

The ClientCertSettings component manages SSL/TLS client certificates for mutual authentication.

Certificate Configuration

string
required
Domain or host for which the certificate applies (e.g., “api.example.com”)
string
required
Path to the client certificate file (.crt, .pem)
string
required
Path to the private key file (.key, .pem)
string
Optional passphrase if the private key is encrypted

Multiple Certificates

You can configure multiple client certificates for different domains:
From CollectionSettings
Client certificates are useful for enterprise APIs that require mutual TLS authentication.

Protobuf Tab

The Protobuf component manages Protocol Buffer definitions for gRPC requests.

Protobuf Configuration

array
Array of .proto file paths relative to the collection directory

Example

Directory Structure
In Collection Settings → Protobuf:

Protobuf Status

See the Request Types guide for more on gRPC requests.

Settings Storage

All collection settings are stored in the collection.bru file at the root of your collection folder:
Complete Example

Inheritance Hierarchy

Bruno follows this inheritance hierarchy:
1

Collection Level

Settings in collection.bru apply to all requests.
2

Folder Level

Folder settings override collection settings for requests in that folder.
3

Request Level

Request-specific settings override both folder and collection settings.

Inheritance Behavior by Setting Type

Additive: Collection headers + Folder headers + Request headersDuplicate headers are overridden (request > folder > collection)

Best Practices

Configure auth once at the collection level and use “Inherit” in requests to avoid duplication.
Put headers that apply to all requests (API version, user agent) at the collection level.
Use collection scripts for token refresh, request signing, or logging that applies globally.
Use the docs section to provide context, auth requirements, and usage guidelines.
Use collection-level tests for response time, status codes, and header validations that apply everywhere.
Use {{variables}} in collection settings and configure them per environment.

Next Steps

Authentication

Configure collection-level authentication

Scripts

Write collection-level scripts

Tests

Create collection-level tests

Environments

Manage environment variables