[Support Guide] Netlify Support asked for the 'x-nf-request-id' header? What is it and how do I find it?

What is the x-nf-request-id header?

Web servers and web browser communicate using a protocal HTTP - Hypertext Transfer Protocol. Both web browsers and web servers use something called headers as part of this protocol.

The headers that web browsers send are called “request headers” because the browser in making an “HTTP request”.

The web servers headers are called “response headers” because web servers send an “HTTP response”.

Netlify creates a unique HTTP response header for each request it replies to - the x-nf-request-id response header. Even if the response is a 404 or a 301 redirect status - Netlify’s system adds this header.

Why is the x-nf-request-id header important? Why did Netlify Support ask for it?

This header, again, is unique for each individual HTTP response. Using this one header, our support team can find the exact HTTP response (and request) associated with it.

We could ask you for you for the following details to find the HTTP request and response:

  • the complete URL requested
  • the IP address for the system making the request
  • the IP address for the CDN node that responded
  • the day of the request
  • the time of the request
  • the timezone the time is in

Instead, we just ask for the x-nf-request-id header and we then don’t need the details above. The header alone allows us to search our logs and find the exact HTTP response (and the request which generated it).

To summarize, it is much less work (in most cases) for both the person using Netlify and our support team to ask for the x-nf-request-id instead of the list of details above.

How do I find the x-nf-request-id header?

There are many ways to see the HTTP request/response header for your HTTP requests. The simplest is probably to use your web browsers “devtools” (developer tools) to see the headers.

1. Open the developer tools for your browser

For each browser, they may be a different way to do this. As I am often using Chrome for testing, F12 will open the network tab of devtools automatically.

Links to documentation about how to open dev tools for various web browsers:

2. Click on the ‘Network’ tab

Once you have devtools open, click on the network tab of the devtools.

There won’t be any data there yet. This header information if only available for HTTP requests which occur after the devtools are opened.

3. Generate the HTTP request

Now, it is time to generate HTTP traffic with the devtools open. This can be done by navigating to the URL where are are trying to capture this header or simply by refreshing the page if you are already at the URL in question.

4. Find the header

When web pages load, there are typically many HTTP request for multiple assets. Find the request which is of interest. This might be a particular file or it might be the base URL itself.

Click on the request you are interested in and find the http response (not request) headers. Each devtools is slightly different so please consult your browser’s documentation if there are questions about how to find this.

For example, in Chrome, after clicking on the request - then click on the “Headers” tab to see these headers.

5. Copy/paste (PLEASE NO SCREENSHOTS!!!) the x-nf-request-id header

Yes, I wrote “please no screenshot” in all capitals and used three escalation points. Please copy/paste the text for the x-nf-request-id.

Why copy/paste? Well, to search for your HTTP request/response, we need to enter this as text into a tool. If you send us a screenshot, we need to type this forty-four character string in by hand. As these are hexadecimal strings, they are not “human readable” in a traditional sense.

Please note we will be unable to assist if we can’t copy/paste the x-nf-request-id

Now, I’m going to almost break my own rule so show what these headers look like. Yes, I’m included screenshots below. Again, though, no one is going to need to type these headers in so I’m not (technically) breaking any rules. :wink:

As always, if there are questions about this, please let us know with a comment here.




1 Like
Looks like you've followed a broken link or entered a URL that doesn't exist on this site
Weird issue with SSL certificate expiry
DNS changes not always correct after 48 hours
Permanently forward Netlify subdomain to custom TLD
[Support Guide] SSL / TLS Certificate Provisioning, custom domains
Custom domain slower than netlify subdomain
Proxying POST request through netlify?
Website not appearing even though DNS is configured correctly
SSL certificate error when visiting my site
Do DNS records update automatically when you add a domain you own to a Netlify site?
My gatsby site is slow, but when i try it in gatsby cloud it is fast
Netlify publishes old website after Github update (continuous deployment)
Netlify Functions speed
Nodemailer works on local, but not works without displayunlockcaptcha on Netlify
SSL and certificates stopped working
Apex domain with http(s) protocol not redirecting to the WWW domain
Changes coming to Netlify site URLs
Changes not updated on CDN after build + live deploy
Cache not clearing on specific files
502 error on production even though the response times are well below 10 seconds
Bug Fixed: 6+ second TTFB on certain assets and paths
Compression when using Proxy to another Service
Multiple A records SSL error (but only one A record in Namecheap)
Bug Fixed: 6+ second TTFB on certain assets and paths
Site can't be reached
Rewrite subfolder ignored
Site down - showing 'Origin Error'
Site often reported as down
Redirect from Netlify subdomain to custom primary domain not working
Callback functions
HTTP 403 from Sydney since 10:55am
Bug Fixed: 6+ second TTFB on certain assets and paths
Redirect running despite shadowed file existing in deploying
Secure Connection Failed, 2 times this month!
"404 Not found" after connecting custom domain
_redirect but keep the same origin (transparent)
Direct file access not working
Netlify answers slowly on static file access (after deploy?)
Site it's not beign updated for some users
Redirect running despite shadowed file existing in deploying
Disabling X-ROBOTS-TAG header on hosted site
Split problem with manifest.webmanifest file
Firefox not respecting custom headers set
DNS zone problem that I cannot solve
Primary domain cache problem
Safari can't find server
Changing region and increasing timeout seconds for netlify functions
Cache issue on Netlify?
Lost cookies in proxy redirect
Slow TTFB for main.js (Vue)
Published files randomly unavailable after deploy
PDF creation function returns RangeError when deployed
Add support for "Range" header for Large Media files
Site not updating
"Check DNS configuration" for apex domain
Godaddy Subdomain forward to netlify site (mobile site showing up as desktop)
Can't open app.netlify.com
Inquiry: Why is my custom domain going up and down with periodic "page not found" error?
Functions logs not loading
Can't call lambda function with DELETE or PUT methods
Large media file download starts ok but then fails
Large media file download starts ok but then fails
Very slow (*static* page takes more than one minute to load)
KeyCDN test shows "Content-length" as zero in multiple locations
Netlify not redirecting to HTTPS by default
Non-www to www redirect not working
[Support Guide] Understanding and debugging prerendering
Problem with certificates
Cannot access Netlify sites with Chrome 85
Can't get branch subdomain to work