True Random Number Service

Advisory: We only operate services from the RANDOM.ORG domain. Other sites that claim to be operated by us are impostors. If in doubt, contact us.

Note: Our much improved new API is currently in public beta - learn more on

HTTP Client Archive

RANDOM.ORG is a true random number service that generates randomness via atmospheric noise. If you don't want to use a web browser to access the service, you can write your own client or download one of the clients listed below. All of the clients on this page access RANDOM.ORG through the HTTP Interface.

Use at your own risk!
The clients here are donated by generous users. While they have generally made a good effort to make sure there are as few bugs as possible, there are no guarantees. Please review the source code before you use any of the clients referenced from this page.
Please also verify that your client (and the way you use it) conforms to the Guidelines for Automated Clients. Otherwise your machine may end up getting banned.

If you have written a client that you don't mind other people using, email us (preferably with instructions on how to use it), and we will put it on this page. You will of course get full credit.

Java Library
Author: Mars Gokturk
Date: 2014-06-13
This simple java library is very easy to use. Just export it to your java project, and you can get random integers in base 2, 8, 10 and 16. It also enforces the valid input intervals for the minimum, maximum, and the amount of integers before executing the request on the server. This way, making unsupported requests are eliminated and the unproductive load on the server is decreased.

.NET Interface
Author: ruarai
Date: 2013-09-29
A .NET interface that can be used from C#, Visual Basic and C++. It is free an open source.

Bash Client with TOR Proxy
Author: Rida Farage
Date: 2013-08-09
A small bash client that fetches random data from RANDOM.ORG via secure HTTP. Supports optional use of TOR proxy.

Object-Oriented PHP Client
Author: pixeloution
Date: 2013-07-22
A modern PHP client, which is installable via composer, unit tested, and object oriented.

Clojure Library
Author: Mykhailo Kozik
Date: 2013-07-05
A simple open-source library in Clojure.

PHP Client
Author: Robert Paprocki, based on original work by Jonathon Reinhart
Date: 2013-06-08
Modern PHP Client that includes a few checks to prevent the client from exceeding their API quota.

Ruby Library
Author: Devin Akman
Date: 2012-10-04
A Ruby library that uses RANDOM.ORG's HTTP API to fetch true random numbers, sequences or strings. The quota is automatically checked when any method requesting data is called and an exception is thrown if it is not positive.

C++ Library and Command Line Client
Author: Doug Hague
Date: 2012-08-01
You can access the typical RANDOM.ORG API (quota, integers, sequences and strings) along with some derived extras (fractions, bytes and binary) via the commandline executable bin/random-dot-org or within your own program via libRdO API.

Simple Java API
Author: Charles Eakins
Date: 2011-12-30
Simple interface to retrieve random numbers from RANDOM.ORG

Ruby Class
Author: Bill Knechtel
Date: 2011-06-01
A general class to use in your Ruby programs whether they be server side or command-line, etc.

Node.js Client
Author: Rodger Combs
Date: 2011-05-31
A simple client for Node.js, which is an event-driven I/O framework for the V8 JavaScript engine.

Stata Module
Author: Sergiy Radyakin
Date: 2011-01-28
Stata module to query the true random number generator at RANDOM.ORG. Requires Stata 7 or better. Runs also in Small Stata.

MATLAB Functions
Author: Oleg Komarov
Date: 2010-06-18
A set of three functions which use the HTTP API interface to retrieve random integers, sequences and strings (each of these functions have an inbuilt quota call). Requires MATLAB 7.1 or better.

C# Library
Author: Magnus Erik Hvass Pedersen
Date: 2009-09-21
RandomOps is a source-code library implementing various Pseudo-Random Number Generators (PRNGs) in the C# programming language. The library also includes synchronous as well as asynchronous interfaces to RANDOM.ORG.

Python Library
Author: Clovis Fabricio
Date: 2008-10-01
A python module to implement python's random number interface by fetching data from RANDOM.ORG. Methods supported by the standard library random module are supported, except for save/load state and seeding which don't make sense for a true random number generator.

Haskell Package
Author: Austin Seipp
Date: 2008-07-30
Using this package you can generate random numbers, strings and randomize a sequence of numbers through the website, which provides randomness through atmospheric noise rather than a PRNG.

Python Library
Author: Sean Brewer
Date: 2008-07-29
This library implements everything in RANDOM.ORG's HTTP interface, and fairly thorough documentation is included in the package.

Java Client Library
Author: Roberto Javier Godoy
Date: 2008-07-09
Provides a SecureRandom service (integrated with the Java Security API) for accessing RANDOM.ORG via HTTP/HTTPS.

PHP Client
Author: Jonathon Reinhart
Date: 2008-06-30
A basic PHP client. It has been tested pretty thoroughly but is not guaranteed bug-free. Jonathon will fix bugs if you find them.

.NET 2.0 Class Library
Author: EJ Productions
Date: 2008-06-26
A class library that lets .NET programmers use the RANDOM.ORG services. It's written in VB.NET, source code included. The author says he doesn't have time to maintain it but feel free to use it as-is.

Python Wrapper
Author: George Dunbar
Date: 2008-05-25
A couple of basic Python client functions, each returning (Python-style) lists of integers generated with/without replacement. There is also a function to return a float in [0, 1] and a function that checks the quota for the IP address of the machine it's on. The number-fetching functions check that the quota is in credit before starting a request.

Ruby Client
Author: Ben Aroia
Date: 2008-04-03
Download: random-get.rb
HTTP GET code for RANDOM.ORG that retrieves random numbers and outputs them in the order they appear. It is/will be possible to allow outputing in several different formats. (i.e. print them/use them one by one, save them to a file in several formats, command line options, etc) This is a basic version that will allow you to use the Integer Generator and output in a single line at the terminal.

R Package
Author: Dirk Eddelbuettel
Date: 2006-08-19
This package offers functions to retrieve random integer number (with duplicates), randomized sequences (without duplicates) and raw random bytes.

© 1998-2024 RANDOM.ORG
Follow us: Twitter | Mastodon
Terms and Conditions
About Us