โšกcleverly.tools

Free public API โ€” no key, no sign-up

Four plain HTTP endpoints you can call from anything that can make a GET request: a QR code generator, a hashing endpoint, live currency rates and placeholder text. CORS is open, so browser JavaScript works too.

๐Ÿ”‘ No API key๐Ÿ†“ No quota to buy๐ŸŒ CORS enabledโšก Cached at the edge

Quick start

<!-- A QR code, with no JavaScript at all -->
<img src="https://cleverly.tools/api/qr?text=https://example.com&size=300" alt="QR code" />

# Or from the command line
curl "https://cleverly.tools/api/hash?text=hello&algorithm=sha256"

QR Code

GET /api/qrโ†’ image/png or image/svg+xml

Returns a QR code image. Point an <img> tag straight at it โ€” no JavaScript and no build step needed.

Parameters

textrequired
The content to encode. Up to 1,200 characters. Alias: data
size
Width in pixels, 64โ€“1000. Default 300
format
png or svg. Default png
ecc
Error correction: L, M, Q or H. Default M. Use H if the code will be printed or partly covered
margin
Quiet zone in modules, 0โ€“10. Default 2
dark
Foreground colour as hex, e.g. 1f2937. Default 000000
light
Background colour as hex. Default ffffff

Try it

https://cleverly.tools/api/qr?text=https://cleverly.tools

Hash

GET /api/hashโ†’ application/json

Hashes a string and returns the hex digest. Handy for checksums, cache keys and fixtures. Note that MD5 and SHA-1 are broken for security purposes and should only be used for integrity checks.

Parameters

textrequired
The string to hash. Up to 100,000 characters
algorithm
md5, sha1, sha256, sha384 or sha512. Default sha256. Alias: algo

Try it

https://cleverly.tools/api/hash?text=hello

Exchange Rates

GET /api/ratesโ†’ application/json

Live mid-market fiat exchange rates for 160+ currencies, based on USD. Refreshed hourly from a public source. Not suitable for settlement or trading.

Try it

https://cleverly.tools/api/rates

Placeholder Text

GET /api/loremโ†’ application/json

Deterministic lorem ipsum for mockups, seed data and tests. The same request always returns the same text.

Parameters

unit
paragraphs, sentences or words. Default paragraphs
count
How many. Up to 50 paragraphs, 200 sentences or 1,000 words
start
Pass false to skip the classic 'Lorem ipsum dolor sit amet' opener

Try it

https://cleverly.tools/api/lorem?unit=paragraphs&count=3

Questions

Do I need an API key or an account?โ–ผ
No. Every endpoint is an open GET request. There is nothing to sign up for and no token to rotate.
Is there a rate limit?โ–ผ
There is no published quota. The deterministic endpoints are cached aggressively at the edge, so normal use costs us almost nothing. Please be reasonable: cache responses on your side, and don't hammer the API in a tight loop. Abusive traffic may be blocked.
Can I use it in a commercial project?โ–ผ
Yes. A link back to cleverly.tools is appreciated but not required for API use.
Is CORS enabled?โ–ผ
Yes. Every endpoint sends Access-Control-Allow-Origin: *, so you can call it directly from browser JavaScript.
Why is there no password endpoint?โ–ผ
Deliberately. A password that travels over the network from someone else's server is not a secret you should rely on. Use the in-browser password generator instead โ€” it never sends anything anywhere.
What happens if an endpoint changes?โ–ผ
These are stable, single-purpose endpoints and we intend to keep the parameters backwards compatible. New options may be added; existing ones won't be removed without a long notice period.

Prefer a ready-made widget?

If you want a working tool on your page rather than raw data, all 94 tools can be embedded with one line of HTML.