FI Finnish
SE Swedish
FR French
PL Polish
DE German
US English (US)

Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

Please fill out the contact form below and we will reply as soon as possible.

French
FI Finnish
SE Swedish
FR French
PL Polish
DE German
US English (US)
  • Log in
  • Home
  • Gouvernance et administration des identités ( IGA )
  • Bibliothèque de solutions IGA
  • Instructions et lignes uid
  • Configurer les connecteurs

Mappages JSONPath pour le connecteur REST API générique

Découvrez comment utiliser efficacement les mappages JsonPath pour rationaliser l'extraction de données dans un connecteur REST API générique et ainsi améliorer l'intégration.

Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

Please fill out the contact form below and we will reply as soon as possible.

  • Gestion des services
    Solution Matrix42 Professional Solution Matrix42 Core Gestion des services d'entreprise Matrix42 Intelligence
  • Gouvernance et administration des identités ( IGA )
    Aperçu IGA Bibliothèque de solutions IGA
  • Plate-forme
    ESM ESS2 ESS Effet Chat pour la gestion des services Efecte Integrations Modules complémentaires
  • Notes de version pour M42 Core & Pro , IGA , IA conversationnelle
    2025.3 2026.1 2025.2 2025.1 2024.2 2024.1 2023.4 2023.3 2023.2 2023.1 2022.4 2022.3 Informations et politiques de publication
  • Autre matériel
    Conditions uid et directives de documentation Déclarations d'accessibilité
  • Services
+ More
    • Gestion des services

    • Gouvernance et administration des identités ( IGA )

    • Plate-forme

    • Notes de version pour M42 Core & Pro , IGA , IA conversationnelle

    • Autre matériel

    • Services

Mappages JSONPath pour le connecteur REST API générique

Découvrez comment utiliser efficacement les mappages JsonPath pour rationaliser l'extraction de données dans un connecteur REST API générique et ainsi améliorer l'intégration.

Le connecteur REST API générique permet de configurer les mappages d'attributs à l'aide du langage JSONPath.

Le tableau suivant présente les syntaxes JSONPath prises en charge et celles qui ne le sont pas. Compte tenu du grand nombre d'expressions JSONPath possibles, ce tableau n'est pas exhaustif. Il est donc probable que certaines syntaxes non prises en charge fonctionnent également.

Le principal problème est que JSONPath ne prend pas en charge les tableaux d'objets JSON renvoyés par ce biais.

Les correspondances JSONPath ont été testées avec cet exemple de JSON :

{
  "id": "u-123",
  "user": {
    "name": "Ada Lovelace",
    "email": "ada@example.com",
    "first-name": "Ada",
    "meta": {
      "active": true,
      "score": 42,
      "nullField": null
    }
  },
  "store": {
    "book": "abc",
    "bike": "xyz",
    "nested": {
      "price": 9.99,
      "currency": "EUR"
    }
  },
  "groups": ["Admin", "HR"],
  "groupObjects": [
    { "name": "Admin", "id": 1, "enabled": true },
    { "name": "HR", "id": 2, "enabled": false }
  ],
  "child": {
    "id": "child-1",
    "child": {
      "id": "child-2"
    }
  },
  "storeList": [
    { "id": "s1", "name": "Shop 1", "price": 10 },
    { "id": "s2", "name": "Shop 2", "price": 20 }
  ],
  "emptyArray": [],
  "emptyObject": {},
  "weirdKeys": {
    "ab": "dot-key",
    "space key": "space-key",
    "brackets[key]": "bracket-key"
  }
}

Syntaxe JSONPath prise en charge et non prise en charge

Chemin JSON standard Syntaxe utilisée dans le tableau de correspondance des connecteurs Exemple de résultat Notes Statut
$.id id "u-123" propriété scalaire simple Soutenu
$.user.name user.name "Ada Lovelace" Propriété imbriquée Soutenu
$.user.email user.email "ada@example.com" Propriété imbriquée Soutenu
$.user['first-name'] user['first-name'] "Ada" La notation par crochets fonctionne Soutenu
$.user.meta.active user.meta.active true valeur booléenne Soutenu
$.user.meta.score user.meta.score 42 Propriétés imbriquées multiples. Valeur numérique (correspondant à une chaîne de caractères ou à un nombre). Soutenu
$.store.nested.price store.nested.price 9.99 Propriétés imbriquées multiples. Valeur décimale (correspondant à une chaîne de caractères ou à un nombre décimal). Soutenu
$.groups groups ["Admin","HR"] Tableau de chaînes de caractères (correspond à un attribut de chaîne à valeurs multiples) Soutenu
$.groupObjects[*].name groupObjects[*].name ["Admin","HR"] Pro vers un tableau de chaînes (association à un attribut de chaîne multivalué) Soutenu
$.storeList[?(@.id=='s1')].price storeList[?(@.id=='s1')].price [10] Filtre de chaîne sans espaces Soutenu
$.storeList[?(@.price<30)].id storeList[?(@.price<30)].id ["s1","s2"]

Filtre numérique

(associer à un attribut de chaîne multivaluée)

D'autres opérateurs de comparaison sont également pris en charge, tels que : == <= >= > < !=

Soutenu
$.groupObjects[?(@.enabled==false)].name groupObjects[?(@.enabled==false)].name ["HR"] Filtre booléen
(associer à un attribut de chaîne multivaluée)
Soutenu
$.groupObjects groupObjects [{"name":"Admin",...},{"name":"HR",...}] Renvoie un tableau d'objets JSON Non pris en charge
$.groupObjects[*] groupObjects[*] [{"name":"Admin",...},{"name":"HR",...}] Pro projection renvoie un tableau d'objets JSON Non pris en charge
$.storeList[?(@.price<30)] storeList[?(@.price<30)] [{"id":"s1",...},{"id":"s2",...}] Le filtre renvoie un tableau d'objets JSON Non pris en charge
$.storeList[?(@.name=='Shop 1')].price storeList[?(@.name=='Shop 1')].price [10] Échec du filtrage de chaînes littérales contenant un espace Non pris en charge
$..id ..id [ "u-123", "child-1", "child-2", ... ] Descente récursive Non pris en charge
$.store.* store.* ["abc","xyz",{...}] générique d'objet Non pris en charge

Mappages de sous-requêtes

La première partie du mappage des sous-requêtes est la sous-requête elle-même, suivie du point, puis du JSONPath proprement dit, de la même manière que dans le tableau des syntaxes JSONPath prises en charge.

Exemple de récupération des appartenances aux groupes des utilisateurs depuis Google

Sous-requête : groupes?userKey={id}

Dans la sous-requête, {id} est une variable dynamique qui, dans ce cas, pointe vers l'attribut id du jeu de résultats de la requête principale. JSONPath n'est pas pris en charge dans les sous-requêtes.

Mappage pour cette sous-requête, afin de récupérer les identifiants des groupes auxquels appartient un utilisateur :
groupes?userKey={id}.groups[*].id où le JSONPath réel est cette partie à la fin : groupes[*].id

Exemple de JSON de API Google Groups. Grâce à une sous-requête et à un mappage, nous pouvons extraire les identifiants des groupes à partir de cet ensemble de résultats.
{
"kind": "directory#groups",
"etag": "\"p7cdf8ab12e9\"",
"groups": [
{
"kind": "directory#group",
" id ": " 01abcde123456789 ",
"etag": "\"abc123etag\"",
"email": "engineering@efectebaselinedev.onmicrosoft.com",
"name": "Engineering Team",
"description": "Main engineering group",
"directMembersCount": "15",
"adminCreated": true,
"aliases": [
"eng@efectebaselinedev.onmicrosoft.com"
],
"nonEditableAliases": [
"engineering@group.calendar.google.com"
]
},
{
"kind": "directory#group",
" id ": " 02xyz987654321 ",
"etag": "\"xyz456etag\"",
"email": "support@efectebaselinedev.onmicrosoft.com",
"name": "Support",
"description": "Customer support group",
"directMembersCount": "8",
"adminCreated": true
}
],
"nextPageToken": "CgYIARAA"
}

Was this article helpful?

Yes
No
Give feedback about this article

Table of Contents

Related Articles

  • Configurer : EPE pour la lecture des données de SCIM avec Entra
  • Configurer : EPE Créer une carte de données pour cibler ESM
  • Configurer : EPE Supprimer la carte de données de l'ESM cible
  • Configurer : EPE Jira Cloud Connector
  • Activités du workflow du connecteur

Copyright 2026 – Matrix42 Professional.

Matrix42 homepage


Knowledge Base Software powered by Helpjuice

0
0
Expand