Skip to content

Why Add Bearer in the Authorization Header?

When designing API authorization—or consuming a third-party API—you often see headers like:

http
Authorization: Bearer Tokenxxxxxx

Have you ever wondered why we don't simply write it as:

http
Authorization: Tokenxxxxxx

The reason goes back to the HTTP/1.0 specification from the W3C. It defines the Authorization header as:

http
Authorization: <type> <authorization-parameters>

So Bearer is the authorization type. Other common types include:

Authorization TypeDescription
BasicUsed for HTTP Basic authentication
BearerCommonly seen with OAuth and JWT
DigestHTTP Digest authentication with MD5 hashing (deprecated)
HOBAHTTP Origin-Bound Authentication (deprecated)
MutualHTTP message signature authentication (deprecated)
NegotiateSPNEGO authentication (deprecated)
SCRAM-SHA-1SCRAM-SHA-1 authentication (deprecated)
SCRAM-SHA-256SCRAM-SHA-256 authentication (deprecated)
vapidVAPID authentication
AWS4-HMAC-SHA256AWS authentication
AWS4-HMAC-SHA256-PAYLOADAWS authentication
MACMAC authentication
NetrcNetrc authentication

Released under the MIT License.