API · /xkcd-api

xkcd API

healthy 4,260 Subscribers

Randall Munroe's legendary webcomic xkcd as an API. Fetch the latest comic, any comic by its number (e.g. #353 "Python"), or a random one — each with the title, the famous hover (alt) text, the full transcript, the image URL, the publication date and links to both xkcd and explainxkcd. A clean JSON wrapper over xkcd.com with no scraping and no surprises. Ideal for Discord and Slack bots, "comic of the day" widgets, dashboards and screensavers, newsletters, and any app that wants a daily dose of xkcd.

api.oanor.com/xkcd-api
Get an API key Try in playground → Contact provider

Machine-readable spec so AI agents can integrate this API.

/api/xkcd-api/openapi.json
/api/xkcd-api/llms.txt

Discovery: GET /api/index.json lists every API.

xkcd API — live data on the oanor API marketplace

API health

healthy
Uptime
100.00%
Server probes · 24h
Avg latency
173 ms
Server probes · 24h
Subscribers
4,260
active
Total calls
76
last 7 days
status Full status page → · 12 probes/24h

Pricing

Pick a tier — billed monthly, cancel anytime.

Free

Free

  • 13,500 calls / month
  • 2 requests / second
  • Hard cap (429 above quota, no overage)
  • 13,500 calls/month
  • 2 req/sec
  • Latest, by-number & random
  • No credit card
Sign in to subscribe

Starter

€2.80 /month

  • 195,000 calls / month
  • 8 requests / second
  • Hard cap (429 above quota, no overage)
  • 195k calls/month
  • 8 req/sec
  • Comic-of-the-day widgets
  • Email support
Sign in to subscribe

Pro

€9.40 /month

  • 840,000 calls / month
  • 20 requests / second
  • Hard cap (429 above quota, no overage)
  • 840k calls/month
  • 20 req/sec
  • Bots & dashboards
  • Priority support
Sign in to subscribe

Mega

€29.60 /month

  • 3,450,000 calls / month
  • 50 requests / second
  • Hard cap (429 above quota, no overage)
  • 3.45M calls/month
  • 50 req/sec
  • High-traffic apps
  • Dedicated SLA
Sign in to subscribe

Built by

Related APIs

Other APIs with overlapping tags.

Chuck Norris Jokes API — oanor API marketplace

Chuck Norris Jokes API

The famous Chuck Norris joke collection via the open chucknorris.io API — no key. The random endpoint returns a random Chuck Norris joke and can be filtered to a category (e.g. dev, food, sport, money, science); the categories endpoint lists every available category; and the search endpoint runs a full-text query across the whole collection. Each joke carries its id, text, categories and a permalink. Real jokes, with categories cached for speed — no key. 4 endpoints. Ideal for chatbots, Slack/Discord bots, 404 pages, loading screens and developer-fun easter eggs.

api.oanor.com/chucknorris-api

Jokes API — oanor API marketplace

Jokes API

A clean, family-friendly jokes API. Fetch a random joke — or several at once — as a single-line one-liner or a two-part setup-and-delivery, filtered by category (Programming, Misc, Pun, Spooky, Christmas); search for jokes containing a specific word; and list the available categories. Safe-mode is always enforced and the offensive "Dark" category is excluded, so every joke is workplace- and family-safe. Ideal for chat and Discord bots, websites and apps that want a touch of humour, loading screens, and developer tools. Built on JokeAPI.

api.oanor.com/jokes-api

Advice Slip API — oanor API marketplace

Advice Slip API

Short pieces of advice via the open Advice Slip API — no key. The random endpoint returns a random advice slip; the advice endpoint fetches a specific slip by its id; and the search endpoint finds slips containing a phrase. Each slip carries its id and advice text. Real advice, with id lookups cached for speed — no key. 4 endpoints. Ideal for daily-advice widgets, chatbots, fortune-cookie features, loading screens and onboarding delight.

api.oanor.com/advice-api

Useless Facts API — oanor API marketplace

Useless Facts API

Random and daily trivia facts via the open Useless Facts API — no key. The random endpoint returns a surprising, mostly-useless fact; the today endpoint returns the fact of the day; and both are available in English or German, each fact carrying its source attribution, source URL and a permalink. Real curated facts, with the daily fact cached for speed — no key. 3 endpoints. Ideal for daily-fact widgets, newsletters, chatbots, loading screens and onboarding delight.

api.oanor.com/uselessfacts-api

Frequently asked questions

Quick answers about pricing, quotas, and integration.

How do I get an API key for xkcd API?
Sign up for free at oanor.com, generate an API key from the developer dashboard, and call xkcd API with the x-oanor-key header. No credit card needed for the free tier.
What's the rate limit for xkcd API?
Free tier allows 1 request per second. Paid plans scale up to 50 requests per second on the Mega tier. Hard limits return HTTP 429 above the quota — no surprise overage charges.
How much does xkcd API cost?
xkcd API has a free tier with 100 calls / month. Paid plans start at €2.80 / month with higher quotas and faster rate limits.
Can I cancel my subscription anytime?
Yes. Plans are billed monthly and you can cancel anytime from your billing dashboard. No long-term contracts and no cancellation fee.
Is xkcd API GDPR-compliant?
All requests to xkcd API go through our EU-based gateway. Your upstream API key never leaves our server and no personal data is shared with the upstream provider beyond the request you send.

Pick an endpoint from the list on the left to see its details and try it.

Code snippets

Sign up to get an API key, then call any path under your slug.

curl https://api.oanor.com/xkcd-api/SOME_PATH \
  -H "x-oanor-key: oanor_test_..."
const res = await fetch("https://api.oanor.com/xkcd-api/SOME_PATH", {
  headers: { "x-oanor-key": "oanor_test_..." }
});
const data = await res.json();
$ch = curl_init("https://api.oanor.com/xkcd-api/SOME_PATH");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ["x-oanor-key: oanor_test_..."]);
$response = curl_exec($ch);
import requests
r = requests.get(
    "https://api.oanor.com/xkcd-api/SOME_PATH",
    headers={"x-oanor-key": "oanor_test_..."},
)
print(r.json())

Ratings

Sign in to rate.

No reviews yet.

Discussion

Ask questions, share usage tips, get answers from the provider and other developers. Public — anyone can read.

Sign in to start a thread or reply.

Sign in

New thread

/ 4000

📌 Pinned 🔒 Locked

·

· ·

/ 4000

🔒 This thread is locked — no new replies.

  • No threads yet — start the discussion.

Support

Private 1:1 support with the provider — billing questions, integration issues, account problems. Only you and the provider team can see these threads.

Sign in to open a support ticket.

Sign in

Open new ticket

Describe what you need help with. The provider team gets an email and replies on the ticket page.

  • No tickets yet for this API.

Subscription active — calls can start immediately.

Send your first request —

Subscription active — copy a snippet and fire off your first call.