Skip to main content
OAuth 1.0 is a protocol that allows applications to make authenticated HTTP requests on behalf of a user without exposing their credentials. Bruno supports the full OAuth 1.0 specification (RFC 5849), including multiple signature methods and flexible parameter placement.

Setting up OAuth 1.0

  1. Open your request.
  2. Navigate to the Auth tab.
  3. Select OAuth 1.0 from the dropdown list and configure the required fields.
oauth1 OAuth 1.0 can be configured at the request, folder, or collection level. When set at the collection or folder level, all child requests that use Inherit as their auth mode will use the shared OAuth 1.0 configuration.

Configuration fields

Core credentials

FieldDescription
Consumer KeyThe application’s consumer key issued by the OAuth provider.
Consumer SecretThe application’s consumer secret. Hidden when using RSA signature methods.
TokenThe access token for the authenticated user.
Token SecretThe access token secret for the authenticated user.

Signature

FieldDescription
Signature MethodThe algorithm used to sign requests. See Supported signature methods.
Private KeyThe PEM private key used for RSA signature methods. Only shown when an RSA method is selected. Can be provided inline or as a file path.
Add Params ToWhere OAuth parameters are placed — Header, Query Params, or Body. Defaults to Header.
Include Body HashWhen enabled, computes and includes an oauth_body_hash parameter for non-form-encoded request bodies.

Advanced

These fields are optional and are hidden in a collapsible section.
FieldDescription
Callback URLThe oauth_callback URL, used during the temporary credentials step of the OAuth 1.0 flow.
VerifierThe oauth_verifier value, used during the token credentials step.
TimestampOverride the auto-generated oauth_timestamp. Leave empty to let Bruno generate it automatically.
NonceOverride the auto-generated oauth_nonce. Leave empty to let Bruno generate it automatically.
VersionThe oauth_version value. Defaults to 1.0.
RealmThe realm parameter included in the Authorization header.
oauth1-advanced
All OAuth 1.0 fields support Bruno variables. For example, you can store your consumer key in an environment variable and reference it as {{consumerKey}}.

Supported signature methods

Bruno supports seven signature methods:
MethodTypeDescription
HMAC-SHA1HMACSigns using HMAC with SHA-1. This is the most common method.
HMAC-SHA256HMACSigns using HMAC with SHA-256.
HMAC-SHA512HMACSigns using HMAC with SHA-512.
RSA-SHA1RSASigns using an RSA private key with SHA-1.
RSA-SHA256RSASigns using an RSA private key with SHA-256.
RSA-SHA512RSASigns using an RSA private key with SHA-512.
PLAINTEXTNoneSends the signing key directly without hashing. Only use over HTTPS.
auth1-sign-method
When using an RSA signature method, you must provide a PEM-formatted private key. The Consumer Secret field is not used with RSA methods.

Parameter placement

You can choose where OAuth parameters are included in your requests:
  • Header (default) — OAuth parameters are sent in the Authorization header, formatted per RFC 5849.
  • Query Params — OAuth parameters are appended to the request URL as query parameters.
  • Body — OAuth parameters are merged into the request body as application/x-www-form-urlencoded parameters.
Body placement requires a form-urlencoded body. If your request uses a different content type, the body will be replaced with OAuth parameters.

CLI support

OAuth 1.0 is fully supported in the Bruno CLI. When you run collections or requests via bru run, OAuth 1.0 authentication is applied automatically to requests that have OAuth 1.0 configured.