Quick start
curl
curl https://anycrap.shop/api/v1/products/random \ -H "Authorization: Bearer YOUR_API_KEY"
response
{
"data": [{
"id": "1a156178-0240-4c3e-861c-47b6568123f0",
"slug": "thought-cancelling-headphones",
"name": "Thought-Cancelling Headphones",
"description": "Headphones that don't just block sound — they block thoughts.",
"image": "https://cdn.crapify.me/products/...",
"categories": ["gadgets", "anti-productivity"],
"created_at": "2025-05-04T13:37:13.051Z"
}]
}Endpoints
GET
/api/v1/productsList products (paginated, filterable)GET
/api/v1/products/randomRandom product(s)GET
/api/v1/products/:slugSingle product by slugGET
/api/v1/categoriesAll categories with countsPOST
/api/v1/keysRegister API key (no auth required)Rate limit: 60 requests/minute per key. All endpoints return JSON with CORS headers.
See the full API reference for query parameters, filters, and response schemas.
35,000+ absurdist products in your terminal.
bash
# install once npm i -g anycrap anycrap key ak_your_key # or just use npx npx anycrap random npx anycrap random -c food npx anycrap search "underwater" npx anycrap categories
Drop-in for faker.commerce.productName() — no API key, no network calls, works offline.
npm i anycrap-faker
import { faker } from '@faker-js/faker';
import { createAnycrapFaker } from 'anycrap-faker';
const anycrap = createAnycrapFaker(faker);
anycrap.productName(); // "Thought-Cancelling Headphones"
anycrap.productDescription(); // "Headphones that don't just block sound..."
anycrap.productSlug(); // "thought-cancelling-headphones"
anycrap.product(); // { name, slug, description, category }Get your API key
Free. No credit card. Instant.