Pular para o conteúdo
Mock and Match

Como converter YAML para JSON (e JSON para YAML)

Converta arquivos de configuração entre YAML e JSON, entenda o que muda (comentários, aliases, tipos) e evite os erros mais comuns de indentação.

Publicado em

Quando você precisa converter

O YAML é o formato favorito para arquivos de configuração: docker-compose, workflows do GitHub Actions, manifestos do Kubernetes e especificações OpenAPI. Já o JSON domina as APIs e o código. É comum precisar levar o conteúdo de um formato para o outro, seja para testar uma configuração em uma ferramenta que só lê JSON, seja para deixar um JSON mais legível como YAML.

Converter YAML para JSON

  1. Abra o Transform e escolha YAML → JSON.
  2. Cole o YAML no campo de entrada.
  3. Se quiser, ajuste a indentação do resultado e clique em Transformar.
Entrada (YAML)
# Configuração do serviço
servico: api
porta: 8080
ativo: true
tags:
  - web
  - interno
banco:
  host: localhost
  porta: 5432
Saída (JSON)
{
  "servico": "api",
  "porta": 8080,
  "ativo": true,
  "tags": [
    "web",
    "interno"
  ],
  "banco": {
    "host": "localhost",
    "porta": 5432
  }
}

Repare que o comentário da primeira linha não aparece no JSON, e que 8080 e true foram reconhecidos como número e booleano, sem aspas.

Converter JSON para YAML

O caminho inverso é a conversão JSON → YAML. Também dá para escolher quantos espaços de indentação usar (o padrão é 2).

Entrada (JSON)
{
  "servico": "api",
  "porta": 8080,
  "ativo": true,
  "tags": ["web", "interno"],
  "banco": { "host": "localhost", "porta": 5432 }
}
Saída (YAML)
servico: api
porta: 8080
ativo: true
tags:
  - web
  - interno
banco:
  host: localhost
  porta: 5432

O que muda na conversão

  • Comentários: existem só no YAML e se perdem ao ir para JSON.
  • Âncoras e aliases (& e *): são expandidos, então um trecho reaproveitado aparece repetido no JSON.
  • Tipos: o YAML reconhece números, booleanos, nulos e datas sem aspas. O JSON tem só texto, número, booleano, nulo, lista e objeto; uma data vira texto.
  • Ordem das chaves: é mantida como no original.

Erros comuns em YAML

  • Tabulação na indentação: o YAML só aceita espaços para indentar. Um Tab causa erro.
  • Indentação inconsistente: itens do mesmo nível precisam ter o mesmo recuo.
  • Dois-pontos dentro de textos: um valor como horario: 10:30 pode ser lido de forma inesperada. Coloque entre aspas quando houver :, # ou - no início.

Valores que parecem outra coisa

Palavras como no e on, números com zero à esquerda (08) e versões como 1.10 podem ser interpretados de formas diferentes por diferentes leitores de YAML. Se for essencial que sejam texto, coloque-os entre aspas.

Perguntas frequentes

Todo JSON é um YAML válido?

Na prática, sim: YAML 1.2 foi desenhado para aceitar JSON como um subconjunto. Por isso a conversão de JSON para YAML nunca falha por causa do formato, apenas muda a aparência.

Os comentários são preservados na conversão?

Não. O JSON não tem comentários, então as linhas começadas com # somem ao converter YAML para JSON. Guarde o YAML original se os comentários forem importantes.

Como converto YAML para TOML?

O Transform tem a conversão YAML → TOML. Lembre que o TOML exige um objeto na raiz, então um YAML que começa com uma lista não pode ser convertido diretamente.

Existe um limite de tamanho?

O campo de entrada aceita até 10 milhões de caracteres. Além disso, a expansão de aliases do YAML é limitada por segurança, para que um arquivo malicioso não consuma toda a memória do navegador.

Experimente agora

Gratuito, sem cadastro, e tudo acontece no seu navegador.

Abrir o Transform

Outros guias