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 19 Aug 2026
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 19 Aug 2026, 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.
Alternatives to chucknorris.io API
If chucknorris.io does not fit, these entertainment apis cover similar ground. Every one was called before publishing, and each links to its own reference page with a working curl command and the response it returned.
| API | What it does | Auth | CORS | Last verified |
|---|---|---|---|---|
| Official Joke API | Free joke API with no key: random jokes with setup and punchline, filterable by type. Perfect for beginner projects. Tested curl example and live JSON. | No key | Yes | 19 Aug 2026 |
| icanhazdadjoke | Free dad joke API with no key. Returns jokes as JSON, plain text or image depending on the Accept header. Search supported. Tested curl example included. | No key | Yes | 19 Aug 2026 |
| Advice Slip | Free advice API with no key. Returns random advice slips as JSON, with search and id lookup. CORS enabled. Tested curl example and live response. | No key | Yes | 19 Aug 2026 |
| Open Trivia Database | Free trivia and quiz API with no key: 24 categories, three difficulty levels, multiple choice and true/false questions. Tested curl example and live JSON. | No key | Yes | 19 Aug 2026 |
| Corporate BS Generator | Free corporate buzzword API with no key: generates plausible business jargon phrases. Useful for placeholder copy and demo data. Tested curl example. | No key | No | 20 Aug 2026 |
| CosmyDay | Free astrology API with no key, computed with the Swiss Ephemeris: upcoming ingresses, retrogrades, eclipses and zodiac seasons with exact times, plus daily content per sign. | No key | Yes | 21 Aug 2026 |
chucknorris.io is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 19 Aug 2026; always check the official documentation before relying on this API in production, as terms and limits can change.