chucknorris.io website screenshot

chucknorris.io

Free JSON REST API for hand-curated Chuck Norris jokes (facts) maintained by @matchilling. Supports random retrieval, category filtering, full-text search, and direct lookup by joke identifier. Hosted at api.chucknorris.io with an open-source Spring Boot service (chuck-api), official Node.js and Java client SDKs, a Chrome extension, a Storybook addon, and Messenger / Alexa companion apps published under the chucknorris-io GitHub organization.

chucknorris.io publishes 3 APIs on the APIs.io network: Categories API, Jokes API, and Search API. Tagged areas include Entertainment, Jokes, Chuck Norris, Open-Source, and Public APIs.

The chucknorris.io catalog on APIs.io includes 2 JSON-LD contexts and 2 Spectral governance rulesets.

chucknorris.io’s developer surface includes tooling, documentation, engineering blog, pricing, and 18 more developer resources.

44.3/100 developing ▬ flat Agent 35/100 agent ready Full breakdown ↓
scored 2026-09-08 · rubric v0.20.0
2 APIs 6 Features 4 Use Cases
EntertainmentJokesChuck NorrisOpen-SourcePublic APIs

Kin Score

Kin Score Kin Score How this is scored →
scored 2026-09-08 · rubric v0.20.0
Create-or-Update Ergonomics does not apply to this provider. The published contracts declare no write operations, and a read-only API cannot create-or-update. The facet is excluded from this provider's denominator entirely — not scored zero. A reference or data API is not deficient for being unable to upsert.
Improve this rating by publishing the missing artifacts — every area above can be raised, and the full rubric is at apis.io/rating/. Every facet and dimension name above is a link: it opens that measurement's own page — what it means, the exact checks that feed it, how the whole catalog distributes on it, and the providers at the top of it. This rating is computed from github.com/api-evangelist/chucknorris-io: open an issue to ask a question, or submit a pull request to add artifacts. Submit an artifact on GitHub — free → Manage your own listing — the Influence plan, $499/mo →

APIs 3

Individual APIs this provider publishes, each with its own machine-readable definition.

chucknorris.io Categories API

Joke category metadata.

chucknorris.io Jokes API

Chuck Norris jokes (facts) endpoints.

chucknorris.io Search API

Full-text search across the joke corpus.

Open Collections 5

Open, tool-agnostic API collections (OpenAPI-derived and Bruno).

API Collection

OPEN COLLECTION

Chuck Norris Jokes API

OPEN COLLECTION

Pricing Plans 1

Published pricing tiers and plan structures.

Rate Limits 1

Documented rate limits and quota policies.

Chucknorris Io Rate Limits

0 limits

RATE LIMITS

FinOps 1

Cost, billing, and metering signals for API financial operations.

Features 6

Notable capabilities this provider offers.

Random Joke

GET /jokes/random returns a single random Chuck Norris fact.

Random Joke By Category

GET /jokes/random?category={category} constrains random selection.

List Categories

GET /jokes/categories returns the 16 supported category identifiers.

Free-Text Search

GET /jokes/search?query={query} returns matching jokes with a total count.

Lookup By Id

GET /jokes/{id} retrieves a single joke by its identifier.

Plain-Text Variant

All endpoints honor Accept text/plain for shell-friendly output.

Semantic Vocabularies 2

JSON-LD contexts and semantic vocabularies used across these APIs.

Chucknorris Io Context

5 classes · 8 properties

JSON-LD

context Context

4 classes · 8 properties

JSON-LD

Spectral Rules 2

Spectral governance rulesets for linting and validating these APIs.

chucknorris.io API Rules

5 rules · 4 warnings 1 info

SPECTRAL

chucknorris.io API Rules

10 rules · 4 errors 6 warnings

SPECTRAL

JSON Schema 6

Standalone JSON Schema definitions for this provider's data models.

CategoryList

0 properties

JSON SCHEMA

Error

5 properties

JSON SCHEMA

Joke

7 properties

JSON SCHEMA

SearchResult

2 properties

JSON SCHEMA

JokeSearchResult

2 properties

JSON SCHEMA

Joke

7 properties

JSON SCHEMA

JSON Structure 4

JSON Structure definitions describing this provider's data shapes.

Chucknorris Io Category List Structure

0 properties

JSON STRUCTURE

Chucknorris Io Error Structure

5 properties

JSON STRUCTURE

Chucknorris Io Joke Structure

7 properties

JSON STRUCTURE

Chucknorris Io Search Result Structure

2 properties

JSON STRUCTURE

Examples 10

Example request and response payloads for these APIs.

Random Joke

7 fields

EXAMPLE

Search Result

2 fields

EXAMPLE

Scroll for all 10

Security Posture 1

Authentication, domain security, vulnerability disclosure, and trust-center signals.

Agentic Access 1

Recommended x-agentic-access execution contracts for AI agents.

Chucknorris Io Agentic Access

4 operations

4 operations · 0 acting

AGENTIC

Use Cases 4

What developers build with this provider.

Demo Data Source

Tutorial-friendly free public API for learning HTTP clients, SDKs, and AI tool patterns.

Chat & Bot Surfaces

Slack, Messenger, and Alexa surfaces inject random facts on demand.

Developer Toy

Storybook addon and Chrome extension use the API to entertain developers.

Load & Reliability Testing

Lightweight, no-auth endpoints are useful targets for HTTP client smoke tests.

Integrations 5

Pre-built integrations with other platforms and tools.

Slack

Slack slash command integration referenced in the public docs.

Facebook Messenger

Companion Messenger bot (chucknorris-io/app-facebook-messenger).

Alexa

Companion Alexa skill (chucknorris-io/app-alexa-skill).

Google Chrome

Official Chrome extension surfacing facts in the browser.

Storybook

Storybook addon injecting Chuck Norris facts into dev workflows.

Resources

Documentation 1

Reference material describing how the API behaves

Agent Surfaces 1

MCP servers, agent skills, and machine-readable catalogs

Design & Contract 2

Pagination, idempotency, versioning, errors, and events

Build 6

SDKs, sample code, and the tooling you integrate with

Access & Security 1

Authentication, authorization, and security posture

Operate 3

Status, limits, changes, and where to get help

Commercial 4

Pricing, plans, and the legal terms of use

Company 3

The organization behind the API

Other 2

Properties that don't map to a standard resource type

Source (apis.yml)

apis.yml Raw ↑
aid: chucknorris-io
name: chucknorris.io
description: Free JSON REST API for hand-curated Chuck Norris jokes (facts) maintained by @matchilling. Supports random retrieval,
  category filtering, full-text search, and direct lookup by joke identifier. Hosted at api.chucknorris.io with an open-source
  Spring Boot service (chuck-api), official Node.js and Java client SDKs, a Chrome extension, a Storybook addon, and Messenger
  / Alexa companion apps published under the chucknorris-io GitHub organization.
url: https://api.chucknorris.io
deliveryModel:
  model: unknown
  open_source: unknown
  commercial: true
  callable_host: true
  label: Delivery model not determined — needs a product licence on record
  confidence: low
  source:
  - openapi
  - pricing
  - repository-unlicensed
  generated: '2026-08-28'
  method: derived
accessModel:
  pricing: unknown
  onboarding: unknown
  trial: false
  try_now: false
  public: false
  label: Unknown
  confidence: low
  source: []
  generated: '2026-07-22'
  method: derived
image: https://api.chucknorris.io/img/avatar/chuck-norris.png
specificationVersion: '0.23'
created: '2026-05-28'
modified: '2026-08-08'
x-source: public-apis/public-apis
x-category: Entertainment
x-type: opensource
x-tier: 3
x-tier-reason: bulk-registered-from-public-apis
tags:
- Entertainment
- Jokes
- Chuck Norris
- Open-Source
- Public APIs
tags_raw:
- Entertainment
- Jokes
- Chuck Norris
- Open Source
- Public APIs
apis:
- aid: chucknorris-io:chucknorris-io-categories-api
  name: chucknorris.io Categories API
  description: Joke category metadata.
  humanURL: https://api.chucknorris.io
  baseURL: https://api.chucknorris.io
  tags:
  - Categories
  properties:
  - type: OpenAPI
    url: openapi/chucknorris-io-categories-api-openapi.yml
  - type: Documentation
    url: https://api.chucknorris.io
  - type: JSONSchema
    url: json-schema/chucknorris-io-joke-schema.json
  - type: JSONSchema
    url: json-schema/chucknorris-io-category-list-schema.json
  - type: JSONSchema
    url: json-schema/chucknorris-io-search-result-schema.json
  - type: JSONSchema
    url: json-schema/chucknorris-io-error-schema.json
  - type: JSONStructure
    url: json-structure/chucknorris-io-joke-structure.json
  - type: JSONStructure
    url: json-structure/chucknorris-io-category-list-structure.json
  - type: JSONStructure
    url: json-structure/chucknorris-io-search-result-structure.json
  - type: JSONStructure
    url: json-structure/chucknorris-io-error-structure.json
  - type: JSONLD
    url: json-ld/chucknorris-io-context.jsonld
  - type: Examples
    url: examples/chucknorris-io-getRandomJoke-example.json
  - type: Examples
    url: examples/chucknorris-io-getRandomJoke-by-category-example.json
  - type: Examples
    url: examples/chucknorris-io-listCategories-example.json
  - type: Examples
    url: examples/chucknorris-io-searchJokes-example.json
  - type: Examples
    url: examples/chucknorris-io-getJokeById-example.json
  - type: Examples
    url: examples/chucknorris-io-joke-example.json
  - type: Examples
    url: examples/chucknorris-io-category-list-example.json
  - type: Examples
    url: examples/chucknorris-io-search-result-example.json
  - type: Examples
    url: examples/chucknorris-io-error-example.json
  - type: Authentication
    url: https://api.chucknorris.io
  - type: RateLimits
    url: https://api.chucknorris.io
- aid: chucknorris-io:chucknorris-io-jokes-api
  name: chucknorris.io Jokes API
  description: Chuck Norris jokes (facts) endpoints.
  humanURL: https://api.chucknorris.io
  baseURL: https://api.chucknorris.io
  tags:
  - Jokes
  properties:
  - type: OpenAPI
    url: openapi/chucknorris-io-jokes-api-openapi.yml
  - type: Documentation
    url: https://api.chucknorris.io
  - type: JSONSchema
    url: json-schema/chucknorris-io-joke-schema.json
  - type: JSONSchema
    url: json-schema/chucknorris-io-category-list-schema.json
  - type: JSONSchema
    url: json-schema/chucknorris-io-search-result-schema.json
  - type: JSONSchema
    url: json-schema/chucknorris-io-error-schema.json
  - type: JSONStructure
    url: json-structure/chucknorris-io-joke-structure.json
  - type: JSONStructure
    url: json-structure/chucknorris-io-category-list-structure.json
  - type: JSONStructure
    url: json-structure/chucknorris-io-search-result-structure.json
  - type: JSONStructure
    url: json-structure/chucknorris-io-error-structure.json
  - type: JSONLD
    url: json-ld/chucknorris-io-context.jsonld
  - type: Examples
    url: examples/chucknorris-io-getRandomJoke-example.json
  - type: Examples
    url: examples/chucknorris-io-getRandomJoke-by-category-example.json
  - type: Examples
    url: examples/chucknorris-io-listCategories-example.json
  - type: Examples
    url: examples/chucknorris-io-searchJokes-example.json
  - type: Examples
    url: examples/chucknorris-io-getJokeById-example.json
  - type: Examples
    url: examples/chucknorris-io-joke-example.json
  - type: Examples
    url: examples/chucknorris-io-category-list-example.json
  - type: Examples
    url: examples/chucknorris-io-search-result-example.json
  - type: Examples
    url: examples/chucknorris-io-error-example.json
  - type: Authentication
    url: https://api.chucknorris.io
  - type: RateLimits
    url: https://api.chucknorris.io
- aid: chucknorris-io:chucknorris-io-search-api
  name: chucknorris.io Search API
  description: Full-text search across the joke corpus.
  humanURL: https://api.chucknorris.io
  baseURL: https://api.chucknorris.io
  tags:
  - Search
  properties:
  - type: OpenAPI
    url: openapi/chucknorris-io-search-api-openapi.yml
  - type: Documentation
    url: https://api.chucknorris.io
  - type: JSONSchema
    url: json-schema/chucknorris-io-joke-schema.json
  - type: JSONSchema
    url: json-schema/chucknorris-io-category-list-schema.json
  - type: JSONSchema
    url: json-schema/chucknorris-io-search-result-schema.json
  - type: JSONSchema
    url: json-schema/chucknorris-io-error-schema.json
  - type: JSONStructure
    url: json-structure/chucknorris-io-joke-structure.json
  - type: JSONStructure
    url: json-structure/chucknorris-io-category-list-structure.json
  - type: JSONStructure
    url: json-structure/chucknorris-io-search-result-structure.json
  - type: JSONStructure
    url: json-structure/chucknorris-io-error-structure.json
  - type: JSONLD
    url: json-ld/chucknorris-io-context.jsonld
  - type: Examples
    url: examples/chucknorris-io-getRandomJoke-example.json
  - type: Examples
    url: examples/chucknorris-io-getRandomJoke-by-category-example.json
  - type: Examples
    url: examples/chucknorris-io-listCategories-example.json
  - type: Examples
    url: examples/chucknorris-io-searchJokes-example.json
  - type: Examples
    url: examples/chucknorris-io-getJokeById-example.json
  - type: Examples
    url: examples/chucknorris-io-joke-example.json
  - type: Examples
    url: examples/chucknorris-io-category-list-example.json
  - type: Examples
    url: examples/chucknorris-io-search-result-example.json
  - type: Examples
    url: examples/chucknorris-io-error-example.json
  - type: Authentication
    url: https://api.chucknorris.io
  - type: RateLimits
    url: https://api.chucknorris.io
common:
- type: IssueTracker
  url: https://github.com/chucknorris-io/chuck-api/issues
- type: AgenticAccess
  url: agentic-access/chucknorris-io-agentic-access.yml
- type: DomainSecurity
  url: security/chucknorris-io-domain-security.yml
- type: Website
  url: https://api.chucknorris.io
- type: GitHubOrganization
  url: https://github.com/chucknorris-io
- type: GitHubRepository
  url: https://github.com/chucknorris-io/chuck-api
- type: License
  url: https://github.com/chucknorris-io/chuck-api/blob/master/LICENSE
  data:
  - name: GPL-3.0
    description: Service source (chuck-api) is licensed GPL-3.0.
- type: PublicAPIsListing
  url: https://github.com/public-apis/public-apis
- type: SpectralRules
  url: rules/chucknorris-io-rules.yml
- type: Vocabulary
  url: vocabulary/chucknorris-io-vocabulary.yml
- type: SDKs
  url: https://github.com/chucknorris-io/client-nodejs
  data:
  - name: client-nodejs
    description: Official Node.js client library (GPL-3.0).
- type: SDKs
  url: https://github.com/chucknorris-io/client-java
  data:
  - name: client-java
    description: Official Java client library (Apache-2.0).
- type: Integrations
  data:
  - name: Slack
    description: Slack slash command integration referenced in the public docs.
  - name: Facebook Messenger
    description: Companion Messenger bot (chucknorris-io/app-facebook-messenger).
  - name: Alexa
    description: Companion Alexa skill (chucknorris-io/app-alexa-skill).
  - name: Google Chrome
    description: Official Chrome extension surfacing facts in the browser.
  - name: Storybook
    description: Storybook addon injecting Chuck Norris facts into dev workflows.
- type: Features
  data:
  - name: Random Joke
    description: GET /jokes/random returns a single random Chuck Norris fact.
  - name: Random Joke By Category
    description: GET /jokes/random?category={category} constrains random selection.
  - name: List Categories
    description: GET /jokes/categories returns the 16 supported category identifiers.
  - name: Free-Text Search
    description: GET /jokes/search?query={query} returns matching jokes with a total count.
  - name: Lookup By Id
    description: GET /jokes/{id} retrieves a single joke by its identifier.
  - name: Plain-Text Variant
    description: All endpoints honor Accept text/plain for shell-friendly output.
- type: UseCases
  data:
  - name: Demo Data Source
    description: Tutorial-friendly free public API for learning HTTP clients, SDKs, and AI tool patterns.
  - name: Chat & Bot Surfaces
    description: Slack, Messenger, and Alexa surfaces inject random facts on demand.
  - name: Developer Toy
    description: Storybook addon and Chrome extension use the API to entertain developers.
  - name: Load & Reliability Testing
    description: Lightweight, no-auth endpoints are useful targets for HTTP client smoke tests.
- type: Tools
  data:
  - name: Postman Collection
    description: Maintained by the chucknorris-io org at chuck-infra-tools/api_postman_collection.json.
  - name: Third-Party MCP Servers
    description: Community MCP servers wrap api.chucknorris.io (e.g., thomasma/chuckjokes-mcpserver, BACH-AI-Tools/chuck_norris).
      No first-party MCP server.
- type: Documentation
  url: https://api.chucknorris.io
- type: GitHubOrg
  url: https://github.com/chucknorris-io
- type: LinkedIn
  url: https://www.linkedin.com/company/chucknorris-io
- type: Blog
  url: https://api.chucknorris.io
- type: Pricing
  url: https://api.chucknorris.io
- type: StatusPage
  url: https://status.chucknorris.io
- type: X
  url: https://twitter.com/MatChilling
- type: Plans
  url: plans/chucknorris-io-plans-pricing.yml
- type: RateLimits
  url: rate-limits/chucknorris-io-rate-limits.yml
- type: FinOps
  url: finops/chucknorris-io-finops.yml
maintainers:
- FN: Kin Lane
  email: kin@apievangelist.com
x-merged-from:
- chuck-norris

Work with this as data

Every provider here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for providers

9 MCP tools reach this
  • find_providersBrowse and filter every provider in the catalog.
  • get_provider_artifactsEvery artifact this provider publishes, grouped by type.
  • get_provider_operationsEvery operation across all of their OpenAPIs — one call instead of parsing every spec.
  • get_provider_toolsEvery MCP tool they ship, with the operation each wraps.
  • get_provider_evidenceHow each part of their score was established. Free — the basis for a claim should not sit behind it.
  • get_provider_ratingPRO — composite, band, trend and facet scores.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This provider
curl "https://apis.io/api/v1/providers/chucknorris-io"
All providers
curl "https://apis.io/api/v1/providers?limit=25"
Every operation they expose
curl "https://apis.io/api/v1/providers/chucknorris-io/operations?limit=25"
How their score was established
curl "https://apis.io/api/v1/providers/chucknorris-io/evidence"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.