Validador UUID
O validador de formato UUID verifica se um valor segue a representação UUID padrão de 36 caracteres com hífens e explica claramente por que uma entrada inválida foi recusada.
Executar grátis
Em caso de sucesso, ele retorna a forma canônica normalizada em minúsculas, a variante codificada nos bits da sequência de relógio e a versão gravada no UUID. Letras hexadecimais maiúsculas e minúsculas são aceitas, mas chaves, textos compactos, separadores fora do lugar e caracteres não hexadecimais não passam silenciosamente.
O que este validador de UUID verifica
Um UUID contém 128 bits, mas pessoas e sistemas normalmente o trocam como 36 caracteres visíveis organizados em cinco grupos: oito caracteres hexadecimais, seguidos por quatro, quatro, quatro e doze, com hífens entre eles. Este validador confere exatamente essa representação. Ele verifica o comprimento total, confirma que cada separador está na posição correta e recusa qualquer caractere que não seja um dígito hexadecimal ou hífen. As letras hexadecimais podem estar em maiúsculas ou minúsculas, pois a caixa não altera os bits subjacentes. Espaços, chaves, prefixo URN, valores compactos de 32 caracteres e pontuação no final não são removidos de forma silenciosa. Esse limite rigoroso é útil quando você testa o contrato de uma API ou de um campo de banco de dados: a entrada corresponde ao formato UUID documentado ou recebe uma justificativa que indica o problema estrutural. Uma resposta bem-sucedida inclui valid como verdadeiro e fornece um valor canônico em minúsculas para comparações estáveis, chaves de cache, fixtures e logs. A validação é determinística e não consulta cadastros, gera outro identificador nem afirma que o UUID exista em algum sistema externo.
Como a variante e a versão são decodificadas
Os metadados do UUID ficam codificados no próprio identificador, sem necessidade de consulta. A versão é o dígito hexadecimal no início do terceiro grupo; o validador converte esse dígito em um inteiro de 0 a 15 e o informa diretamente. Entre as versões atribuídas mais comuns estão a versão 1 baseada em tempo, as versões 3 e 5 baseadas em nome, a versão 4 aleatória, a versão 6 com tempo reordenado, a versão 7 com tempo Unix e a versão 8 personalizada. A variante vem dos bits iniciais do quarto grupo. Um bit inicial zero é indicado como ncs; o padrão 10 aparece como rfc_4122, família usada nos formatos UUID modernos; 110 aparece como microsoft; e 111 como future. Informar os bits é diferente de impor um perfil de aplicação. Um UUID estruturalmente correto pode carregar uma versão reservada ou uma variante antiga. Por isso, a ferramenta descreve o que está codificado, sem presumir que todo valor bem-formado precise ser da versão 4. Depois, sua aplicação pode aplicar a própria política aos campos retornados.
Canonização, erros e uso prático
A canonização altera somente a caixa das letras hexadecimais: os cinco grupos e todos os dígitos permanecem intactos, enquanto as letras de A a F passam para minúsculas. Assim, duas grafias aceitas do mesmo valor de 128 bits produzem exatamente o mesmo texto canônico. O validador não remove espaços nem corrige um valor quase certo, porque a limpeza automática pode esconder uma falha na fronteira de serialização. Em vez disso, um valor vazio, um valor que não seja texto, uma contagem incorreta de caracteres, hífens deslocados e caracteres ilegais geram mensagens explicativas diferentes. Isso torna a capacidade adequada para bloqueios de importação, diagnóstico de formulários, fixtures de teste e ferramentas de suporte em que a causa é tão importante quanto a resposta positiva ou negativa. Envie um candidato no campo text; os aliases uuid e value também são aceitos para facilitar a integração. A operação custa US$ 0,002 por item via API e funciona sem rede, aleatoriedade, relógio, modelo ou armazenamento persistente. Ela verifica apenas a sintaxe e os metadados incorporados; não determina exclusividade, propriedade, presença em banco de dados, qualidade da geração ou adequação a um protocolo específico.
Casos de uso
Proteja uma entrada da API
Recuse parâmetros de rota inválidos antes da consulta ao banco e mantenha um identificador canônico para comparações posteriores.
Depure identificadores importados
Encontre comprimentos, separadores ou caracteres incorretos em arquivos CSV e migrações com uma justificativa útil para o desenvolvimento.
Inspecione metadados UUID
Confirme a variante e a versão codificadas ao auditar se os produtores seguem a política de identificadores da aplicação.
Perguntas frequentes
Quais formatos de texto UUID são aceitos?
É aceita a forma padrão de 36 caracteres, com grupos 8-4-4-4-12 e hífens, usando letras hexadecimais maiúsculas ou minúsculas.
Chaves, prefixos URN ou UUIDs compactos são aceitos?
Não. Essas representações são recusadas para que a integração possa impor um contrato textual único e sem ambiguidades.
O que significa forma canônica neste caso?
É o mesmo UUID no agrupamento padrão com hífens e com todas as letras hexadecimais convertidas para minúsculas.
Um resultado válido prova que o UUID existe ou é exclusivo?
Não. O resultado prova apenas que o texto está estruturalmente bem-formado e informa os metadados codificados nos bits.
Quanto custa a validação?
Cada item da API custa US$ 0,002. O validador determinístico não faz solicitações de rede e também pode ser executado no navegador.
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/dev/uuid-validate \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"550E8400-E29B-41D4-A716-446655440000"}'const res = await fetch("https://api.kit.forhosting.com/dev/uuid-validate", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "550E8400-E29B-41D4-A716-446655440000"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/dev/uuid-validate",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "550E8400-E29B-41D4-A716-446655440000"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/dev/uuid-validate", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"550E8400-E29B-41D4-A716-446655440000"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"550E8400-E29B-41D4-A716-446655440000"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/dev/uuid-validate", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"text": "550E8400-E29B-41D4-A716-446655440000"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "dev.uuid_validate",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |