Test Data — entry 017 of 19

UUID Generator

Verified Jul 2026

UUIDTools is a free, keyless REST API for minting and inspecting UUIDs: GET endpoints generate v1 (timestamp-based), v4 (random), and namespace-derived v3/v5 UUIDs in bulk via a count parameter, plus a /decode route that extracts the version, variant, and embedded timestamp from any UUID string. Every response is a plain JSON array, requests are capped at 60 per minute per IP, and there is no signup or paid tier.

UUIDTools is a free, keyless REST API for minting and inspecting UUIDs: GET endpoints generate v1/v3/v4/v5 UUIDs in bulk via a count path segment, and a /decode route extracts the version, variant, and embedded byte content from any UUID string. A live probe this run confirmed the documented 60-requests-per-minute cap is still enforced (x-ratelimit-limit: 60 on every response) and that generation and decoding return two different shapes — a bare array versus a plain object.

uuidgeneratorrest-apikeylessdeveloper-tools
AuthenticationNone requiredCall it straight away — no key, no signup.
HTTPSSupportedTraffic is encrypted in transit.
CORSEnabledCallable directly from browser JavaScript.
PricingFreeNo paid tier — free for the documented use case.
FormatsJSONResponses can be requested as JSON.

GreatAPIs Score

Score74out of 100
Authentication25/25No authentication required
Pricing20/20Free to use
Docs0/20No docs or spec available
Formats9/15Single response format
Freshness20/20Verified within 6 months

Embed this badge

Scored 74 on greatapis.com
<a href="https://greatapis.com/api/uuid-generator/"><img src="https://greatapis.com/badge/uuid-generator.svg" alt="Scored 74 on greatapis.com"></a>

Auth quickstart

  1. No API key or signup required for any route. Every response carries x-ratelimit-limit: 60 with x-ratelimit-remaining counting down live — confirmed this run across several consecutive calls — so the documented 60/minute-per-IP figure is still accurate; there's no separate quota or header to watch for auth.
Stored keyNo key stored

Your key is stored only in this browser (localStorage) and sent directly to the API — never to greatapis.

Generate a single v4 UUID

GEThttps://www.uuidtools.com/api/generate/v4

200 application/json

["c9ac7763-bf82-44c1-b668-d163fcf1097f"]

Try it

Developer reference

Base URLhttps://www.uuidtools.com/api
Rate limit

60 requests per minute, per an example error message in uuidtools.com/docs ("You may have exceeded the rate limit (60 requests per minute)")

Key endpoints
  • GET/generate/v4
  • GET/generate/v4/count/{count}
  • GET/decode/{uuid}

Gotchas & limits

  • Every /generate/* response is a bare JSON array, even for a single UUID — there's no wrapping object to unwrap, unlike /decode, which returns a plain object: a live GET /decode/c9ac7763-bf82-44c1-b668-d163fcf1097f this run returned {"encode":{"STR":"...","SIV":"..."},"decode":{"variant":"DCE 1.1, ISO/IEC 11578:1996","version":"4 (random data based)","contents":"..."}}.
  • The count is a path segment, not a query parameter, and it's capped at 100: a live GET /generate/v4/count/999999 this run returned HTTP 400 with {"errors":{"count":["The count must be between 1 and 100."]}} — request in batches of 100 or fewer.
  • A non-numeric count also 400s with a distinct message: a live GET /generate/v4/count/abc this run returned {"errors":{"count":["The count must be a number."]}}, still with access-control-allow-origin: * and the rate-limit headers present on the error response itself.
  • CORS is wide open unconditionally, unlike the docs host at the stored url: a live GET against the real API host with no Origin header at all still returned access-control-allow-origin: * — confirmed with and without an Origin header, so no proxy is ever required.
  • An OPTIONS request against /generate/v4 returns HTTP 200 with a plain allow: GET,HEAD header rather than the access-control-allow-methods header a strict CORS preflight would check — browsers accept this in practice since only simple GETs are ever made, but a stricter CORS client wouldn't find the header it's looking for.