---
id: "user_agent"
kind: "datatype"
status: "draft"
is_pii: false
categories: ["internet"]
langs: ["common"]
quality: 75
url: "http://registry.apicrafter.io/datatype/user_agent"
---

# HTTP User-Agent string (`user_agent`)

> **Draft.** Draft records have not been reviewed yet and may be incomplete or wrong; do not treat them as authoritative for legal or compliance decisions.

Value of the User-Agent header that a browser, crawler, library or other HTTP client sends to describe itself. RFC 9110 defines it as one or more product identifiers, each a name with an optional /version, followed by comments in parentheses, such as the operating system. Most browsers start it with Mozilla/5.0 for historical compatibility. Web server logs and analytics data store it to tell browsers, devices and bots apart. The record has no regexp: the grammar is too loose to tell a user agent from other text.

- Personal data (PII): no
- Categories: Internet (internet)
- Countries: global
- Languages: Common to most languages (common)

## Examples

- `curl/8.4.0` — Command-line client
- `Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/115.0` — Firefox on Linux
- `Googlebot/2.1 (+http://www.google.com/bot.html)` — Search engine crawler

## Mappings

- autotype: `useragentstring`
- dpv: `pd:UserAgent`
- google_dlp: `HTTP_USER_AGENT`

## Supported by tools

- `autotype`
- `dataiku`
- `googledlp`

## Translations

- ru: Строка User-Agent: Значение HTTP-заголовка User-Agent, которым браузер, робот или другой клиент описывает себя.

## Sources

- wikipedia: <https://en.wikipedia.org/wiki/User-Agent_header>
- doc: <https://www.rfc-editor.org/rfc/rfc9110.html#name-user-agent>
- other: <https://github.com/congy/AutoType/blob/master/data_release/useragentstring.txt>

## Quality

Score 75/100. Missing: regexp, negative example.

JSON: <http://registry.apicrafter.io/api/v1/datatypes/user_agent.json> · Edit: <https://github.com/apicrafter/metacrafter-registry/edit/main/data/datatypes/any/internet/user_agent.yaml>
