TL;DR
UUIDTools provides a simple REST API for generating UUIDs (Universally Unique Identifiers) in versions 1, 3, 4, 5, 6, 7, and 8. Just hit the endpoint and get a clean JSON response with your UUID. Perfect for generating unique IDs for database records, user sessions, transaction IDs, or any system that needs collision-resistant identifiers. No signup, no rate limits.
Quick start: https://www.uuidtools.com/api/generate/v1
No API key needed — just make a request!
How to Use This API
1. Generate a v1 UUID (Timestamp-based)
UUID v1 uses the current timestamp and MAC address:
https://www.uuidtools.com/api/generate/v1
Response: ["c0a8a0b0-1a2b-11ec-8d3d-0242ac130003"]
2. Generate a v4 UUID (Random)
UUID v4 is fully random — most common for general use:
https://www.uuidtools.com/api/generate/v4
3. Generate v7 UUID (Time-ordered + Random)
UUID v7 combines a Unix timestamp with random bits, sortable by time:
https://www.uuidtools.com/api/generate/v7
4. Generate Multiple UUIDs at Once
Append a count to generate many at once:
https://www.uuidtools.com/api/generate/v4/count/10
Returns an array of 10 UUIDs in a single request.
5. JavaScript — Generate and Use a UUID
async function generateUUID(version = 4) {
const resp = await fetch(`https://www.uuidtools.com/api/generate/v${version}`);
const [uuid] = await resp.json();
return uuid;
}
generateUUID(4).then(id => console.log('New ID:', id));
// e.g., "e3b0c442-98fc-1c14-9a7a-3f0a0a0a0a0a"
6. Python — Batch UUID Generation
import requests
# Generate 5 v4 UUIDs
resp = requests.get('https://www.uuidtools.com/api/generate/v4/count/5')
uuids = resp.json() # returns a list
for uuid in uuids:
print(uuid)
# Generate a v1 UUID
v1 = requests.get('https://www.uuidtools.com/api/generate/v1').json()[0]
print(f"v1 (time-based): {v1}")
https://www.uuidtools.com/api/generate/v1
Frequently Asked Questions
- Which UUID version should I use?
- v4 (random) is the most common — suitable for database IDs, session tokens, and filenames. v1 (time-based) is good for distributed systems where IDs should be sortable by creation time. v7 (time-ordered) is the modern choice for database primary keys with time-based sorting and random distribution.
- Can I generate UUIDs in bulk?
- Yes! Append
/count/{n}to generate up to 1000 UUIDs in a single request. For example,/api/generate/v4/count/100returns 100 random UUIDs. - Does this work for UUID v3 and v5 (namespace-based)?
- Yes, but v3 and v5 require a namespace and name. Use
/api/generate/v3/namespace/{namespace}/name/{name}format. Check the UUIDTools documentation for namespace URL formats. - Is the API rate limited?
- UUIDTools doesn't publish strict rate limits, but reasonable use is expected. It's designed for developer tools and CI/CD pipelines where you need ephemeral IDs.
- What format does the response use?
- Always JSON. The response is an array of UUID strings, even for a single UUID:
["uuid-string-here"]. HTTP status code is 200 on success. - What's the difference between UUID v6, v7, and v8?
- v6 is a reordered v1 for better database indexing. v7 is time-ordered with random bits (RFC 9562). v8 is experimental/vendor-specific. All are supported by UUIDTools for testing and development.
API Details
- API URL
https://www.uuidtools.com/api/generate/{version}- Documentation
- www.uuidtools.com
- Category
- Utility
- Authentication
- Not Required
- Geographic Coverage
- Global
What You Can Build
- CI/CD pipeline that generates unique build identifiers
- Database migration tool that creates UUID primary keys
- Session token generator for web applications
- Test data factory that populates UUID fields for integration tests
- Distributed tracing system where spans need unique, sortable IDs