ForHosting KIT · Dados e planilhas

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

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.

● BetaGrátis · no seu navegador
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. 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. 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. O percurso segue a ordem presente no JSON analisado e fornece resultados estáveis para a mesma entrada. 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

Forneça o documento JSON completo como texto no campo json. 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. 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

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. 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. 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.

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.

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?

Cada item da API custa US$ 0,002. 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.

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.

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.

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.

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.

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.

Ver a documentação completa do KIT →