Useless Facts API Documentation

Embark on a journey of random trivia and amusing tidbits with the Useless Facts API—a compact yet endlessly entertaining dataset designed to keep users captivated. Dive into a collection of over 1000+ quirky and mostly useless facts, thoughtfully curated from various corners of the web.

From bizarre historical anecdotes to curious scientific oddities, this API is your gateway to a treasure trove of information that’s as fascinating as it is frivolous. Perfect for those moments when you crave a mental escape or simply want to sprinkle some quirky knowledge into your day.


  1. Object Properties & Structure
  2. Operating Modes
    1. Stats Mode
    2. Random Mode
    3. Batch Mode
    4. Useless Fact of the Day
  3. Use Limits

1. Object Properties

A useless fact object has the following properties.

textThe useless fact text.
sourceThe source domain text.
urlThe source hyperlink.
htmlThe useless fact in pre-formatted HTML.

Example Response {object}

"text": "The useless fact text will be displayed here.",
"source": "",
"url": "",
"html": "<blockquote>Pre-formatted HTML<footer>Source</footer></blockquote>"

2. Operating Modes

There are various API modes depending on the type of data you want to retrieve.

i. Stats Mode

Use this call to return information like current version and the number of useless facts in the database.


{"info":"Useless Facts v1.0","entries":1050}

ii. Random Mode

Use this call to return a single random fact object.



iii. Batch Mode

When operating in batch mode, the API will return an array of random fact objects. This is mainly used when you want to cache your facts locally within your app.

The default limit is 50 items. When no API key is provided, the batch is limited to 10 entries.


[ {object},{object},...{object} ]

iv. Useless Fact of The Day

Each day we feature a single fact from our database, which you can call using the [today] mode. To reduce server load, this response should be loaded into your app cache and refreshed daily rather than making a call each time you want to display the quote in your project. New quote is generated at midnight server time (00:00 CST).



3. Use Limits

When no API key is provided, calls are limited to 5 per 30 second period. Its recommended that you use batch mode to cache the data in a local file, then updating only as needed. To increase rate limits and disable CORS, you must provide an API key by adding &key=[YOUR_KEY] to the end of your call.