⚡ Gadget Humans API Hub

11 free developer APIs. No signup required. $5/mo for production.

I Built 11 Free Developer APIs in One Night — Here's the Full Source Code

Last weekend, I sat down and built an entire API hub in a single night. Eleven endpoints — QR codes, password generators, UUIDs, hash functions, base64 encode/decode, lorem ipsum text, JSON prettify/minify, color conversion, email verification, IP geolocation, and timestamp conversion.

All of them are free (100 requests/day), open source, and deployed on Cloudflare Workers. If you need more, Pro is $5/mo (10,000/day) and Business is $15/mo (100,000/day).

The base URL is dead simple:

https://api.gadgethumans.com/

Why Build This?

Every developer has been there. You need a quick QR code for a demo. Or you're debugging and need to hash a string. Or you're writing tests and need placeholder text. Usually you open three browser tabs, search for an online tool, dodge five ads, wait for a captcha, and eventually copy-paste the result.

I wanted a single API endpoint I could curl from anywhere. No UI. No captchas. No signup walls. Just clean JSON responses and fast edge deployment.

The tech stack: One Cloudflare Worker (~30 KiB gzipped), qrcode-generator for QR codes, ipapi.co for geolocation, Cloudflare DNS for MX lookups. Self-hosted on api.gadgethumans.com.

The 11 Endpoints — API Reference

1. 📱 QR Code Generator

GET /qr?text=hello&size=300&format=png

Generate QR codes as PNG or SVG. The most popular tool. Max 2,000 character input, up to 1,000px size.

curl "https://api.gadgethumans.com/qr?text=https://example.com&format=png" > qr.png
curl "https://api.gadgethumans.com/qr?text=hello&format=svg"

Returns an image (PNG or SVG) — not JSON. Set the format to svg for scalable, png for raster. Free tier works without any API key.

2. 🔑 Password Generator

GET /password?length=16&numbers=true&symbols=true&uppercase=true

Generate cryptographically secure passwords. Free: one at a time. Paid: batch up to 100.

curl "https://api.gadgethumans.com/password?length=32&symbols=true"
# → {"password":"aB3#kL9$xR2@pQ7!","length":32,"options":{...}}

3. 🎲 UUID Generator

GET /uuid?count=1

Generate RFC 4122 UUID v4 identifiers. Free: one. Paid: up to 1,000 at once.

curl "https://api.gadgethumans.com/uuid"
# → {"uuids":"550e8400-e29b-41d4-a716-446655440000"}

4. 📁 Hash Generator

GET /hash?text=hello&algorithm=sha256

Hash text with MD5, SHA-1, SHA-256, SHA-512 — or all four at once. Max 5,000 characters input.

curl "https://api.gadgethumans.com/hash?text=hello&algorithm=all"
# → {"input":"hello","md5":"5d41402abc4b2a76b9719d911017c592","sha1":"aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d","sha256":"2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824","sha512":"9b71d224bd62f3785d96d46ad3ea3d73319bfbc2890caadae2dff72519673ca72323c3d99ba5c11d7c7acc6e14b8c5da0c4663475c2e5c3adef46f73bcdec043"}

5. 🔤 Base64 Encode/Decode

GET /base64?text=hello&mode=encode

Encode or decode Base64 strings. Max 50,000 characters. Returns both input and output with length info.

curl "https://api.gadgethumans.com/base64?text=hello&mode=encode"
# → {"mode":"encode","output":"aGVsbG8=","input_length":5,"output_length":8}

6. 📝 Lorem Ipsum Generator

GET /lorem?type=paragraphs&count=3

Generate placeholder text as paragraphs, sentences, or words. Free: up to 20 units. Paid: up to 100.

curl "https://api.gadgethumans.com/lorem?type=words&count=10"
# → {"type":"words","count":10,"text":"lorem ipsum dolor sit amet...","chars":62}

7. 📋 JSON Prettify

GET /json?json={"key":"value"}&mode=prettify

Prettify, minify, or validate JSON. Three modes in one endpoint. Max 100,000 characters.

curl "https://api.gadgethumans.com/json?json=%7B%22name%22%3A%22test%22%7D&mode=validate"
# → {"valid":true,"type":"object","keys":1}

8. 🎨 Color Converter

GET /color?value=%23ff0000&from=hex&to=rgb

Convert between HEX (#ff0000) and RGB (rgb(255,0,0)). Supports 3-digit and 6-digit hex.

curl "https://api.gadgethumans.com/color?value=%23ff0000&from=hex&to=rgb"
# → {"input":{"format":"hex","value":"#ff0000"},"output":{"format":"rgb","value":"rgb(255, 0, 0)"},"components":{"r":255,"g":0,"b":0}}

9. 📧 Email Verify

GET /[email protected]

Verify email addresses with format validation, MX DNS lookup, and disposable domain detection. Returns a score (0-100).

curl "https://api.gadgethumans.com/[email protected]"
# → {"email":"[email protected]","valid":true,"format_valid":true,"mx_valid":true,"is_disposable":false,"score":100}

The email verify system checks three things: (1) email format regex, (2) MX DNS records via Cloudflare's DNS-over-HTTPS, and (3) a curated list of 80+ disposable email domains. Each check adds to the score. Score ≥ 65 = valid.

10. 🌍 IP Geolocation

GET /ip?ip=8.8.8.8

Look up any IPv4 address — city, country, coordinates, timezone, ISP. Omit the IP to look up your own.

curl "https://api.gadgethumans.com/ip?ip=8.8.8.8"
# → {"ip":"8.8.8.8","city":"Mountain View","country":"United States","latitude":37.4056,"longitude":-122.0775,"org":"Google LLC","timezone":"America/Los_Angeles"}

11. ⏱️ Timestamp Converter

GET /timestamp?timestamp=1715385600

Convert Unix timestamps to human-readable dates, UTC, local time, and relative time ("2 years ago"). Auto-detects millisecond timestamps.

curl "https://api.gadgethumans.com/timestamp?timestamp=1715385600"
# → {"timestamp":1715385600,"utc":"2024-05-11 00:00:00 UTC","day_of_week":"Saturday","relative":"1 year ago","year":2024,"month":5,"day":11}

Pricing — Free for a Reason

Free

$0/mo
  • 100 requests/day
  • All 11 endpoints
  • No API key needed
  • Rate limited per IP
Ready to use →

Business

$15/mo
  • 100,000 requests/day
  • All 11 endpoints
  • Dedicated API key
  • Priority support
Subscribe →

Open Source — All of It

Every API is fully open source. You can self-host any of them on your own Cloudflare account in under 5 minutes:

APIGitHub Repo
QR Codescotia1973-bot/qrcode-api
Passwordscotia1973-bot/password-api
UUIDscotia1973-bot/uuid-api
Hashscotia1973-bot/hash-api
Base64scotia1973-bot/base64-api
Lorem Ipsumscotia1973-bot/lorem-api
JSON Prettifyscotia1973-bot/json-prettify-api
Color Converterscotia1973-bot/color-converter-api
Email Verifyscotia1973-bot/email-verify-api
IP GeolocationPart of api-hub
TimestampPart of api-hub

Each repo has a README with self-host instructions. The pattern is always the same:

git clone https://github.com/scotia1973-bot/qrcode-api.git
cd qrcode-api
npm install
npx wrangler deploy

The unified API hub (all 11 endpoints in one worker) is at scotia1973-bot/api-hub.

Architecture — One Worker, 11 Routes

Here's how it all fits together in a single Cloudflare Worker (~30 KiB gzipped):

// Unified routing — one worker, all endpoints
const segment = path.split('/')[1];
if (segment === 'qr') return handleQR(url);
if (segment === 'password') return handlePassword(url, isPaid);
if (segment === 'uuid') return handleUUID(url, isPaid);
if (segment === 'hash') return handleHash(url);
if (segment === 'base64') return handleBase64(url);
if (segment === 'lorem') return handleLorem(url, isPaid);
if (segment === 'json') return handleJSON(url);
if (segment === 'color') return handleColor(url);
if (segment === 'email-verify') return handleEmailVerify(url);
if (segment === 'ip') return handleIP(url, request);
if (segment === 'timestamp') return handleTimestamp(url);

Each handler is a pure function — takes URL params, returns a Response. Stripe integration sits at /subscribe and /webhook. Rate limiting uses per-IP in-memory counters for the free tier, and API key lookups for paid users.

Why Not Just Use an Online Tool?

You can. But here's why an API beats an online tool:

What's Next

I'm planning wave 3 with:

If you want early access or have ideas for the next endpoint, email me.

🚀 Try It Now — Completely Free

No signup. No rate limit anxiety. Just curl.

Open the API Hub

or subscribe for Pro ($5/mo) · Business ($15/mo)

All source code is MIT licensed. Fork it, self-host it, modify it — go wild.