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.

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