chucknorris.io API
Free Chuck Norris jokes API with no key. Random jokes, 16 categories and full-text search. CORS enabled. Tested curl example and live JSON response.
Endpoint tested and returned HTTP 200 on 2026-08-19
What is the chucknorris.io API?
chucknorris.io is a free JSON API serving Chuck Norris jokes with no API key. It supports random jokes, filtering across 16 categories, and full-text search of the joke database.
chucknorris.io is a well-built free API with a surprisingly complete feature set for something this whimsical: random retrieval, category filtering and full-text search, all documented and all key-free.
It is a good teaching API precisely because it has more than one endpoint. You can build a project that starts with a random joke, adds a category dropdown fetched from `/jokes/categories`, and finishes with a search box — a realistic progression using one consistent data source.
Quick facts
- Base URL
https://api.chucknorris.io- Authentication
- No key required.
- Rate limit
- No published limit.
- Pricing
- Free.
- CORS
- Enabled — callable directly from browser JavaScript
- Official docs
- Read the docs
How to use the chucknorris.io API
Every request below was executed against the live API on 2026-08-19, and the response shown is the real body it returned — not an illustration.
1. Fetch a random joke
GET https://api.chucknorris.io/jokes/random
curl 'https://api.chucknorris.io/jokes/random'const res = await fetch("https://api.chucknorris.io/jokes/random");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);import requests
res = requests.get("https://api.chucknorris.io/jokes/random", timeout=20)
res.raise_for_status()
print(res.json()){
"categories": [],
"created_at": "2020-01-05 13:42:26.991637",
"icon_url": "https://api.chucknorris.io/img/avatar/chuck-norris.png",
"id": "pL3PseP0RM2OYK4TWl7R0Q",
"updated_at": "2020-01-05 13:42:26.991637",
"url": "https://api.chucknorris.io/jokes/pL3PseP0RM2OYK4TWl7R0Q",
"value": "CHUCK NORRIS GAVE TO CHARITY...charity gave back."
}Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
category | query | Optional | Restrict to a category from /jokes/categories. dev |
query | query | Optional | Search term, used with /jokes/search. computer |
Response fields
idstring- Joke identifier.
valuestring- The joke text.
urlstring- Permalink to the joke on chucknorris.io.
icon_urlstring- Icon image URL, handy for card layouts.
categoriesarray- Categories the joke belongs to; often empty for uncategorised jokes.
What you can build with the chucknorris.io API
- Build a multi-endpoint tutorial project with random, category and search views
- Add a joke command to a chat bot with category support
- Practise building a search interface against a real API
- Populate placeholder card layouts with text and icons
Common errors and how to fix them
404
Unknown category name.
Fix: Fetch valid categories from /jokes/categories first rather than hardcoding them.
Empty result array on search
No jokes matched the query.
Fix: Handle the empty case; the `total` field tells you how many matched.
chucknorris.io API — frequently asked questions
Is the Chuck Norris API free?
Yes, chucknorris.io is completely free with no API key or registration required.
How many categories does it have?
Around 16, including dev, movie, food, animal and science. Fetch the current list from /jokes/categories instead of hardcoding it.
Can I search the joke database?
Yes. Use /jokes/search?query=term for full-text search, which returns matching jokes plus a total count.
Why is the categories array often empty?
Most jokes in the database are uncategorised. Only a subset carry category tags, so filtering by category returns a much smaller pool than random retrieval.
Tools that pair with this API
JSON Formatter
Format, beautify and minify JSON online with 2-space, 4-space or tab indentation. Sort keys alphabetically and catch syntax errors instantly — free and private.
Text Compare
Compare two texts online free and highlight every difference. A private text comparison tool that finds matches and changes right in your browser.
chucknorris.io is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 2026-08-19; always check the official documentation before relying on this API in production, as terms and limits can change.