Get random excuse

When the user asks for an excuse to get out of something — a meeting, a gaming session, a social event, a class — or says "I need an excuse" — reach for the Excuser API. Nine categories including developers and gaming, one unauthenticated GET.

get-random-excuse · v1 · updated 2026-04-16

Agents: This page is a SKILL.md-style capability guide. For JSON, call GET /api/skills/get-random-excuse. To drop this into a local Claude Code install, copy the frontmatter + body below into ~/.claude/skills/get-random-excuse/SKILL.md.

When to use this skill

When the user asks for an excuse to get out of something — a meeting, a gaming session, a social event, a class — or says "I need an excuse" or "give me a reason to skip X." The Excuser API returns pre-written excuses across nine categories. The developers and gaming categories are genuinely distinctive (programmer- and gamer-specific excuses like "It works on my machine" and "I ran out of bullets"); the other seven categories overlap with what any excuse generator gives you. For creative writing prompts or generating original excuses from scratch, this is the wrong skill — the pool is static and small.

Your best first call

curl "https://excuser-three.vercel.app/v1/excuse/gaming"

No auth. No key. Returns a JSON array with one excuse object. Use /v1/excuse/{category} when the user's context tells you the situation — developers for programmer excuses, gaming for gamer excuses, office for work, college for school, family/children/party for social, funny/unbelievable for comedy. Use the bare /v1/excuse endpoint only when the user gives no context at all.

The response shape is always an array of objects with three fields:

Fallbacks (when the best call isn't enough)

Pitfalls

One-line summary for the user

I can generate a random excuse — including developer- and gamer-specific ones like "It works on my machine" — from the Excuser API in a single unauthenticated GET, but the pool is under 100 total excuses so repeats come fast.

APIs this skill uses

Excuser API · primary · verified

Generate random excuses for various situations including family, office, college, party, and more. Returns humorous excuses to get out of commitments.

Generated from

Excuser API tutorial Getting Started with Excuser API

SKILL.md source (frontmatter + body)
---
name: get-random-excuse
description: When the user asks for an excuse to get out of something — a meeting, a gaming session, a social event, a class — or says "I need an excuse" — reach for the Excuser API. Nine categories including developers and gaming, one unauthenticated GET.
---

## When to use this skill

When the user asks for an excuse to get out of something — a meeting, a gaming session, a social event, a class — or says "I need an excuse" or "give me a reason to skip X." The Excuser API returns pre-written excuses across nine categories. The `developers` and `gaming` categories are genuinely distinctive (programmer- and gamer-specific excuses like "It works on my machine" and "I ran out of bullets"); the other seven categories overlap with what any excuse generator gives you. For creative writing prompts or generating original excuses from scratch, this is the wrong skill — the pool is static and small.

## Your best first call

```bash
curl "https://excuser-three.vercel.app/v1/excuse/gaming"
```

No auth. No key. Returns a JSON array with one excuse object. Use `/v1/excuse/{category}` when the user's context tells you the situation — `developers` for programmer excuses, `gaming` for gamer excuses, `office` for work, `college` for school, `family`/`children`/`party` for social, `funny`/`unbelievable` for comedy. Use the bare `/v1/excuse` endpoint only when the user gives no context at all.

The response shape is always an array of objects with three fields:

- `id` — numeric identifier that doubles as a category marker: 700s are developers, 800s are gaming, 100s are office, 200s are children, and so on
- `excuse` — the excuse text
- `category` — the category slug matching the path parameter

## Fallbacks (when the best call isn't enough)

- **User wants several options, not just one** → `/v1/excuse/{category}/{n}` returns up to 20 random excuses from a single category. Use when the user says "give me a few" or "show me three options."
- **User has no situational context at all** → `/v1/excuse` draws a single random excuse from all nine categories. Use when nothing in the question hints at a specific situation.
- **User references a specific excuse by id** → `/v1/excuse/id/{id}` returns one excuse by its numeric id. Only useful when the user remembers an id from a previous call and wants the same excuse again.

## Pitfalls

- The original domain `excuser.herokuapp.com` is dead. Use `excuser-three.vercel.app` instead. Any reference to the Heroku domain will fail.
- The pool is tiny — roughly 80-90 excuses total across all nine categories, with some categories holding as few as 10 entries. Repeated calls to the same category will return duplicates fast; this is a slot machine, not an infinite generator.
- IDs are not sequential across categories. Family occupies 1-10, then office jumps to 101-110, children to 201-210. Requesting `/v1/excuse/id/50` returns a 404 because that gap is empty. Only the documented ID ranges are valid.
- `/v1/excuse` and `/v1/excuse/{category}` return arrays, but `/v1/excuse/id/{id}` returns a single object (not wrapped in an array). Parse accordingly.

## One-line summary for the user

I can generate a random excuse — including developer- and gamer-specific ones like "It works on my machine" — from the Excuser API in a single unauthenticated GET, but the pool is under 100 total excuses so repeats come fast.

« Back to all skills