WURFL API for Perl, Ruby, Python and Node.js

A standalone WURFL API is an API that can be deployed on a server independently of any resources available on the Internet. While a standalone API requires that the repository (wurfl.xml) is updated regularly, it offers the advantage of avoiding dependencies on external resources in one's code base (this may be desirable for organizations with hard requirements on security and high-availability). The alternative to the standalone API is using one of the WURFL Cloud APIs or InFuze APIs offered by ScientiaMobile. The WURFL Cloud is always updated with the latest and greatest WURFL data.

While the Onsite standalone API is offered for Java, .NET and PHP, it is not available for Ruby, Python, Perl and the Node.js programming languages.

Note: There are some third-party scripts on the Internet that attempt to parse the wurfl.xml and expose device capabilities programmatically. Those scripts do not contain the logic implemented by the standard WURFL API by ScientiaMobile and their use is not recommended (unless you are ok with a high number of wrong detections).

Programmers can use the WURFL Cloud solution for Perl, Ruby, Python and Node.js that includes APIs for all those languages.

Programmers that require optimal performance can use the InFuze WURFL C++ API, with modules available for Apache, NGINX, Varnish-cache, Python, and Node.js.

Examples of usage of the different WURFL Cloud APIs for all the languages can be found at the following URL:


More information can be found on ScientiaMobile's WURFL Blog

Please observe that the WURFL Cloud by ScientiaMobile includes a free offering for hobbyists and micro-companies.