🎉 Requestly joins BrowserStack to build the future of application testing. Read more

HTTP Headers

Sec CH UA Arch

HTTP Header

Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.

The HTTP <code>Sec-CH-UA-Arch</code> request header is a user agent client hint which contains the user-agent’s underlying CPU architecture, such as ARM or x86.

This might be used by a server, for example, to select and offer the correct binary format of an executable for a user to download.

Header typeRequest header,
Client hint
Forbidden request headerYes (Sec- prefix)

Syntax

Syntax

http
Sec-CH-UA-Arch: &lt;arch&gt;

Directives

Directives

arch

A string specifying the underlying platform architecture, such as: “x86”, “ARM”, or a list like “[arm64-v8a, armeabi-v7a, armeabi]”.

Example

Using Sec-CH-UA-Arch

A server can request the Sec-CH-UA-Arch header by including the Accept-CH directive in its response, specifying the desired header as a token:

http
HTTP/1.1 200 OK
Accept-CH: Sec-CH-UA-Arch

The client may choose to provide this header in subsequent requests. For example, on a Windows X86-based computer, the client might include the header as shown:

http
GET /my/page HTTP/1.1
Host: example.site

Sec-CH-UA: " Not A;Brand";v="99", "Chromium";v="96", "Google Chrome";v="96"
Sec-CH-UA-Mobile: ?0
Sec-CH-UA-Platform: "Windows"
Sec-CH-UA-Arch: "x86"

Note that the high entropy headers like Sec-CH-UA and Sec-CH-UA-Platform are included automatically, even if not explicitly requested by the server.

How to Modify Header using Requestly

Requestly is a powerful Chrome extension that allows you to modify HTTP headers, including the Sec-CH-UA-Arch header. This is helpful when you want to test how your website or application behaves on different device architectures without needing actual hardware. Steps to Modify the Sec-CH-UA-Arch Header:

  1. Install and open the Requestly Chrome extension. You can find it on the Chrome Web Store.
  2. Create a new rule: Click on “Create Rule” and choose “Modify Headers” from the list of available rule types.
  3. Add a new header modification:
    • Under “Action”, select “Add” or “Override”.
    • In the “Header Name” field, enter Sec-CH-UA-Arch.
    • In the “Header Value” field, enter the architecture value you want to simulate (e.g., x86, arm).
  4. Set the URL condition: Specify the URL or pattern where this header change should apply (e.g., https://your-api.com/*).
  5. Save the rule.

Once set up, Requestly will inject the Sec-CH-UA-Arch header with your specified value into matching requests, enabling you to test how your server or application reacts to different client architectures.

Modifying the Sec-CH-UA-Arch header is useful because it helps developers ensure their sites work correctly across different hardware platforms by simulating requests as if they came from those platforms.