Ir para o conteúdo
snowkitDev

Valide, consulte e simule o seu JSON

Confira um documento JSON com um JSON Schema e veja exatamente qual campo está errado e por quê, experimente expressões JSONPath com resultados ao vivo ou transforme um schema ou uma amostra em quantos registros de teste realistas precisar.

Validar com um esquema

Seu JSON e o JSON Schema com o qual ele deve combinar.

draft 2020-12 ou 07

    Conferido enquanto você digita

    Confira JSON com um esquema, extraia valores com JSONPath e crie dados de teste realistas, tudo no seu navegador. Nada é enviado, então é seguro para dados privados. É grátis e não precisa de conta.

    Como usar as ferramentas JSON

    1. Abra a aba Validar, JSONPath ou Dados fictícios. Carregar o exemplo mostra um conjunto que funciona.
    2. Validar: cole seus dados JSON e um JSON Schema, toque em Arrumar os dois para formatá-los e leia os problemas listados.
    3. JSONPath: cole seu JSON, digite uma expressão JSONPath e leia o resultado. Mostrar caminhos adiciona a localização de cada correspondência e Copiar resultado o leva embora.
    4. Dados fictícios: cole um esquema ou um registro de exemplo (ou Experimente um registro de exemplo), defina o número de Registros e uma Semente e escolha a Saída: array JSON, NDJSON (um por linha) ou CSV.
    5. Toque em Copiar ou Baixar.

    O que o validador verifica

    As palavras-chave principais do JSON Schema draft 2020-12 e draft 07: type, properties, required, additionalProperties, patternProperties, items e prefixItems, enum, const, limites de número e de tamanho, pattern, uniqueItems, contains, oneOf, anyOf, allOf, not, if/then/else e $ref para definições locais como #/$defs/address. Os formatos conferidos são email, uri, date, time, date-time, uuid, ipv4, ipv6 e hostname. Cada problema é listado com o seu caminho, como $.items[2].price, para você encontrá-lo rápido.

    JSONPath em resumo

    $ é a raiz, .name escolhe uma chave, ..name procura em qualquer profundidade, * corresponde a tudo, [0] e [-1] escolhem por posição e [0:3] pega uma fatia. Filtros como [?(@.price < 10)] mantêm itens que passam em um teste; você pode comparar com ==, !=, <, >, corresponder a uma expressão regular com =~ /text/i, conferir se uma chave existe com [?(@.isbn)] e combinar testes com && e ||.

    Dados fictícios realistas

    Cole um esquema para obter registros que passam nele, com números dentro do seu mínimo e máximo, strings que cabem no tamanho, padrão e formato e valores escolhidos de cada enum. Cole um registro de exemplo e o formato dele é copiado. Os nomes dos campos orientam os valores, então email, first_name, city, price, created_at e is_active recebem conteúdo convincente, e os e-mails combinam com os nomes do mesmo registro.

    Dicas

    • Use a mesma semente para obter os mesmos dados fictícios de novo, o que deixa os testes repetíveis.
    • Quando a validação falha, corrija o primeiro erro e confira de novo, já que um erro pode causar vários.
    • Comece com o JSONPath $..name para procurar em um arquivo grande uma chave que você conhece.
    • Use a saída NDJSON para ferramentas que leem um registro por linha.

    Quem usa

    Desenvolvedores que testam uma API, analistas que tiram campos de uma exportação e estudantes que aprendem JSON. Ferramentas relacionadas: JSON para tipos, conversor de formatos e comparador de diferenças.

    Perguntas

    Meu JSON é enviado?

    Não. Tudo roda no seu navegador.

    Quais versões de esquema são aceitas?

    Draft 2020-12 e draft 07, para as palavras-chave listadas acima.

    Os dados fictícios são reais?

    Não. Eles são inventados, então é seguro compartilhá-los e usá-los em testes.

    Para onde ir agora

    Continue com o que você acabou de criar, ainda no seu dispositivo.

    Mais do Snowkit