What this API is and what it does

The API provides an easy way for your website or system to get detailed information about the technology that your visitors are using to browse your website.

There are lots of uses for it, but some of the most popular ones include using this information to personalize the content and advertising on your site for each visitor, help identify "strange" or risky activity on your site, and to gather general demographic information about the visitors to your site.

The need for Version 3

The API has been operating since 2014, and Version 3 represents the latest and most powerful version of it yet. But why the need for a new version?

The previous versions of our API only used the "user agent" HTTP Header to perform the detection. User agent strings are a mish-mash of fragments of text that try to identify the software making the request (and sometimes, browsers include completely "wrong" fragments, for various historical reasons). Generally speaking, user agents have always been a bit of a mess, and our API was great at decoding them and giving you an accurate and detailed result.

However user agent strings are slowly but surely being left in the past; some browser manufacturers have started simplifying the version numbers in them (ie. only including the major version number), and some manufacturers have announced plans to one day completely stop updating their user agents and "Freeze" them.

Browser's user agent strings also aren't announcing some Operating Systems (such as Windows 11 or macOS Monterey), so checking if your visitor is using a modern operating system is impossible using only User Agents.

So instead of looking at just the User Agent HTTP header, it's now necessary to also look at new kinds of HTTP Headers known as "Client Hints". These are a slightly more structured way for browsers to send information about what they are and what version, and what they are running on.

But as with any new standard, there are already idiosyncrasies and quirks with Client Hints, there are evolving standards, and only Chromium browsers send them.

Version 3 of our API works by taking your visitor's User Agent String, and the Client Hints headers, and synthesizing the data into a more accurate picture of what your visitors are using. By looking not just at the User Agent or Client Hints, but both together, we can also do a great job at spotting visitors who have changed their user agent or bots and crawlers who you might not want accessing your site.

What's changed in Version 3

If you're switching to Version 3 from Version 2 of our API, the changes are covered in detail in the migration document. But the main point is that User Agent specific end points (Parse, Batch Parse, Database Download, and Database Search) are being left in Version 2, in favour of the "Detect" end point.

User agents still play a part in Version 3, but only as another data point for the detect end point instead of the main focus.

If you still need to just parse some user agents via the API, Version 2 will remain in operation for the foreseeable future, and you can always just go back and use that if you need.

The future of the API

We've got some great things planned for Version 3, please read our API Road Map for more information.

Get started with Version 3

If you're ready to get started with Version 3 of the API, use the menu on the left of this page to find the section you're interested in and start reading!

We're always here to help, so if you have any questions, please read the Support Pages and if you're still having trouble, get in touch.