ULID API - Free ULID Generator
Returns a ULID (Universally Unique Lexicographically Sortable Identifier). ULIDs encode a millisecond timestamp in the first 48 bits followed by 80 bits of randomness, making them sortable by creation time.
Code examples
curl -X POST https://api.botoi.com/v1/uuid/ulid \
-H "Content-Type: application/json" \
-d '{}'When to use this API
Time-sortable primary keys
Use ULIDs as database primary keys to get chronological ordering without a separate created_at column or auto-increment sequence.
Event stream identifiers
Assign ULIDs to events in a Kafka or SQS queue so consumers can reconstruct ordering from the ID alone.
Frequently asked questions
How is a ULID different from UUID v7?
Both encode a timestamp for sortability. ULIDs use Crockford Base32 encoding (26 characters), while UUID v7 uses the standard 36-character hex format. ULIDs are shorter and case-insensitive.
Can I store ULIDs in a UUID database column?
Yes. A ULID is 128 bits, the same size as a UUID. Most libraries provide a function to convert between the two formats.
Is the timestamp in a ULID extractable?
Yes. The first 10 characters of a ULID encode a Unix millisecond timestamp in Crockford Base32. You can decode it to recover the creation time.
Are ULIDs monotonically increasing within the same millisecond?
The spec recommends monotonic ordering within the same millisecond by incrementing the random component. This API follows that recommendation.
Get your API key
Free tier includes 5 requests per minute with no credit card required. Upgrade for higher limits.