Unix time stored in a signed 32-bit integer overflows at 03:14:07 UTC on 19 January 2038 — the counter wraps to a negative number and the date jumps to 1901. Any system still using a 32-bit time_t, including plenty of embedded devices and some database columns, is affected. This tool flags timestamps beyond that boundary.
Why do some APIs use milliseconds and others seconds?
Convention, mostly by language. C, Python, PHP, Go and Unix tools default to seconds; JavaScript's Date.now() and Java's currentTimeMillis() return milliseconds. JWT timestamps are always seconds per RFC 7519. Mixing the two is one of the most common date bugs in cross-language systems.
Does Unix time account for leap seconds?
No, and this is a deliberate simplification in the standard. Unix time assumes every day is exactly 86,400 seconds, so a leap second is either repeated or skipped depending on the system. It is not a monotonic count of real elapsed seconds — use a monotonic clock if you are measuring durations.