Free and instant APIs to know what is your IP, what time is it, to generate UUID, ULID and KSUID as well as various HTTP debugging and utility methods.

Usage

All APIs listed here are free to use, with the caveat that no guarantee of accuracy, availability or access is made.

/v1/ip

name req? default decription
output N json One of json, text

examples

/v1/id

name req? default decription
type N uuidv4 One of uuidv4, uuidv4x, ulid ksuid (uuidv4x is 128bits of random data with no version/variant bits)
count N 1 Number of ids to generate: integer of 1 to 5
output N json One of json, text

examples

/v1/time

name req? default decription
time N now The base time, as unix epoch (millisecond), RFC3339 or RFC2822
add N 0 The integer value to add to the date, can be negative
add_unit N second The unit to add, one of millisecond, second, minute, hour, day
format N unix_ms How to return the date, one of unix_ms, unix, RFC3339, RFC2822, day_of_year, or a chrono strftime format
output N json One of json, text

examples

/v1/books

name req? default decription
read_from N none Filter where read is greater or equal. ISO8601 or unix epoch
read_to N none Filter where read is less or equal. ISO8601 or unix epoch
rating_from N none Filter where rating is greater or equal. Float.
rating_to N none Filter where rating is less or equal. Float.
sort N id One of id, author, pages, publisher, rating, read, title
asc N true Boolean, sort ascding = true, sort decending = false
page N 1 Page number, integer > 0
perpage N 20 Number of items per page 1-100
output N json One of json, csv, tsv, msgpack, proto3 (books.proto)

examples

/v1/books/:ID

name req? default decription
output N json One of json, csv, tsv, msgpack

examples

/v1/http/:TYPE

name req? default decription
type Y 404
  • ### - returns an empty response with the specific status code
  • echo - echos the request (header + body max size 2K)
  • nosj - invalid json
  • close - abruptly closes the connection

examples

/v1/base/encode /v1/base/decode

name req? default decription
type N 64 One of 16, 32, 58, 62, 64, 64_url, crockford
case N upper upper / lower (only relevant for encoding of 16)
padding N true true / false (only relevant for encoding and decoding of 32, 64, 64_url)
value Y The value to encode/decode. For encoding, you can also POST to /v1/base/encode to have the full body encoded (up to 1K)
output N json One of json, text

examples

/v1/files

Various simple files are available at /v1/files

/v1/images

Various simple images are available at /v1/images

domains

The above APIs are available using either the whysolazy.com or devislazy.com

They are available using http (port 80 or 4080) or https (port 443 or 4443).

Various subdomains can be used to alter the behavior of these APIs:

auth Requires basic authentication
Username: lazydev
Password: islazy
slow Limits a connection to 500B/sec
time Same as calling /v1/time?output=text
epoch Same as calling /v1/time?output=text&format=unix_ms
uuid Same as calling /v1/id?output=text
ip Same as calling /v1/ip?output=text
301 Redirect using 301
302 Redirect using 302
303 Redirect using 303
307 Redirect using 307
301s Redirect using 301 switching scheme (http <=> https)
302s Redirect using 302 switching scheme (http <=> https)
303s Redirect using 303 switching scheme (http <=> https)
307s Redirect using 307 switching scheme (http <=> https)
invalid Serves with an invalid certificate (available on https only)
gemini Gemini server running on the default port 1965

examples

About

Built with NGINX, Elixir, Rust & SQLite. Hosted on Baremetal using systemd.

Send email/feedback to hi@whysolazy.com