Extracteur de Chemins JSON

Interroge un JSON avec des expressions de type JSONPath ou JMESPath, inspecte les chemins correspondants et surligne les valeurs extraites dans le document source

Exemples de résultats

2 Exemples

Extraire les noms administrateur avec des filtres JSONPath

Recupere les objets et champs correspondants dune reponse API puis les affiche dans une vue JSON surlignee

Expressions: 2, Matches: 2, highlighted JSON with $.users[0] and $.users[0].name
Voir paramètres d'entrée
{ "jsonInput": "{\n \"users\": [\n { \"name\": \"Ada\", \"role\": \"admin\", \"score\": 9 },\n { \"name\": \"Linus\", \"role\": \"editor\", \"score\": 6 }\n ]\n}", "queryExpressions": "$.users[?(@.role == \"admin\")]\n$.users[*].name", "queryEngine": "jsonpath", "displayMode": "highlighted-json", "flattenArrays": true, "includeNullValues": false, "maxMatches": 20 }

Parcourir des tableaux imbriques avec une syntaxe type JMESPath

Utilise les jokers et filtres de comparaison pour extraire des articles a forte valeur dans des commandes imbriquees

Matches: $.orders[0].items[1].sku, $.orders[1].items[0].sku
Voir paramètres d'entrée
{ "jsonInput": "{\n \"orders\": [\n { \"id\": 1, \"items\": [{ \"sku\": \"A1\", \"price\": 9 }, { \"sku\": \"B2\", \"price\": 19 }] },\n { \"id\": 2, \"items\": [{ \"sku\": \"C3\", \"price\": 24 }] }\n ]\n}", "queryExpressions": "orders[*].items[?price >= 19][*].sku", "queryEngine": "jmespath", "displayMode": "match-list", "flattenArrays": true, "includeNullValues": false, "maxMatches": 10 }

Use one expression per line. Supports field access, array indexes, wildcards, and simple filters.

Points clés

Catégorie
Données et tableaux
Types d’entrée
textarea, select, checkbox, number
Type de sortie
html
Couverture des échantillons
4
API disponible
Yes

Vue d’ensemble

L'Extracteur de Chemins JSON est un outil puissant conçu pour interroger et analyser des structures de données complexes. En utilisant des expressions JSONPath ou JMESPath, il vous permet de cibler précisément des nœuds spécifiques, de filtrer des résultats et de visualiser instantanément les valeurs extraites grâce à un surlignage syntaxique directement dans le document source.

Quand l’utiliser

  • Lors du débogage de réponses d'API complexes pour vérifier la présence et la structure de champs spécifiques.
  • Pour extraire rapidement des listes de valeurs (comme des identifiants ou des adresses e-mail) à partir de fichiers de configuration ou de journaux JSON volumineux.
  • Quand vous devez tester et valider des expressions JSONPath ou JMESPath avant de les intégrer dans votre code source.

Comment ça marche

  • Collez votre structure de données dans le champ d'entrée JSON.
  • Saisissez une ou plusieurs expressions de requête (une par ligne) et sélectionnez le moteur souhaité (JSONPath ou JMESPath).
  • Ajustez les options d'affichage, comme l'aplatissement des tableaux ou l'inclusion des valeurs nulles.
  • Visualisez les résultats sous forme de JSON surligné ou de liste de correspondances selon le mode d'affichage choisi.

Cas d’usage

Extraction d'informations d'utilisateurs (noms, rôles) depuis un export de base de données NoSQL.
Filtrage de commandes e-commerce pour isoler les articles dont le prix dépasse un certain seuil.
Validation de la hiérarchie et des clés d'un fichier de traduction i18n volumineux.

Exemples

1. Extraire les administrateurs d'une liste d'utilisateurs

Développeur Backend
Contexte
Une API renvoie une liste d'utilisateurs avec différents rôles et scores. Le développeur doit vérifier que les droits d'administration sont correctement attribués.
Problème
Trouver rapidement tous les utilisateurs ayant le rôle 'admin' dans un JSON volumineux sans lire chaque ligne.
Comment l’utiliser
Collez la réponse de l'API, sélectionnez le moteur 'JSONPath' et utilisez un filtre conditionnel pour cibler le rôle.
Configuration d’exemple
$.users[?(@.role == "admin")]
Résultat
Le document JSON est affiché avec les objets correspondant aux administrateurs visuellement surlignés.

2. Filtrer des articles de commande par prix

Analyste de Données
Contexte
Un export de ventes contient des commandes avec des tableaux imbriqués d'articles achetés.
Problème
Extraire uniquement les codes SKU des articles dont le prix est supérieur ou égal à 19, à travers toutes les commandes.
Comment l’utiliser
Saisissez le JSON des commandes, choisissez le moteur 'JMESPath', activez le mode 'Match List' et l'aplatissement des tableaux.
Configuration d’exemple
orders[*].items[?price >= 19][*].sku
Résultat
Une liste claire et aplatie des SKU correspondants est générée, ignorant la structure complexe d'origine.

Tester avec des échantillons

json

Hubs associés

FAQ

Quelle est la différence entre JSONPath et JMESPath ?

JSONPath est idéal pour la navigation structurelle classique avec des symboles comme $, tandis que JMESPath offre des capacités avancées de projection et de filtrage souvent utilisées dans les environnements cloud.

Puis-je tester plusieurs requêtes en même temps ?

Oui, vous pouvez saisir plusieurs expressions de requête en plaçant une expression par ligne dans le champ dédié.

Que fait l'option 'Aplatir les tableaux' ?

Elle permet de transformer les résultats imbriqués en une liste simple à un seul niveau, facilitant ainsi la lecture des correspondances multiples.

Y a-t-il une limite au nombre de résultats affichés ?

Oui, pour garantir de bonnes performances, vous pouvez configurer le nombre maximal de correspondances (jusqu'à 200) via l'option correspondante.

Les valeurs nulles sont-elles extraites par défaut ?

Non, mais vous pouvez cocher l'option 'Inclure les valeurs nulles' si votre analyse nécessite de conserver ces champs vides.

Documentation de l'API

Point de terminaison de la requête

POST /fr/api/tools/json-path-extractor

Paramètres de la requête

Nom du paramètre Type Requis Description
jsonInput textarea Oui -
queryExpressions textarea Non Use one expression per line. Supports field access, array indexes, wildcards, and simple filters.
queryEngine select Non -
displayMode select Non -
flattenArrays checkbox Non -
includeNullValues checkbox Non -
maxMatches number Non -

Format de réponse

{
  "result": "
Processed HTML content
", "error": "Error message (optional)", "message": "Notification message (optional)", "metadata": { "key": "value" } }
HTML: HTML

Documentation de MCP

Ajoutez cet outil à votre configuration de serveur MCP:

{
  "mcpServers": {
    "elysiatools-json-path-extractor": {
      "name": "json-path-extractor",
      "description": "Interroge un JSON avec des expressions de type JSONPath ou JMESPath, inspecte les chemins correspondants et surligne les valeurs extraites dans le document source",
      "baseUrl": "https://elysiatools.com/mcp/sse?toolId=json-path-extractor",
      "command": "",
      "args": [],
      "env": {},
      "isActive": true,
      "type": "sse"
    }
  }
}

Vous pouvez chaîner plusieurs outils, par ex.: `https://elysiatools.com/mcp/sse?toolId=png-to-webp,jpg-to-webp,gif-to-webp`, max 20 outils.

Si vous rencontrez des problèmes, veuillez nous contacter à [email protected]