Parse, validate and get detailed user-agent information from a user agent string
or from client hints.
This API has the following features:
Type Detection
Determine the general user-agent type e.g. check if the user-agent is a phone, tablet or desktop device
Mobile Detection
Determine if the user-agent belongs to a mobile device and get brand and model information
Device Specs
Retrieve device specs such as the release year, price and physical display properties
Browser Detection
Get the name, engine, version and release year of the browser software
Bot Detection
Check if the user-agent is a robot, spider, crawler or other type of automated software
OS Detection
Determine the operating system family, full OS name and version information
Note on client hints:
For browsers that use client hints you can obtain the complete 'high entropy' user agent data with the following JavaScript code:
navigator.userAgentData.getHighEntropyValues(["model","platform","platformVersion","uaFullVersion"]).then(uad=>{console.log(uad);});
The resulting JSON data can then be passed directly to the 'ua' API parameter.
The user-agent string to lookup. For client hints use the 'UA' header or the JSON data directly from 'navigator.userAgentData.brands' or 'navigator.userAgentData.getHighEntropyValues()'
ua-version
no
string
For client hints this corresponds to the 'UA-Full-Version' header or 'uaFullVersion' from NavigatorUAData
ua-platform
no
string
For client hints this corresponds to the 'UA-Platform' header or 'platform' from NavigatorUAData
ua-platform-version
no
string
For client hints this corresponds to the 'UA-Platform-Version' header or 'platformVersion' from NavigatorUAData
ua-mobile
no
string
For client hints this corresponds to the 'UA-Mobile' header or 'mobile' from NavigatorUAData
device-model
no
string
For client hints this corresponds to the 'UA-Model' header or 'model' from NavigatorUAData. You can also use this parameter to lookup a device directly by its model name, model code or hardware code, on android you can get the model name from: https://developer.android.com/reference/android/os/Build.html#MODEL
device-brand
no
string
This parameter is only used in combination with 'device-model' when doing direct device lookups without any user-agent data. Set this to the brand or manufacturer name, this is required for accurate device detection with ambiguous model names. On android you can get the device brand from: https://developer.android.com/reference/android/os/Build#MANUFACTURER
API Response
Parameter
Type
Description
ua
string
The user agent string
type
string
The user agent type, possible values are:
desktop
phone
tablet
wearable
tv
console
email
library
robot
unknown
name
string
The client software name
version
string
The client software full version
version-major
string
The client software major version
browser-engine
string
If the client is a web browser which underlying browser engine does it use
browser-release
string
If the client is a web browser which year was this browser version released
os
string
The full operating system name
os-family
string
The operating system family. The major OS families are: Android, Windows, macOS, iOS, Linux
os-version
string
The operating system full version
os-version-major
string
The operating system major version
is-mobile
boolean
Is this a mobile device (e.g. a phone or tablet)
is-webview
boolean
Is this a WebView / embedded software client
device-brand
string
The device brand / manufacturer
device-model
string
The device model
device-model-code
string
The device model code
device-release
string
The year when this device model was released
device-price
float
The average device price on release in USD
device-resolution
string
The device display resolution in physical pixels (e.g. 720x1280)
device-ppi
float
The device display PPI (pixels per inch)
device-pixel-ratio
float
The device display pixel ratio (the ratio of the resolution in physical pixels to the resolution in CSS pixels)
device-width-px
float
The device display width in CSS 'px'
device-height-px
float
The device display height in CSS 'px'
API Performance
Characteristic
Value
Description
Avg Latency
20ms
Average RTT for requests within the same data center/region
Max Rate
500/second
Maximum inbound request rate. Exceeding this will result in request throttling
Max Concurrency
250
Maximum concurrent/simultaneous requests. Exceeding this will result in error code 06 [TOO MANY CONNECTIONS]