Skip to content

Conversor YAML para JSON

Cole YAML e obtenha JSON instantaneamente. Conversão ao vivo no navegador. Suporte a manifestos K8s, OpenAPI e valores Helm. 100% privado, sem upload.

Sem rastreamento Roda no navegador Grátis
Opções · 2 espaços
Indentação
0 caracteres
JSON Saída
0 linhas
Revisado para conformidade com a especificação YAML 1.2, expansão de âncoras/aliases e correção no tratamento de múltiplos documentos — Go Tools Engineering Team · May 4, 2026

O que é JSON?

JSON (JavaScript Object Notation) é um formato leve de intercâmbio de dados baseado em texto, padronizado como RFC 8259 e ECMA-404. Suporta seis tipos de dados — strings, números, booleanos, null, arrays e objetos — com uma sintaxe estrita e mínima que virtualmente toda linguagem de programação, API e toolchain pode analisar nativamente. Enquanto YAML é o formato preferido para arquivos de configuração escritos por humanos (manifestos do Kubernetes, GitHub Actions, playbooks do Ansible, valores Helm), JSON é o formato universal legível por máquina para APIs, scripts de automação e processamento programático de dados.

Converter YAML para JSON é, portanto, uma das tarefas mais comuns em DevOps e desenvolvimento backend — você tem um arquivo de configuração YAML mas precisa de JSON para integrar a uma API REST, consultar com jq ou processar com ferramentas JavaScript.

Esta ferramenta tem quatro diferenciadores importantes em comparação com conversores online típicos:

**1. Suporte a YAML com Múltiplos Documentos.** O YAML suporta múltiplos documentos em um único stream separados por --- (o marcador de início de documento). Muitos arquivos YAML do mundo real — incluindo alguns manifestos do Kubernetes e playbooks do Ansible — contêm múltiplos documentos. Esta ferramenta usa parseAllDocuments da biblioteca eemeli/yaml com opções { version: '1.2', merge: true } e retorna o primeiro documento como JSON, comunicando claramente o que foi tomado. Se precisar de todos os documentos, divida em --- e converta cada um individualmente.

**2. Expansão de Âncoras e Aliases.** Âncoras YAML (&nome) e aliases (*nome) permitem a reutilização de blocos de dados — um recurso poderoso do YAML sem equivalente em JSON. Esta ferramenta expande completamente todas as âncoras e aliases (incluindo chaves de mesclagem: <<: *anchor) para que a saída JSON contenha dados completos e autossuficientes sem nenhuma referência. Esta é sempre a transformação correta porque o JSON não tem sintaxe de referência. A expansão é tratada com segurança pela biblioteca eemeli/yaml, que inclui proteção contra referências circulares. Saiba como isso se compara à direção inversa em Conversor JSON para YAML.

**3. Perda de Comentários — Transparência Educacional.** YAML suporta comentários #, que são frequentemente usados em manifestos do Kubernetes, valores Helm e playbooks do Ansible para documentar a intenção. JSON não tem sintaxe de comentário, então os comentários são permanentemente descartados durante a conversão. Isso não é um bug — é uma diferença fundamental de formato. Esta ferramenta deixa isso explícito para que você saiba o que esperar. Se precisar preservar anotações, codifique-as como campos JSON (chaves _comment ou um objeto de metadados dedicado) antes de converter, ou mantenha o YAML como fonte autoritativa. Veja nosso aprofundamento sobre diferenças entre YAML e JSON para mais sobre trocas de formato.

**4. 100% Privacidade Baseada no Navegador.** Seus dados YAML — que frequentemente contêm segredos do Kubernetes, credenciais de banco de dados, valores Helm com senhas e configurações internas de serviço — nunca saem do seu navegador. Nenhum dado é enviado a nenhum servidor. Você pode verificar isso na guia de Rede do seu navegador. Após converter para JSON, você pode validar e formatar o resultado com nosso Formatador JSON antes de usá-lo downstream.

A riqueza do YAML (comentários, âncoras, suporte a múltiplos documentos, escalares de bloco) o torna excelente para arquivos de configuração criados por humanos onde legibilidade e documentação importam. A rigidez e universalidade do JSON o tornam a melhor escolha quando uma máquina é o consumidor primário. Este conversor conecta os dois mundos: mantenha sua configuração em YAML para manutenibilidade humana, converta para JSON quando precisar de intercâmbio legível por máquina.

// Convert YAML to JSON in Node.js using the eemeli/yaml library
import { parseAllDocuments } from 'yaml';

const yamlString = `apiVersion: apps/v1
kind: Deployment`;

// parseAllDocuments handles multi-document YAML (--- separator)
// version: '1.2' ensures yes/no are strings, not booleans
// merge: true expands anchor/alias merge keys (<<: *anchor)
const docs = parseAllDocuments(yamlString, { version: '1.2', merge: true });

// Take the first document (skip additional --- blocks)
const json = JSON.stringify(docs[0].toJSON(), null, 2);

console.log(json);
// {
//   "apiVersion": "apps/v1",
//   "kind": "Deployment"
// }

Recursos Principais

Conversão ao Vivo

A saída JSON atualiza instantaneamente conforme você digita ou cola YAML — sem necessidade de botão Converter. Entradas grandes (>200KB) mudam automaticamente para o modo manual para manter o navegador responsivo.

Indentação de 2 ou 4 Espaços

Alterne entre indentação de 2 e 4 espaços para a saída JSON. 2 espaços é o padrão para a maioria das ferramentas e APIs; 4 espaços corresponde a alguns guias de estilo e padrões de editor.

Suporte a Múltiplos Documentos

Trata streams YAML com múltiplos documentos separados por ---. O primeiro documento é convertido para JSON e retornado. Útil para arquivos Kubernetes com múltiplos recursos e playbooks do Ansible.

Expansão de Âncoras e Aliases

Expande completamente âncoras (&nome) e aliases (*nome) YAML, incluindo chaves de mesclagem (<<: *anchor). A saída JSON contém dados completos e desreferenciados sem nenhuma referência — comportamento correto já que JSON não tem equivalente.

100% Privacidade Baseada no Navegador

Toda a conversão é executada localmente no seu navegador usando JavaScript. Seus dados YAML — incluindo segredos, credenciais e configurações de produção — nunca são enviados a nenhum servidor, nunca são registrados e nunca são armazenados.

Suporte para K8s, Compose, Helm e OpenAPI

Otimizado para casos de uso DevOps do mundo real: manifestos do Kubernetes, stacks Docker Compose, valores de charts Helm, workflows do GitHub Actions, especificações OpenAPI e playbooks do Ansible — com exemplos para cada um.

Exemplos

Manifesto Kubernetes

apiVersion: apps/v1
kind: Deployment
metadata:
  name: my-app
  namespace: production
  labels:
    app: my-app
    version: 1.0.0
spec:
  replicas: 3
  selector:
    matchLabels:
      app: my-app
  template:
    metadata:
      labels:
        app: my-app
    spec:
      containers:
        - name: my-app
          image: my-app:1.0.0
          ports:
            - containerPort: 8080
          resources:
            requests:
              memory: 64Mi
              cpu: 250m
            limits:
              memory: 128Mi
              cpu: 500m

Converta um manifesto de Deployment do Kubernetes de YAML para JSON — útil para consultar com jq, enviar para a API do Kubernetes ou integrar com Terraform e pipelines de CI/CD

Docker Compose

version: '3.9'
services:
  web:
    image: nginx:1.25-alpine
    ports:
      - '80:80'
      - '443:443'
    environment:
      NGINX_HOST: example.com
      NGINX_PORT: '80'
    depends_on:
      - db
    restart: unless-stopped
  db:
    image: postgres:16-alpine
    environment:
      POSTGRES_DB: mydb
      POSTGRES_USER: admin
      POSTGRES_PASSWORD: secret
    volumes:
      - pgdata:/var/lib/postgresql/data
volumes:
  pgdata: {}

Converta um YAML do Docker Compose para JSON para manipulação programática, integração com scripts de automação ou processamento com ferramentas JavaScript

Workflow do GitHub Actions

name: CI
on:
  push:
    branches:
      - main
  pull_request:
    branches:
      - main
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Set up Node.js
        uses: actions/setup-node@v4
        with:
          node-version: '20'
          cache: pnpm
      - name: Install dependencies
        run: pnpm install --frozen-lockfile
      - name: Run tests
        run: pnpm test

Analise um workflow do GitHub Actions em YAML para JSON, para consultar campos específicos, validar estrutura ou integrar com APIs que consomem JSON

Especificação OpenAPI

openapi: 3.0.3
info:
  title: User API
  version: 1.0.0
  description: Manage application users
paths:
  /users:
    get:
      summary: List users
      operationId: listUsers
      parameters:
        - name: limit
          in: query
          schema:
            type: integer
            default: 20
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/User'
  /users/{id}:
    get:
      summary: Get user
      operationId: getUser
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Success
components:
  schemas:
    User:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        email:
          type: string
          format: email

Converta uma especificação OpenAPI 3.0 de YAML para JSON para uso com geradores de código cliente, ferramentas de teste de API ou inspeção programática de schema

Helm values.yaml

replicaCount: 3
image:
  repository: my-app
  tag: 1.0.0
  pullPolicy: IfNotPresent
service:
  type: ClusterIP
  port: 80
ingress:
  enabled: true
  className: nginx
  hosts:
    - host: my-app.example.com
      paths:
        - path: /
          pathType: Prefix
resources:
  requests:
    memory: 64Mi
    cpu: 250m
  limits:
    memory: 128Mi
    cpu: 500m
autoscaling:
  enabled: false
  minReplicas: 1
  maxReplicas: 10
  targetCPUUtilizationPercentage: 80

Converta o values.yaml de um chart Helm para JSON para análise, geração de relatórios ou integração com ferramentas que esperam configuração em JSON

Playbook do Ansible

- name: Configure web servers
  hosts: webservers
  become: true
  vars:
    http_port: 80
    max_clients: 200
  tasks:
    - name: Ensure nginx is installed
      ansible.builtin.package:
        name: nginx
        state: present
    - name: Start nginx service
      ansible.builtin.service:
        name: nginx
        state: started
        enabled: true
    - name: Copy nginx config
      ansible.builtin.template:
        src: nginx.conf.j2
        dest: /etc/nginx/nginx.conf
        owner: root
        group: root
        mode: '0644'
      notify:
        - Restart nginx
  handlers:
    - name: Restart nginx
      ansible.builtin.service:
        name: nginx
        state: restarted

Analise um playbook YAML do Ansible para JSON, para inspecionar a estrutura de tarefas, auditar configurações ou integrar com pipelines de relatórios

Como Usar

  1. 1

    Cole seu YAML

    Insira ou cole seus dados YAML no campo de entrada acima. Você também pode clicar em «Carregar exemplo» para experimentar uma amostra como um Deployment do Kubernetes, um arquivo Docker Compose ou um values.yaml do Helm.

  2. 2

    Veja a saída JSON ao vivo

    O JSON aparece instantaneamente no painel de saída. Ajuste as Opções (indentação de 2 ou 4 espaços) para corresponder aos requisitos da sua ferramenta de destino.

  3. 3

    Copie ou Baixe

    Clique em Copiar para pegar o JSON para a área de transferência, ou em Baixar para salvá-lo como arquivo .json pronto para jq, chamadas de API ou qualquer outra ferramenta downstream.

Armadilhas Comuns do YAML

Indentação com Tab

A especificação YAML proíbe caracteres tab para indentação — apenas espaços são permitidos. Se seu YAML foi escrito ou copiado de um editor que usa tabs, o parser lançará um erro. Substitua toda a indentação com tabs por espaços (2 ou 4 espaços por nível).

✗ Incorreto
services:
	web:
		image: nginx:1.25-alpine
✓ Correto
services:
  web:
    image: nginx:1.25-alpine

Indentação Inconsistente

YAML usa indentação consistente para definir aninhamento. Misturar diferentes números de espaços dentro do mesmo bloco (por exemplo, 2 espaços em um nível e 3 em outro) causa erros de análise. Cada nível deve indentar pelo mesmo número de espaços em todo o documento.

✗ Incorreto
metadata:
  name: my-app
   namespace: production
✓ Correto
metadata:
  name: my-app
  namespace: production

Caracteres Especiais sem Aspas

Caracteres como :, #, &, *, {, }, [, ], |, >, ! e @ têm significado especial em YAML. Usá-los sem aspas em valores pode causar erros de análise ou comportamento inesperado. Coloque aspas em valores que contenham esses caracteres com aspas simples ou duplas.

✗ Incorreto
url: http://example.com:8080/api
tag: #latest
✓ Correto
url: 'http://example.com:8080/api'
tag: '#latest'

Ciclos de Âncoras

O YAML tecnicamente permite âncoras que referenciam a si mesmas (referências circulares), embora isso seja raro na prática. Uma âncora circular faz com que o parser entre em um loop de expansão infinito. A biblioteca eemeli/yaml detecta e lança um erro para âncoras circulares em vez de travar.

✗ Incorreto
# Circular anchor (rare but possible)
base: &base
  parent: *base
✓ Correto
# Use explicit fields instead of circular references
base:
  parent: null

Confusão com Múltiplos Documentos

Arquivos YAML com múltiplos separadores --- contêm múltiplos documentos. Esta ferramenta retorna apenas o primeiro documento como JSON. Se você esperava dados de um documento posterior (após o segundo ou terceiro ---), ele não aparecerá na saída. Divida seu YAML em --- e converta cada seção separadamente se precisar de todos os documentos.

✗ Incorreto
# Only the first document is converted
apiVersion: v1
kind: ConfigMap
---
apiVersion: v1
kind: Secret
✓ Correto
# Convert each document separately
apiVersion: v1
kind: ConfigMap

Perda de Comentários

YAML suporta comentários # mas JSON não. Todos os comentários YAML são permanentemente descartados durante a conversão — esta é uma diferença fundamental de formato, não uma limitação da ferramenta. Se precisar preservar anotações em JSON, codifique-as como um campo dedicado, como uma chave _comment ou um objeto de metadados.

✗ Incorreto
# This comment will be lost
replicas: 3 # scale this up for production
✓ Correto
replicas: 3
_comment: scale this up for production

Casos de Uso Comuns

Análise de Manifestos do Kubernetes
Converta manifestos YAML do Kubernetes para JSON para consultar com jq, enviar para a API REST do Kubernetes, processar em fontes de dados do Terraform ou integrar em pipelines de CI/CD que esperam JSON.
Docker Compose para Ferramentas JavaScript
Analise o YAML do Docker Compose para JSON para extrair definições de serviço, nomes de imagem, mapeamentos de porta e variáveis de ambiente para uso em scripts de automação, grafos de dependência ou ferramentas Node.js.
Integração com API do GitHub Actions
Converta o YAML de workflows do GitHub Actions para JSON para validar a estrutura programaticamente, extrair definições de jobs e steps ou integrar com APIs de CI/CD que aceitam especificações de workflow em JSON.
OpenAPI para Geração de Código Cliente
Muitos geradores de código (openapi-generator, swagger-codegen, oazapfts) aceitam especificações OpenAPI em qualquer formato. Converta sua especificação YAML para JSON quando uma ferramenta especificamente exigir entrada JSON ou quando precisar inspecioná-la com validadores JSON Schema.
Análise de Valores Helm
Converta o values.yaml de charts Helm para JSON para gerar relatórios, comparar valores entre ambientes, integrar com ferramentas de aplicação de políticas ou processar com automação que espera configuração JSON.
Migração de Config para Ferramentas Baseadas em JSON
Migre configurações de aplicação de YAML (comum em ferramentas de infraestrutura) para JSON para uso em ambientes JavaScript, APIs REST, AWS AppConfig, Azure App Configuration ou qualquer sistema que armazena configuração como JSON.

Detalhes Técnicos

Especificação YAML 1.2 via parseAllDocuments com merge:true
O YAML é analisado usando a biblioteca eemeli/yaml (v2.8+, segura contra CVEs) via parseAllDocuments com { version: '1.2', merge: true }. O esquema YAML 1.2 garante que strings simples como yes e no sejam tratadas como strings (não booleanos), correspondendo à especificação atual do YAML. A opção merge: true expande completamente as chaves de mesclagem de âncoras/aliases (<<: *anchor) para que a saída JSON contenha dados completos e desreferenciados. YAML com múltiplos documentos (separados por ---) retorna o primeiro documento.
Expansão de Âncoras e Aliases via Biblioteca
A biblioteca eemeli/yaml trata a expansão de âncoras (&nome) e aliases (*nome) com segurança, incluindo detecção de referências circulares. Todos os blocos de dados com alias — incluindo expansões de chave de mesclagem — são totalmente incorporados na saída JSON. Esta é a transformação correta porque o JSON não tem conceito de referência ou âncora. A expansão segura da biblioteca previne loops infinitos causados por YAML malformado.
Baseado no Navegador — Sem Upload, Sem Servidor
Todo o processamento acontece inteiramente no motor JavaScript do seu navegador. Nenhum dado é transmitido pela rede em nenhum momento. Entradas maiores que 200KB mudam automaticamente do modo ao vivo para o modo manual (exigindo um clique explícito em Converter) para manter o navegador responsivo e evitar o bloqueio da thread principal durante a serialização pesada.

Melhores Práticas

Use Sintaxe Compatível com YAML 1.2 para Conversão Limpa
Crie seu YAML usando convenções YAML 1.2 — coloque aspas explicitamente em valores de string yes, no, on, off, y e n (por exemplo, enabled: 'yes') para evitar ambiguidade. Esta ferramenta analisa com o esquema YAML 1.2 (então estes são strings), mas ferramentas mais antigas no seu pipeline podem usar YAML 1.1 (onde se tornam booleanos). Aspas explícitas no YAML fonte são a prática mais segura em todos os parsers.
Coloque Aspas em Números Grandes no YAML para Preservar Precisão
O JavaScript não pode representar inteiros maiores que 2^53 - 1 (9007199254740991) exatamente. Campos do Kubernetes como resourceVersion e uid são int64 no servidor e podem exceder esse limite. Na sua fonte YAML, coloque aspas nesses valores (resourceVersion: '9007199254740993') para que o parser os trate como strings, que são então preservadas exatamente na saída JSON como valores de string.
Valide a Saída JSON Antes de Usar em APIs
Após converter YAML para JSON, valide o resultado antes de enviá-lo a uma API, armazená-lo ou processá-lo programaticamente. Use nosso Formatador JSON para confirmar que a estrutura está correta. Isso é especialmente importante para chamadas de API do Kubernetes, especificações OpenAPI e qualquer payload validado por JSON Schema, onde um erro estrutural causa uma rejeição confusa na camada de API em vez de na etapa de conversão.
Separe YAML com Múltiplos Documentos Antes de Converter
Se o seu arquivo YAML contém múltiplos documentos separados por --- e você precisa de todos eles como JSON, divida o arquivo em --- primeiro e converta cada documento individualmente. Esta ferramenta toma apenas o primeiro documento. Uma abordagem simples: divida em '\n---\n' no seu editor ou com awk, depois cole cada seção separadamente.
Use jq para Processamento JSON Downstream
Depois de ter JSON do seu YAML, jq é a forma mais rápida de consultar e transformá-lo na linha de comando. Combine esta ferramenta com jq: converta seu YAML online, cole o JSON, depois use jq '.spec.replicas' ou jq '.services | keys' para extrair exatamente o que precisa. Para processamento em lote de muitos arquivos, use a CLI yq com o flag -o json diretamente.

Perguntas Frequentes

Como converter YAML para JSON online?
Cole seu YAML no campo de entrada acima. A ferramenta converte para JSON instantaneamente no navegador — sem necessidade de clicar em botão. Você pode ajustar a indentação da saída (2 ou 4 espaços) no painel de Opções. Assim que o JSON aparecer na área de saída, clique em Copiar para copiá-lo para a área de transferência ou em Baixar para salvar como arquivo .json. Tudo é executado localmente — seus dados nunca saem do dispositivo.
Como esta ferramenta trata YAML com múltiplos documentos (separador ---)?
O YAML suporta múltiplos documentos em um único stream, separados por --- (o marcador de início de documento). Quando você cola uma string YAML com múltiplos documentos, esta ferramenta usa parseAllDocuments da biblioteca eemeli/yaml e retorna o primeiro documento como JSON. Os documentos adicionais além do primeiro são silenciosamente ignorados. Se precisar processar todos os documentos, divida seu YAML em --- e converta cada seção individualmente. A ferramenta mostra o JSON do primeiro documento para que você possa verificar o resultado.
Como âncoras e aliases YAML (&anchor e *alias) são tratados?
Âncoras YAML (&nome) definem um bloco reutilizável, e aliases (*nome) o referenciam. Esta ferramenta expande completamente todas as âncoras e aliases durante a análise, então o JSON de saída contém os dados completos e desreferenciados. Por exemplo, se uma âncora YAML define um conjunto de limites de recursos e múltiplos serviços a referenciam com chaves de mesclagem (<<: *anchor), o JSON de saída mostra cada campo explicitamente incorporado para cada serviço. Este é o comportamento correto para JSON, que não tem conceito de referências. A biblioteca eemeli/yaml trata a expansão de âncoras/aliases com segurança, incluindo detecção de referências circulares.
Os comentários YAML são preservados na saída JSON?
Não. JSON não suporta comentários de nenhum tipo — nem #, // ou /* */. Quando você converte YAML para JSON, todos os comentários são permanentemente perdidos. Esta é uma diferença fundamental de formato, não uma limitação desta ferramenta. Se precisar preservar anotações, considere codificá-las como um campo JSON dedicado (como uma chave _comment) antes de converter, ou manter o YAML fonte como a versão autoritativa com comentários. Esta ferramenta reflete claramente os dados como JSON sem nenhuma aproximação de comentário, que é o comportamento correto e padrão.
Como usar esta ferramenta com um manifesto do Kubernetes?
Cole seu manifesto YAML do Kubernetes (de um arquivo .yaml, saída de kubectl get -o yaml ou um template Helm) no campo de entrada. A saída JSON pode então ser consultada com jq, enviada diretamente para a API REST do Kubernetes, usada em fontes de dados do Terraform ou processada por qualquer ferramenta que espera JSON. Um workflow comum é converter manifestos YAML para JSON para extrair campos específicos — por exemplo: jq '.spec.replicas' na saída JSON para verificar contagens de réplicas em deployments. O exemplo de K8s Deployment acima mostra um manifesto completo que você pode carregar e modificar.
Como esta ferramenta ajuda com arquivos Docker Compose?
Arquivos Docker Compose são YAML por convenção. Convertê-los para JSON permite processar definições de serviço com ferramentas JavaScript, scripts jq ou qualquer sistema que leia JSON. Casos de uso comuns incluem extrair todos os nomes de imagem para construir uma lista de dependências, gerar relatórios a partir de um arquivo compose ou integrar configurações Compose em ferramentas de orquestração de CI/CD que aceitam JSON. Cole seu compose.yaml na entrada e a saída JSON está imediatamente pronta para processamento downstream.
Qual é a diferença entre YAML 1.1 e YAML 1.2, e qual esta ferramenta usa?
YAML 1.1 (a especificação mais antiga, ainda usada pelo PyYAML, Ansible, Ruby Psych e muitas ferramentas Kubernetes) trata strings simples como yes, no, on, off, y e n como valores booleanos verdadeiro/falso. Isso causou o famoso problema Norway, onde o código de país ISO «NO» era analisado como falso. YAML 1.2 (a especificação atual, lançada em 2009) corrigiu isso: todas as strings simples são strings, e apenas true/false são booleanos. Esta ferramenta usa o esquema YAML 1.2 para análise, o que significa que yes e no na entrada YAML são preservados como os valores de string «yes» e «no» na saída JSON — não como booleanos verdadeiro e falso. Este é o comportamento correto e moderno. Se seu YAML foi originalmente criado para um parser YAML 1.1 e dependia de yes/no como booleanos, saiba que a saída JSON os tratará como strings.
Por que o YAML proíbe indentação com tab?
A especificação YAML proíbe explicitamente caracteres tab (\t) para indentação — apenas espaços são permitidos. Esta é uma decisão de design deliberada para evitar a ambiguidade causada pela largura inconsistente de tabs entre editores. Se seu YAML usa tabs para indentação (comum ao copiar de editores de texto que convertem automaticamente espaços em tabs), o parser YAML lançará um erro de análise. A correção é substituir toda a indentação com tabs por espaços. A maioria dos editores de código tem uma configuração para converter tabs em espaços (por exemplo, «Expandir Tabs» no Vim, «Inserir Espaços» no VS Code). Se você colar YAML e ver um erro de análise mencionando «tab» ou «indentation», esta é quase sempre a causa.
Números grandes podem perder precisão ao converter YAML para JSON?
Sim. Esta é uma limitação fundamental do JavaScript que afeta todas as ferramentas baseadas em navegador. O float de precisão dupla IEEE 754 do JavaScript só pode representar inteiros exatamente até 2^53 - 1 (9007199254740991). Números YAML maiores que isso — como campos int64 do Kubernetes, como resourceVersion — serão silenciosamente arredondados quando o parser YAML os entregar ao tipo de número do JavaScript. Por exemplo, o valor YAML 9007199254740993 torna-se 9007199254740992 na saída JSON. A solução segura é colocar aspas em números grandes na fonte YAML (resourceVersion: '9007199254740993') para que o parser os trate como strings, que são então preservadas exatamente no JSON como valores de string.
Como posso converter YAML para JSON na linha de comando?
A abordagem mais popular usa yq (versão de Mike Farah) e jq. Instale o yq: brew install yq no macOS ou faça download de github.com/mikefarah/yq/releases para Linux. Então execute: yq -o json input.yaml para converter um arquivo YAML para JSON, ou cat input.yaml | yq -o json - para redirecionar da entrada padrão. Para saída formatada: yq -o json input.yaml | jq . — isso redireciona o JSON pelo jq para formatação consistente. Para um one-liner em Python: python3 -c "import sys, json, yaml; print(json.dumps(yaml.safe_load(sys.stdin), indent=2))" < input.yaml. Para YAML com múltiplos documentos com yq: yq -o json '.[0]' input.yaml para extrair apenas o primeiro documento como JSON.
Meus dados YAML são enviados a algum servidor ao usar esta ferramenta?
Não. Toda a conversão acontece inteiramente no seu navegador usando JavaScript. Seus dados YAML nunca são transmitidos pela rede, nunca são armazenados em nenhum servidor e nunca são registrados ou analisados. Isso torna a ferramenta segura para uso com segredos do Kubernetes, credenciais de banco de dados, valores Helm internos, chaves de API em arquivos de configuração e qualquer outra configuração de infraestrutura sensível. Você pode verificar isso abrindo a guia de Rede do seu navegador — você verá zero requisições disparadas ao colar YAML.
Existe um limite de tamanho de arquivo para entrada YAML?
Não há limite rígido de tamanho de arquivo, mas entradas grandes (acima de 200KB) mudam automaticamente do modo ao vivo para o modo manual. No modo manual, um botão Converter aparece e a conversão só é executada quando você clica nele — isso evita que a thread principal do navegador bloqueie a cada tecla pressionada. Para arquivos YAML muito grandes (vários megabytes), considere usar ferramentas de linha de comando como yq para melhor desempenho. A ferramenta lida eficientemente com payloads reais típicos, como exportações completas de namespace do Kubernetes, grandes especificações OpenAPI e arquivos de valores de charts Helm com múltiplos serviços.

Ferramentas relacionadas

Ver todas as ferramentas →

Decodificador e Codificador Base64

Codificação e Formatação

Decodifique e codifique Base64 online gratuitamente. Conversão em tempo real com suporte completo a UTF-8 e emoji. 100% privado — executa no seu navegador. Sem necessidade de cadastro.

Formatador e Validador JSON

Codificação e Formatação

Formate, valide e embeleze JSON instantaneamente no seu navegador. Ferramenta online gratuita com validação de sintaxe, detecção de erros, minificação e cópia com um clique. 100% privado — seus dados nunca saem do seu dispositivo.

Conversor JSON para YAML

Codificação e Formatação

Cole JSON e obtenha YAML instantaneamente. Conversão ao vivo no navegador. K8s/Compose, indentação 2/4 espaços, Norway-safe. 100% privado, sem upload.

Codificador e Decodificador de URL com Analisador Integrado

Codificação e Formatação

Cole uma URL para decodificar ou codificar em tempo real. Analisador de URL integrado decompõe cada componente em campos editáveis. Modo duplo: encodeURI e encodeURIComponent. Privado — nenhum dado enviado a servidor.

Conversor de Base Numérica — Binário, Hex, Decimal e Octal

Ferramentas de Conversão

Converta números entre binário, hexadecimal, decimal, octal e qualquer base personalizada (2-36) instantaneamente. Gratuito, privado, sem cadastro — todo o processamento acontece no seu navegador.

Comprimir Imagens Online — JPEG, PNG e WebP

Ferramentas de Conversão

Reduza o tamanho de imagens em até 80% — comprima JPEG, PNG e WebP no navegador, sem upload. Lote de 20 imagens, ajuste de qualidade, compare antes e depois. Gratuito e privado.