# What is my user agent? See your browser UA string | host.sh

> See your browser's user agent string and what it says: browser and version, engine, operating system, device and languages, parsed for free.

## What the user agent is

Every browser sends a `User-Agent` header with each request, a line of text that names the browser, its version, the engine it uses and the operating system. Sites use it to work around browser differences and to count browsers. The box above shows the string your browser reports to scripts, and the rows below it show how the host.sh API reads the header this page sent: browser, engine, operating system, device, whether it is a known bot, and the languages from your `Accept-Language` header.

Parsing your own user agent is free and needs no token: it is part of the tokenless lookup of your own IP. Parsing another user agent string, with the `ua=` parameter of the [lookup API](https://www.host.sh/docs/lookup/index.md#parameters), needs a token with the user agent permission.

## Why it doesn't always match your system

Many browsers now freeze parts of the string. Chrome and Edge report Windows 11 as `Windows NT 10.0`, and browsers on a Mac report an old macOS version, so a parsed operating system version can be older than the one you run. Browser extensions and privacy settings can also change the string. The [response fields](https://www.host.sh/docs/fields/index.md#user-agent-client-os-and-device) page lists every value the API returns.

## From the command line

curl sends its own user agent, `curl/` and its version. To see what the API reads from it:

```sh
curl "https://api.host.sh/v2/lookup/?fields=user_agent,client.name,client.version.string"
```

## FAQ

### What is my user agent?

It is the string shown at the top of this page: the text your browser sends in the `User-Agent` header with every request.

### Is the user agent the same in every browser on my computer?

No. Each browser sends its own, and the same browser sends a different one on another device or after an update.

### Can I parse a user agent string that isn't mine?

Yes, with an API token: send it as `ua=` to the [lookup endpoint](https://www.host.sh/docs/lookup/index.md#parameters). Without a token the API parses only the user agent of the request itself.

### Why does my user agent say Windows 10 on Windows 11?

Browsers froze that part of the string at `Windows NT 10.0`, so Windows 10 and Windows 11 look the same in it.
