ForHosting KIT · Dados e planilhas

Achatar JSON aninhado em tabela com chaves de notação de ponto

Transforme dados aninhados em uma lista plana de linhas, cada uma com o caminho completo: a cidade dentro do endereço de um cliente vira customer.address.city e o número do primeiro pedido vira orders.0.id, com o valor 7. Seções vazias são mantidas. Grátis no seu navegador.

  • Grátis
  • Funciona no seu navegador
  • Sem cadastro
  • Seus dados não saem do seu aparelho
Use pelo WebAPIE-mailTelegramApp em breve

Cada propriedade aninhada recebe um caminho em notação de ponto, e as posições dos arrays viram segmentos numéricos; assim, um identificador de pedido pode ser acessado sempre como orders.0.id. O resultado é útil em planilhas, tabelas de preparação de bancos de dados, logs, ferramentas de mapeamento e qualquer fluxo que precise de caminhos previsíveis em vez de estruturas aninhadas.

Transforme estruturas aninhadas em caminhos previsíveis

Esta capacidade percorre cada propriedade de objeto e cada elemento de array, unindo todos os segmentos com um ponto. Um valor armazenado em um objeto customer e depois em uma propriedade name passa a ser customer.name. O primeiro elemento de um array orders é endereçado por orders.0, portanto seu identificador vira orders.0.id.

Cada folha é devolvida como uma linha com chave e valor, o que torna a saída fácil de exibir, filtrar ou transformar em colunas. Strings continuam strings, números continuam números, booleanos continuam booleanos e null permanece null. Objetos e arrays vazios são emitidos como valores, em vez de desaparecerem silenciosamente, para que a saída achatada ainda registre que esses caminhos existiam no documento de origem.

Prepare a entrada e interprete a saída

A raiz deve ser um objeto ou um array. Essa exigência evita uma chave vazia ambígua para strings, números, booleanos ou null isolados. Os nomes das propriedades do objeto são usados exatamente como fornecidos, enquanto os índices de array são escritos como segmentos numéricos iniciados em zero.

A resposta contém pairs, um array cujas entradas têm os campos key e value e que, por isso, pode ser tratado diretamente como linhas de tabela. Se a própria raiz for um objeto ou array vazio, a chave retornada será uma string vazia, e o valor preservará esse contêiner. Observe que pontos já presentes em um nome de propriedade original não são escapados.

Por exemplo, uma propriedade literal chamada user.name produz o mesmo caminho visível que um objeto user aninhado contendo name.

Use pares achatados em fluxos de dados

Os pares achatados funcionam bem como representação intermediária. Uma automação de planilha pode colocar chaves em uma coluna e valores em outra; uma rotina de ingestão pode pivotar caminhos selecionados em uma linha larga; e uma ferramenta de comparação pode indexar os pares por chave antes de verificar dois documentos. Segmentos numéricos de arrays também deixam registros repetidos explícitos, em vez de misturar valores de elementos diferentes.

Em documentos muito grandes, considere um pipeline de streaming ou específico do esquema, pois o achatamento cria uma linha para cada folha primitiva ou contêiner vazio do documento inteiro.

Compare registros estruturados

Achate dois objetos em sequências estáveis de caminho e valor para localizar diferenças por seus caminhos completos.

Quanto custa?

O executor do navegador pode processar a entrada localmente sem custo.

Como os arrays são representados?

As posições viram segmentos numéricos iniciados em zero, como orders.0.id e orders.1.id.

O que acontece com objetos e arrays vazios?

Eles são devolvidos como valores folha para que seus caminhos não sejam perdidos. Um contêiner raiz vazio usa uma chave vazia.

Os pontos nos nomes das propriedades originais são escapados?

Não. Os nomes são preservados exatamente; renomeie propriedades com pontos primeiro se os caminhos precisarem ser reversíveis sem ambiguidade.

Números e valores verdadeiro ou falso continuam iguais?

Sim. Texto continua texto, número continua número, verdadeiro e falso se mantêm e valores vazios continuam vazios. No exemplo, orders.0.id mantém o número 7 e customer.active mantém true, então não é preciso converter nada depois.

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.

POSThttps://api.kit.forhosting.com/data/flatten-nested-json

Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.

curl -X POST https://api.kit.forhosting.com/data/flatten-nested-json \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"json":"{\"customer\":{\"name\":\"Ada\",\"address\":{\"city\":\"London\"}},\"orders\":[{\"id\":7,\"paid\":true}]}"}'
{
  "json": "{\"customer\":{\"name\":\"Ada\",\"address\":{\"city\":\"London\"}},\"orders\":[{\"id\":7,\"paid\":true}]}"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "data.flatten_nested_json",
  "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.

por chamadaUS$ 0,002

Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.

max_mb25
HTTPCódigoO que significa
401unauthorizedToken ausente ou inválido. Confira o header Authorization.
402insufficient_balanceSaldo insuficiente para esta tarefa. Faça uma recarga e tente de novo.
404unknown_typeEsse tipo de tarefa não existe. Confira o campo type no catálogo.
429rate_limitedMuitas requisições em pouco tempo. Espere um instante e tente de novo.

Converta um objeto ou array JSON aninhado em uma sequência simples de linhas de chave e valor sem escrever um script de percurso específico. O processamento é determinístico, preserva os tipos de valor JSON e rejeita JSON malformado ou uma raiz escalar com um erro claro de entrada.

Transforme estruturas aninhadas em caminhos previsíveis

O JSON aninhado é ideal para API porque mantém valores relacionados juntos, mas muitas ferramentas de relatórios e importação esperam uma sequência plana de campos. O percurso segue a ordem presente no JSON analisado e fornece resultados estáveis para a mesma entrada.

Prepare a entrada e interprete a saída

Forneça o documento JSON completo como texto no campo json. Se os dados usarem propriedades com pontos e a identidade do caminho precisar ser reversível, renomeie essas propriedades antes de achatar ou mantenha o JSON original junto do resultado achatado.

Use pares achatados em fluxos de dados

Como a operação não faz solicitações de rede e não usa valores aleatórios, horários nem inferência de modelos, textos JSON idênticos sempre produzem saídas idênticas. JSON inválido falha sem devolver resultado parcial, e JSON escalar válido falha porque não atende ao contrato de objeto ou array. O preço da API é US$ 0,002 por item, enquanto o executor do navegador pode rodar localmente a mesma lógica determinística.

Prepare uma resposta de API para tabela

Transforme campos aninhados da resposta em caminhos explícitos que possam ser selecionados, mapeados ou exibidos como linhas de chave e valor.

Crie mapeamentos de importação

Examine caminhos em notação de ponto antes de mapear valores JSON selecionados para colunas de planilhas ou bancos de dados.

Os tipos de valor JSON são preservados?

Sim. Strings, números, booleanos, null e contêineres vazios mantêm seus tipos JSON no campo value.

Posso enviar uma string ou um número JSON como raiz?

Não. A raiz analisada deve ser um objeto ou array; raízes escalares retornam um erro de entrada inválida.

Ver a documentação completa do KIT →