Converter JSON para Excel
Transforme uma exportação JSON ou NDJSON em planilha. Objetos aninhados viram colunas com ponto no nome, e cada registro contribui com as suas chaves.
Solte seus arquivos aqui
.json, .ndjson, .txt · até 300 MB
Mais configuraçõesMenos configurações
Como Converter para Excel
- 1
Solte um arquivo JSON ou cole o texto
Aceita JSON comum e NDJSON, com um registro por linha, e uma resposta colada funciona tão bem quanto um arquivo.
- 2
Indique o array e escolha como achatar o aninhamento
Se os registros estiverem em data.items, informe esse caminho. Escolha se os objetos aninhados viram colunas e como os arrays são representados.
- 3
Converta e baixe o XLSX
A pasta de trabalho abre direto em uma tabela, com a linha de cabeçalho congelada e a largura das colunas já ajustada ao conteúdo.
Respostas de API não são tabelas
Quase nenhum payload real é um array puro. Ele vem embrulhado em um envelope de status, os registros ficam em data.items ou result.rows, e cada registro tem objetos aninhados dentro. Por isso, o caminho até os registros é a primeira coisa que esta ferramenta pergunta, em vez de tentar adivinhar. Um palpite errado gera uma planilha de uma linha só descrevendo o envelope, o que parece sucesso e não é. Se o caminho não levar a nada, o erro lista as chaves que existem de fato no primeiro nível, para que a próxima tentativa seja informada, e não mais um palpite.
As colunas vêm de todos os registros, não só do primeiro
O bug mais comum em código caseiro que transforma JSON em tabela é tirar a lista de colunas do primeiro registro. Em uma exportação real, os registros são irregulares: um campo opcional de e-mail aparece no segundo item, um desconto só nos que tiveram desconto. Aqui, cada registro é examinado, e a lista de colunas é a união de todas as chaves, na ordem em que aparecem pela primeira vez, para que nada desapareça em silêncio. As linhas sem uma coluna recebem uma célula vazia, em vez de um valor deslocado. Se você quer de propósito só a estrutura do primeiro registro, há uma configuração para isso. Mas ela não é o padrão, porque perder dados em silêncio é pior do que uma planilha larga.
Aninhamento, arrays e os limites de uma célula
Um objeto aninhado vira colunas com nomes como user.address.city até a profundidade que você permitir. Ramos mais profundos são gravados como JSON compacto, em vez de expandidos, porque uma resposta GraphQL totalmente expandida pode gerar vinte mil colunas, e o Excel para em 16.384. Os arrays têm três tratamentos: unidos em uma célula com o separador que você escolher, distribuídos de tags.0 a tags.N ou gravados como string JSON. Qual deles é o certo depende só do que você pretende fazer depois. Textos com mais de 32.767 caracteres são truncados, com um aviso, porque esse é um limite rígido da própria célula.
Nada sai do seu navegador
A análise, o achatamento e a gravação da pasta de trabalho rodam localmente nesta aba. Um dump de API muitas vezes contém dados de clientes ou tokens de acesso, então vale deixar claro: não há upload, nem processamento no servidor, nem cópia guardada.
Perguntas frequentes
Como lidar com objetos aninhados?
Por padrão, eles viram colunas com ponto no nome, como user.address.city, até a profundidade que você definir. Além dessa profundidade, o ramo restante é gravado como uma string JSON compacta, para que nada se perca. Você também pode forçar que todos os objetos sejam gravados assim.
Como indicar o array de registros?
Digite o caminho dele com pontos, por exemplo data.items ou result.rows.0. Se o caminho não levar a nada, a mensagem de erro lista as chaves de primeiro nível do arquivo, para você ver onde os registros estão de verdade.
O que acontece com os arrays dentro de um registro?
Você escolhe. A opção de unir coloca os itens em uma célula, separados pelo texto que você definir; a de colunas distribui os itens de tags.0 a tags.N, até cinquenta; e a de JSON guarda o array como texto. Unir é o padrão, porque é o que se lê melhor em uma planilha.
Por que meus registros têm campos diferentes?
Isso é normal em exportações de API, e a ferramenta lida com isso: a lista de colunas é a união das chaves de todos os registros, na ordem em que aparecem pela primeira vez. Registros sem um campo recebem uma célula vazia, em vez de uma linha deslocada.
Quais são os limites de linhas e colunas do Excel?
1.048.576 linhas e 16.384 colunas. Se algum dos dois for ultrapassado, a conversão é recusada com uma explicação e um caminho para um conversor de CSV, que não tem esse teto.
Aceita NDJSON?
Sim. Um arquivo com a extensão .ndjson é lido como um registro por linha. Isso também significa que um erro de sintaxe aponta a linha exata, e não uma posição dentro de um texto de cem megabytes.
Meu arquivo é enviado?
Não. Tudo, da análise à gravação do XLSX, acontece no seu navegador, sem servidor envolvido e sem nada guardado depois que a aba é fechada.