UUID v5 Namespace Generator
platform.uuid_namespace_id
Overview
You pass a namespace (dns, url, oid, x500, or a custom UUID) and a name string; we return a deterministic UUID v5 per RFC 9562 — same inputs always produce the same UUID. Do not use this for random IDs (use platform.entropy_token) or time-ordered identifiers.
You need stable, collision-free identifiers derived from domain data. UUID v5 provides this deterministically without coordination or storage.
Reliability
STRICT and deterministic — the same namespace and name always give you the same value, on any deployment and at any time. No state, no network, no side effects. Anyone who can guess your name can recompute the identifier, so treat it as a stable reference and never as a secret or an access token. Input validation (not retryable): a missing namespace or name; a namespace that is neither dns, url, oid, x500 nor a well-formed UUID; a name longer than 2048 characters.
Context footprint
Pure computation with no I/O. Returns instantly. A successful call costs 1 execution credit.
When to use it
When you need the same input to always produce the same UUID — for idempotent writes, content addressing, or reproducible resource references.
When you need randomness (use platform.entropy_token), time-ordering, or when the namespace+name pair is not naturally unique.
Scope
Non-goals
- Does not generate random UUIDs (v4)
- Does not generate time-based UUIDs (v7)
- Does not store or manage UUIDs
- Does not hide the name — a guessable name gives a guessable UUID
Properties
Capabilities
Cost & billing
Flat rate per invocation
File handling
How we handle your data
What this means
This skill may receive sensitive content, but it does not target sensitive data and returns only a structured non-sensitive result.
Squillify guarantees
- Runs inside Squillify
- This skill runs inside Squillify.
- Payloads are not sent to an external service by this skill.
- Squillify does not permanently store submitted payloads.
- Telemetry records metadata only, not submitted content.
- Submitted payloads are not used for training.
- Submitted payloads are not reviewed by humans.
- This skill does not target sensitive data.
- The response does not contain submitted content.
Your responsibility
Squillify does not determine whether submitted content is sensitive. Your application is responsible for deciding what data it is allowed to submit. Your application is responsible for securing the response.
Input schema
| Field | Type | Required | Description |
|---|---|---|---|
| namespace | string | Yes | Standard namespace alias or canonical custom UUID. |
| name | string | Yes | UTF-8 name hashed in the namespace. |
Output schema
| Field | Type | Required | Description |
|---|---|---|---|
| uuid | string | Yes | Canonical UUID text. |
| version | integer | Yes | UUID version, always 5. |
| variant | string | Yes | UUID variant, always RFC 4122 for this version. |
| namespace | string | Yes | Canonical UUID text. |
| namespaceAlias | string | No | Resolved standard namespace alias. |
| algorithm | string | Yes | Name-hash algorithm. |
API contract
POST /v1/executecurl -sS -X POST "$BASE/v1/execute" -H "Authorization: Bearer $KEY" -H 'Content-Type: application/json' -d '{"skillKey":"platform.uuid_namespace_id","input":{"namespace":"dns","name":"example.com"}}'import { Squillify } from "@squillify/sdk";
const sq = new Squillify({ apiKey: process.env.SQUILLIFY_API_KEY });
const { output } = await sq.execute("platform.uuid_namespace_id", {"namespace":"dns","name":"example.com"});Errors
| Code | HTTP | Retryable | Description |
|---|---|---|---|
| VALIDATION_ERROR | 400 | No | The request payload failed schema validation. |
| UNAUTHORIZED | 401 | No | Missing or invalid API key. |
| SKILL_NOT_ACCESSIBLE | 403 | No | The API key is not granted access to this skill. |
| SKILL_NOT_AVAILABLE_FOR_PLAN | 403 | No | This skill is not included in your current plan. |
| PLAN_ELIGIBILITY_UNAVAILABLE | 503 | Yes | Plan eligibility could not be decided. Retry after backoff. |
| SKILL_NOT_FOUND | 404 | No | The requested skill or version does not exist. |
| TENANT_RATE_LIMITED | 429 | Yes | Request rate limit exceeded. Retry after backoff. |
| QUOTA_EXCEEDED | 429 | Yes | Plan quota exhausted. Retryable once the quota period resets. |
| EXECUTION_TIMEOUT | 504 | Yes | Execution exceeded the allowed time budget. |
Other limits
| Limit | Value |
|---|---|
| Recommended inline bytes | 32 KiB |
Limitations
- Does not generate random UUIDs (v4)
- Does not generate time-based UUIDs (v7)
- Does not store or manage UUIDs
- Does not hide the name — a guessable name gives a guessable UUID
- Generating random unique IDs (use platform.entropy_token)
- Time-ordered identifiers
- Cryptographic key generation
How to call
POST /v1/execute (requires authentication)
{
"skillKey": "platform.uuid_namespace_id",
"input": {
"namespace": "dns",
"name": "example.com"
}
}Examples
DNS namespace UUID
{
"namespace": "dns",
"name": "example.com"
}{
"uuid": "cfbff0d1-9375-5685-968c-48ce8b15ae17",
"version": 5,
"variant": "RFC 4122",
"namespaceAlias": "dns",
"namespace": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
"algorithm": "SHA-1"
}URL namespace UUID
{
"namespace": "url",
"name": "https://example.com/path"
}{
"uuid": "0a3c3c32-4c00-5e0b-8943-2eb8d80ab693",
"version": 5,
"variant": "RFC 4122",
"namespaceAlias": "url",
"namespace": "6ba7b811-9dad-11d1-80b4-00c04fd430c8",
"algorithm": "SHA-1"
}Recommended use cases
- Create stable content-derived identifiers
- Generate idempotent resource IDs from natural keys
- Build reproducible references for agent workflows
- Derive tenant-scoped deterministic IDs from domain data
Avoid for
- Generating random unique IDs (use platform.entropy_token)
- Time-ordered identifiers
- Cryptographic key generation
Related skills
Composable with
Safety & privacy
- Runs without calling any external service.
- Your payloads are never stored permanently.
- Telemetry captures metadata only — never your payload contents.
- We never train models on your payloads.
- No human reviews your payloads.