Formateur JSON en ligne

Formatez, validez et explorez votre JSON instantanément. Tout se passe dans votre navigateur.

Input
Output
Collez votre JSON ici...

Qu'est-ce que le JSON ?

JSON (JavaScript Object Notation) est un format de données textuelles léger, standardisé par la RFC 8259 et la norme ECMA-404, utilisé pour l'échange de données entre un serveur et une application web. Il est lisible par les humains et facile à parser par les machines. Sa simplicité en a fait le standard de facto pour les API REST, les fichiers de configuration et le stockage de données structurées.

Un document JSON est composé de deux structures : des objets (paires clé-valeur entre accolades) et des tableaux (listes ordonnées entre crochets). Les valeurs peuvent être des chaînes de caractères, des nombres, des booléens, null, des objets ou des tableaux imbriqués. La syntaxe est stricte : les clés doivent être entre guillemets doubles, et les virgules finales ne sont pas autorisées.

Formater (ou « beautifier ») du JSON consiste à ajouter des indentations et des retours à la ligne pour le rendre lisible. Minifier fait l'inverse : supprimer les espaces inutiles pour réduire la taille. Les deux opérations sont réversibles et ne modifient pas les données.

Comment formater du JSON avec cet outil

  1. Collez ou chargez votre JSON

    Copiez votre JSON depuis votre éditeur, votre terminal ou une réponse d'API, puis collez-le dans le champ de gauche. Vous pouvez aussi cliquer sur « Coller » pour récupérer directement le contenu du presse-papier, ou sur « Exemple » pour charger un JSON de démonstration et découvrir l'outil sans avoir vos propres données sous la main.

  2. Laissez la validation s'exécuter automatiquement

    Dès que vous tapez ou collez du texte, l'outil tente de le parser. Un indicateur vert confirme que le JSON est valide ; un indicateur rouge affiche le message d'erreur exact renvoyé par le moteur JavaScript, position du caractère fautif comprise, ce qui permet de localiser le problème sans relire tout le document à l'œil.

  3. Formatez ou minifiez selon votre besoin

    Le bouton « Formater » réindente le JSON avec deux espaces par niveau pour le rendre lisible en revue de code ou en documentation. Le bouton « Minifier » fait l'inverse : il retire tous les espaces et retours à la ligne superflus pour réduire la taille du fichier. Les deux opérations sont réversibles et ne modifient jamais les données elles-mêmes.

  4. Basculez entre le texte et l'arborescence

    La vue « Texte » affiche le JSON coloré syntaxiquement (clés, chaînes, nombres, booléens). La vue « Arborescence » le transforme en arbre dépliable et repliable, utile pour naviguer dans un document imbriqué sur plusieurs niveaux sans se perdre dans l'indentation.

  5. Copiez le résultat

    Une fois le JSON formaté ou minifié, le bouton « Copier » place le résultat dans le presse-papier. Le bouton « Effacer » vide les deux panneaux pour repartir de zéro. Aucune de ces actions ne transite par un serveur : tout reste dans l'onglet du navigateur.

Erreurs JSON courantes

La syntaxe JSON est volontairement stricte, ce qui la rend fiable à parser mais peu tolérante aux fautes de frappe. Voici les erreurs les plus fréquentes détectées par le validateur de cet outil.

Virgule finale (trailing comma)

{ "a": 1, "b": 2, }

Contrairement à JavaScript, JSON n'autorise aucune virgule après le dernier élément d'un objet ou d'un tableau. C'est l'erreur la plus fréquente lorsqu'on édite du JSON à la main.

Guillemets simples

{ 'a': 1 }

JSON exige des guillemets doubles pour les clés et les chaînes de caractères. Les guillemets simples ne sont jamais acceptés, même si votre langage de programmation les tolère.

Clés non quotées

{ a: 1 }

Contrairement à un objet littéral JavaScript, une clé JSON doit toujours être une chaîne entre guillemets doubles.

Commentaires

{ "a": 1 } // commentaire

La spécification JSON ne prévoit aucune syntaxe de commentaire, y compris dans les fichiers de configuration où c'est pourtant un besoin fréquent.

Nombres mal formés

{ "a": 01 }

Un nombre JSON ne peut pas commencer par un zéro suivi d'un autre chiffre, ni commencer ou finir par un point sans chiffre autour (.5 ou 1. sont invalides).

Valeurs non définies

{ "a": undefined }

JSON ne connaît que null comme valeur d'absence. undefined et NaN sont des concepts JavaScript qui n'ont pas d'équivalent dans la spécification JSON.

Questions fréquentes

Le JSON que je colle est-il envoyé sur un serveur ?

Non. Tout le traitement, parsing, formatage, minification et validation, s'exécute exclusivement dans votre navigateur via les fonctions JavaScript natives JSON.parse et JSON.stringify. Aucune donnée n'est transmise à un serveur, ce qui rend l'outil utilisable même avec des données sensibles.

Quelle est la différence entre formater et minifier ?

Formater ajoute des indentations et des retours à la ligne pour rendre le JSON lisible par un humain. Minifier retire tous les espaces superflus pour réduire la taille du fichier, ce qui est utile avant de transmettre les données sur le réseau. Les deux opérations sont réversibles : elles ne modifient jamais la structure ni les valeurs.

L'outil est-il gratuit et sans limite ?

Oui, l'outil est entièrement gratuit, sans compte à créer et sans limite d'utilisation. Comme tout le traitement se fait localement dans le navigateur, la taille maximale du JSON dépend uniquement de la mémoire disponible sur votre appareil, pas d'un quota côté serveur.

Le JSON accepte-t-il les commentaires ?

Non. La spécification JSON (RFC 8259) ne définit aucune syntaxe de commentaire. Si votre fichier de configuration a besoin de commentaires, des formats comme JSON5, JSONC ou YAML sont des alternatives, mais ils ne sont pas du JSON strict.

Quelle est la différence entre JSON et un objet JavaScript ?

Un objet littéral JavaScript autorise des clés non quotées, des guillemets simples, des commentaires, des fonctions et des valeurs comme undefined. JSON est un sous-ensemble beaucoup plus strict : clés systématiquement entre guillemets doubles, aucune fonction, aucun commentaire, et uniquement les types chaîne, nombre, booléen, null, objet et tableau.

Pourquoi mon JSON valide ailleurs est-il rejeté ici ?

Certains outils (éditeurs de code, sérialisation personnalisée, certaines API) produisent parfois du JSON5 ou un format proche mais non strict. Cet outil applique la norme JSON stricte : si un document contient une virgule finale, un commentaire ou une clé non quotée, il sera signalé comme invalide même si l'outil qui l'a généré l'accepte.