How can I set a custom HTTP header using cURL

David Y.
jump to solution

The Problem

How can I set a custom HTTP header on a request sent using cURL?

The Solution

We can do this using cURL’s -H/--header flag, which allows us to specify an HTTP header to be included in the request we’re sending.

curl --header "X-MyCustomHeader: HeaderValue" sentry.io

If we need to add multiple custom headers to the request, we can do this with multiple --header flags:

curl --header "X-MyCustomHeader: HeaderValue" --header "X-AnotherHeader: Value" sentry.io

To confirm that our request looks as we expect it to, we can have cURL print it out by providing the -v/--verbose flag as well:

curl --header "X-MyCustomHeader: HeaderValue" -v sentry.io

The above command will show an HTTP request resembling the following:

> GET / HTTP/1.1
> Host: sentry.io
> User-Agent: curl/8.1.2
> Accept: */*
> X-MyCustomHeader: HeaderValue

More information about cURL can be found by perusing its manual page, which is accessible on the cURL website or through the command man curl.

Concatenate string variables in Bash
David Y.
Sending Cookies with Curl
Naveera A.

Considered "not bad" by 4 million developers and more than 150,000 organizations worldwide, Sentry provides code-level observability to many of the world's best-known companies like Disney, Peloton, Cloudflare, Eventbrite, Slack, Supercell, and Rockstar Games. Each month we process billions of exceptions from the most popular products on the internet.

Sentry