CdmEditorApi

  • Rversion finale: Washingtondc
  • Mis à jour 1 févr. 2024
  • 36 minutes de lecture
  • CdmEditorApi fournit des points de terminaison qui vous permettent de créer des nœuds, de mettre à jour des nœuds, d’inclure des nœuds existants sous d’autres nœuds, de supprimer des nœuds et de récupérer des nœuds et des inclusions de nœuds.

    Vous devez avoir l’un des rôles suivants pour accéder à cette API :
    • Scripted REST CDM View ACL (sn_cdm.cdm.viewer)
    • ACL de l’éditeur CDM REST scripté (sn_cdm.cdm_editor)

    Pour afficher les champs qui ont été chiffrés, vous devez disposer du rôle Secret CDM.

    En outre, le module d’extension Configuration Data Management (CDM) doit être activé pour que cette API soit disponible dans une instance.

    Remarque :
    L’API CdmEditorApi ne peut pas être utilisée pour modifier des fichiers. Seule la suppression de fichiers est autorisée actuellement.

    CdmEditorApi - SUPPRIMER /sn_cdm/editor/nodes

    Supprime un nœud spécifié.

    L’appelant de ce point de terminaison doit avoir le rôle d’éditeur CDM.

    Format d'URL

    URL versionnée : /api/sn_cdm/{api_version}/editor/nodes

    URL par défaut : /api/sn_cdm/editor/nodes

    Paramètres de demande pris en charge

    Tableau 1. Paramètres de chemin d'accès
    Nom Description
    api_version Facultatif. Version du point de terminaison auquel accéder. Exemple : v1 ou v2. Spécifiez uniquement cette valeur pour utiliser une version de point de terminaison différente de la dernière.

    Type de données : chaîne

    Tableau 2. Paramètres de requête
    Nom Description
    changesetNumber Requis.
    Identificateur unique de l’ensemble de changements associé, tel que « Chset-10 ». Situé dans la table Ensemble de changements CDM [sn_cdm_changeset].

    Type de données : chaîne

    chemin d’accès complet Requis. Nom du chemin d’accès du nœud à supprimer.
    Vous pouvez transmettre le chemin d’accès au nom dans l’un des formats suivants. Par exemple, pour supprimer le nœud testApp/deployables/Development1/cdi1 :
    • Format de barre oblique inverse : testApp/deployables/Development1/cdi1
      Remarque :
      Si le nom de votre nœud contient une barre oblique inverse (« / »), vous ne pouvez pas utiliser ce format.
    • Chemin d’accès du nom du backend avec caractères de remplacement : testApp déployables Development1 cdi1
    • Tableau : ['testApp','deployables','Development1','cdi1']

    Type de données : chaîne

    Tableau 3. Paramètres de corps de demande
    Nom Description
    Néant

    En-têtes

    Les en-têtes de demande et de réponse suivants s'appliquent à cette action HTTP uniquement ou s'appliquent à cette action d'une manière distincte. Pour obtenir une liste des en-têtes généraux utilisés dans l’API REST, consultez En-têtes d’API REST pris en charge.

    Tableau 4. En-têtes de demandes
    En-tête Description
    Accepter Format de données du corps de la réponse. Prend uniquement en charge application/json.
    Tableau 5. En-têtes de réponses
    En-tête Description
    Aucun

    Codes d'état

    Les codes d'état suivants s'appliquent à cette action HTTP. Pour obtenir une liste des codes d’état possibles utilisés dans l’API REST, consultez Codes de réponse HTTP de l’API REST.

    Tableau 6. Codes d'état
    Code d'état Description
    200 Réussi. La demande a été correctement traitée.
    400 Demande incorrecte. Un type de demande incorrecte ou mal formé a été détecté.
    500 Erreur interne du serveur. Une erreur inattendue s'est produite lors du traitement de la demande. La réponse contient des informations supplémentaires sur l'erreur.

    Paramètres du corps de réponse

    Nom Description
    Néant

    Demande cURL

    L’exemple de code suivant montre comment supprimer le nœud « cdi88 ».

    curl "http://instance.servicenow.com/api/sn_cdm/editor/nodes?changesetNumber=Chset783&fullNamePath=%2FtestApp%2Fdeployables%2FDevelopment-1%2Fcdi88" \
    --request DELETE \
    --header "Accept:application/json" \
    --user 'username':'password'

    Renvoyer le résultat :

    None - just the associated HTTP status code

    CdmEditorApi : GET /sn_cdm/editor/includes

    Renvoie la liste des nœuds qui ont été inclus dans un chemin d’accès de nœud spécifié.

    L’appelant de ce point de terminaison doit avoir le rôle de visionneur CDM.

    Format d'URL

    URL versionnée : /api/sn_cdm/{api_version}/editor/includes

    URL par défaut : /api/sn_cdm/editor/includes

    Paramètres de demande pris en charge

    Tableau 7. Paramètres de chemin d'accès
    Nom Description
    api_version Facultatif. Version du point de terminaison auquel accéder. Exemple : v1 ou v2. Spécifiez uniquement cette valeur pour utiliser une version de point de terminaison différente de la dernière.

    Type de données : chaîne

    Tableau 8. Paramètres de requête
    Nom Description
    Néant
    Tableau 9. Paramètres de corps de demande
    Nom Description
    changesetNumber
    Identificateur unique de l’ensemble de changements associé, tel que « Chset-10 ». Situé dans la table Ensemble de changements CDM [sn_cdm_changeset].

    Type de données : chaîne

    returnFields Liste des champs à renvoyer dans le cadre de la réponse. Transmettez les noms des colonnes d’enregistrement tels que sys_id, sys_updated_by ou État.

    Type de données : tableau

    Par défaut : tous les champs tels que déterminés par le point de terminaison

    sourceFullNamePath Requis. Nom du chemin d’accès du nœud source pour lequel renvoyer les nœuds inclus.
    Vous pouvez transmettre le chemin d’accès au nom dans l’un des formats suivants. Par exemple, pour renvoyer les includes pour le nœud collectionA dans le répertoire testApp/collections :
    • Format de barre oblique inverse : testApp/collections/collectionA
      Remarque :
      Si le nom de votre nœud contient une barre oblique inverse (« / »), vous ne pouvez pas utiliser ce format.
    • Chemin d’accès du nom du back-end avec caractères de remplacement : collection de collections testApp A
    • Tableau : ['testApp','collections','collectionA']

    Type de données : chaîne

    En-têtes

    Les en-têtes de demande et de réponse suivants s'appliquent à cette action HTTP uniquement ou s'appliquent à cette action d'une manière distincte. Pour obtenir une liste des en-têtes généraux utilisés dans l’API REST, consultez En-têtes d’API REST pris en charge.

    Tableau 10. En-têtes de demandes
    En-tête Description
    Accepter Format de données du corps de la réponse. Prend uniquement en charge application/json.
    Tableau 11. En-têtes de réponses
    En-tête Description
    Aucun

    Codes d'état

    Les codes d'état suivants s'appliquent à cette action HTTP. Pour obtenir une liste des codes d’état possibles utilisés dans l’API REST, consultez Codes de réponse HTTP de l’API REST.

    Tableau 12. Codes d'état
    Code d'état Description
    200 Réussi. La demande a été correctement traitée.
    400 Demande incorrecte. Un type de demande incorrecte ou mal formé a été détecté.
    500 Erreur interne du serveur. Une erreur inattendue s'est produite lors du traitement de la demande. La réponse contient des informations supplémentaires sur l'erreur.

    Paramètres du corps de réponse

    Nom Description
    changeset_id
    Identificateur unique de l’ensemble de changements associé, tel que « Chset-10 ». Situé dans la table Ensemble de changements CDM [sn_cdm_changeset].

    Type de données : chaîne

    Conflit Marqueur indiquant s’il y a eu un conflit lors du traitement du nœud.
    Valeurs possibles :
    • true : conflit détecté.
    • false : aucun conflit n’a été détecté.

    Type de données : booléennes

    conflict_type Si le conflict paramètre est défini sur true, le type de conflit détecté. Nul si aucun conflit n’est détecté.
    Valeurs possibles :
    • corrupted_node
    • deleted_node
    • duplicated_node
    • incomplete_deleted_parent
    • incomplete_deleted_ref
    • incomplete_renamed_ref
    • invalid_include
    • orphaned_descendant
    • related_conflict
    • unlinked_include
    • unrenamed_include
    • updated_node

    Type de données : chaîne

    description Brève description du but du nœud.

    Type de données : chaîne

    effective_from Horodatage (converti en entier long) lorsque le nœud a été validé dans le cadre de l’ensemble de changements. Si le nœud n’a pas été validé, cette valeur est « null ».

    Type de données : nombre entier

    effective_to Horodatage (converti en entier long) du noeud lorsqu’il a été supprimé ou remplacé par un autre noeud, sinon « null ».

    Type de données : nombre entier

    erreur Si une erreur s’est produite pendant le traitement, les détails sur l’erreur.

    Type de données : objet

    "error": {
      "detail": "String",
      "message": "String"
    }
    erreur.détail Informations supplémentaires sur l’erreur.

    Type de données : chaîne

    message d’erreur Message d’erreur généré lors de l’essai de traitement de la demande.

    Type de données : chaîne

    niveau Niveau du nœud, à partir du nœud racine, qui est toujours égal à 0. Par exemple, le nœud /AppA/components/compA a deux niveaux.

    Type de données : chaîne

    linked_to Paramètre main_id du nœud référencé auquel ce nœud est lié.

    Si ce nœud n’est pas lié à un nœud de référence, la valeur est « null ».

    Type de données : chaîne

    main_id Identificateur primaire du nœud. Vous pouvez utiliser cette valeur dans le script include CdmQuery() pour récupérer une arborescence JSON. Par exemple : CdmQuery().mainId('123')/query().getTree() ;

    Type de données : chaîne

    main_id_encoded Représentation de la chaîne RADIX 57 du paramètre du nœud main_id .

    Type de données : chaîne

    nom Nom du nœud inclus sous le chemin cible.

    Type de données : chaîne

    node_classifier Hiérarchie des classifieurs du nœud. Utilisez ces informations pour localiser un nœud dans la hiérarchie des dossiers.

    Par exemple, un élément déployable aurait une hiérarchie de /application/deployables/env :Development

    Alors qu’une collection aurait une hiérarchie de /applications/collections

    Type de données : chaîne

    node_path Nom complet du chemin d’accès du nœud inclus dans le chemin cible, par exemple /Production/deployables/Development1/cdi1.

    Type de données : chaîne

    position Position du nœud.
    Par exemple : si vous chargez le tableau suivant :
    arrayNode1: [
      "literal1", 
      {"cdi1": 1},
      "literal3"
    ]
    Les valeurs de position sont définies comme suit :
    • arrayNode1.literal1 = 1000
    • tableauNode1.2000 = 2000
    • arrayNode1.literal3 = 3000
    Si un objet complexe est téléchargé sous un tableau, dans ce cas {"cdi1 » : 1}, le point de terminaison crée un nouveau nœud virtuel dont le nom est égal à sa position. Dans l’exemple ci-dessus, il s’agit de 2000. Pour includes, la position est toujours vide.

    Type de données : chaîne

    previous_version Détails de la version précédente de l’enregistrement de nœud.
    Remarque :
    Si un nouveau nœud a été créé, le point de terminaison renvoie « previous_version » = null pour ce paramètre.

    Type de données : objet

    "previous_version": {
      "link": "String",
      "value": "String"
    }
    restricted_to Détails du groupe ayant accès au nœud associé.

    Type de données : objet

    "restricted_to": {
      "link": "String",
      "value": "String"
    }
    secure_value Si cette valeur a été marquée pour être sécurisée, le champ chiffré (retourné masqué).

    Un utilisateur doit disposer du rôle sn_cdm.cdm_secrets pour déchiffrer ces informations. Vous pouvez demander au point de terminaison de ne pas renvoyer ces champs en définissant le champ du paramètre de returnFields requête.

    Type de données : chaîne

    statut État du nœud.
    Valeurs possibles :
    • SUPPRIMÉ
    • NOUVEAU
    • REMPLACÉE
    • ACTUALISÉ
    • VALIDE

    Type de données : chaîne

    sys_id Sys_id du nœud. Situé dans la table Nœud CDM [sn_cdm_node].

    Type de données : chaîne

    system_folder Marqueur indiquant si le nœud associé est un dossier système.
    Valeurs possibles :
    • true : le nœud est un dossier système.
    • false : le nœud n’est pas un dossier système.

    Type de données : booléennes

    type
    Type de nœud.
    Valeurs possibles :
    • sn_cdm_node_cdi
    • sn_cdm_node_collection
    • sn_cdm_node_component
    • sn_cdm_node_folder
    • sn_cdm_node_variable

    Type de données : chaîne

    valide Valeur du nœud.

    Type de données : chaîne

    Demande cURL

    Cet exemple de code montre comment récupérer les includes dans le chemin source /testApp/collections/collA.

    curl "http://instance.servicenow.com/api/sn_cdm/editor/includes?changesetNumber=Chset5&sourceFullNamePath=%2FtestApp%2Fcollections%2FcollA" \
    --request GET \
    --header "Accept:application/json" \
    --user 'username':'password'

    Renvoyer le résultat :

    { 
      "result": [ 
        { 
          "sys_id": "a1c517a953b70110a1d3ddeeff7b129b", 
          "type": "sn_cdm_node_deployable", 
          "main_id": "6", 
          "main_id_encoded": ",", 
          "node_path": "!$!+!,", 
          "level": 2, 
          "status": "valid", 
          "node_classifier": "/application/deployables/env:Development", 
          "position": null, 
          "restricted_to": null, 
          "changeset_id": "e9c517a953b70110a1d3ddeeff7b1299", 
          "previous_version": null, 
          "effective_from": "1654002206866", 
          "effective_to": null, 
          "name": "Development_1", 
          "description": null, 
          "value": null, 
          "secure_value": null, 
          "system_folder": "0", 
          "linked_to": null, 
          "conflict": "0", 
          "conflict_type": null 
        } 
      ] 
    }

    CdmEditorApi : GET /sn_cdm/editor/nodes

    Renvoie les détails d’un nœud spécifié ou d’une liste de nœuds enfants Configuration Data Management (CDM) pour un nœud parent spécifié.

    L’appelant de ce point de terminaison doit avoir le rôle de visionneur CDM.

    Format d'URL

    URL versionnée : /api/sn_cdm/{api_version}/editor/nodes

    URL par défaut : /api/sn_cdm/editor/nodes

    Paramètres de demande pris en charge

    Tableau 13. Paramètres de chemin d'accès
    Nom Description
    api_version Facultatif. Version du point de terminaison auquel accéder. Exemple : v1 ou v2. Spécifiez uniquement cette valeur pour utiliser une version de point de terminaison différente de la dernière.

    Type de données : chaîne

    Tableau 14. Paramètres de requête
    Nom Description
    changesetNumber
    Identificateur unique de l’ensemble de changements associé, tel que « Chset-10 ». Situé dans la table Ensemble de changements CDM [sn_cdm_changeset].

    Type de données : chaîne

    decryptPassword Marqueur indiquant si la valeur doit être chiffrée pour les nœuds terminaux.
    Valeurs valides :
    • true : chiffré
    • false : non chiffré

    Type de données : booléennes

    Valeur par défaut : false

    nom Nom du nœud. Si vous transmettez ce paramètre, seuls les résultats du nœud spécifié sont renvoyés.

    Type de données : chaîne

    Par défaut : tous les nœuds du nœud parent

    parentFullNamePath Requis. Nom du chemin d’accès du nœud parent auquel renvoyer les nœuds enfants ou auquel réside le nœud spécifié dans le name paramètre.
    Vous pouvez transmettre le chemin d’accès au nom dans l’un des formats suivants. Par exemple, pour renvoyer les noeuds du noeud collectionA dans le répertoire testApp/collections :
    • Format de barre oblique inverse : testApp/collections/collectionA
      Remarque :
      Si le nom de votre nœud contient une barre oblique inverse (« / »), vous ne pouvez pas utiliser ce format.
    • Chemin d’accès du nom du back-end avec caractères de remplacement : collection de collections testApp A
    • Tableau : ['testApp','collections','collectionA']

    Type de données : chaîne

    returnFields Liste des champs à renvoyer dans le cadre de la réponse. Transmettez les noms des colonnes d’enregistrement tels que sys_id, sys_updated_by ou État.

    Type de données : tableau

    Par défaut : tous les champs tels que déterminés par le point de terminaison

    type
    Type de nœud.
    Valeurs possibles :
    • sn_cdm_node_cdi OU CDI
    • Collection sn_cdm_node_collection OU
    • sn_cdm_node_component composant OU
    • sn_cdm_node_folder dossier OU
    • sn_cdm_node_variable variable OU

    Type de données : chaîne

    Par défaut : Toutes

    Tableau 15. Paramètres de corps de demande
    Nom Description
    Néant

    En-têtes

    Les en-têtes de demande et de réponse suivants s'appliquent à cette action HTTP uniquement ou s'appliquent à cette action d'une manière distincte. Pour obtenir une liste des en-têtes généraux utilisés dans l’API REST, consultez En-têtes d’API REST pris en charge.

    Tableau 16. En-têtes de demandes
    En-tête Description
    Accepter Format de données du corps de la réponse. Prend uniquement en charge application/json.
    Tableau 17. En-têtes de réponses
    En-tête Description
    Aucun

    Codes d'état

    Les codes d'état suivants s'appliquent à cette action HTTP. Pour obtenir une liste des codes d’état possibles utilisés dans l’API REST, consultez Codes de réponse HTTP de l’API REST.

    Tableau 18. Codes d'état
    Code d'état Description
    200 Réussi. La demande a été correctement traitée.
    400 Demande incorrecte. Un type de demande incorrecte ou mal formé a été détecté.
    500 Erreur interne du serveur. Une erreur inattendue s'est produite lors du traitement de la demande. La réponse contient des informations supplémentaires sur l'erreur.

    Paramètres du corps de réponse

    Nom Description
    changeset_id Détails de l’enregistrement de l’ensemble de changements associé au nœud.

    Type de données : objet

    "changeset_id": {
      "link": "String",
      "value": "String"
    }
    changeset_id.value Identificateur unique de l’enregistrement de l’ensemble de changements. Situé dans la table Ensemble de changements CDM [sn_cdm_changeset].

    Type de données : chaîne

    Conflit Marqueur indiquant s’il y a eu un conflit lors du traitement du nœud.
    Valeurs possibles :
    • true : conflit détecté.
    • false : aucun conflit n’a été détecté.

    Type de données : booléennes

    conflict_type Si le conflict paramètre est défini sur true, le type de conflit détecté. Nul si aucun conflit n’est détecté.
    Valeurs possibles :
    • corrupted_node
    • deleted_node
    • duplicated_node
    • incomplete_deleted_parent
    • incomplete_deleted_ref
    • incomplete_renamed_ref
    • invalid_include
    • orphaned_descendant
    • related_conflict
    • unlinked_include
    • unrenamed_include
    • updated_node

    Type de données : chaîne

    description Brève description du but du nœud.

    Type de données : chaîne

    effective_from Horodatage (converti en entier long) lorsque le nœud a été validé dans le cadre de l’ensemble de changements. Si le nœud n’a pas été validé, cette valeur est « null ».

    Type de données : nombre entier

    effective_to Horodatage (converti en entier long) du noeud lorsqu’il a été supprimé ou remplacé par un autre noeud, sinon « null ».

    Type de données : nombre entier

    erreur Si une erreur s’est produite pendant le traitement, les détails sur l’erreur.

    Type de données : objet

    "error": {
      "detail": "String",
      "message": "String"
    }
    erreur.détail Informations supplémentaires sur l’erreur.

    Type de données : chaîne

    message d’erreur Message d’erreur généré lors de l’essai de traitement de la demande.

    Type de données : chaîne

    niveau Niveau du nœud, à partir du nœud racine, qui est toujours égal à 0. Par exemple, le nœud /AppA/components/compA a deux niveaux.

    Type de données : chaîne

    linked_to Paramètre main_id du nœud référencé auquel ce nœud est lié.

    Si ce nœud n’est pas lié à un nœud de référence, la valeur est « null ».

    Type de données : chaîne

    main_id Identificateur primaire du nœud. Vous pouvez utiliser cette valeur dans le script include CdmQuery() pour récupérer une arborescence JSON. Par exemple : CdmQuery().mainId('123')/query().getTree() ;

    Type de données : chaîne

    main_id_encoded Représentation de la chaîne RADIX 57 du paramètre du nœud main_id .

    Type de données : chaîne

    nom Nom du nœud.

    Type de données : chaîne

    node_classifier Hiérarchie des classifieurs du nœud. Utilisez ces informations pour localiser un nœud dans la hiérarchie des dossiers.

    Par exemple, un élément déployable aurait une hiérarchie de /application/deployables/env :Development

    Alors qu’une collection aurait une hiérarchie de /applications/collections

    Type de données : chaîne

    node_path Nom complet du chemin d’accès du nœud.

    Type de données : chaîne

    position Position du nœud.
    Par exemple : si vous chargez le tableau suivant :
    arrayNode1: [
      "literal1", 
      {"cdi1": 1},
      "literal3"
    ]
    Les valeurs de position sont définies comme suit :
    • arrayNode1.literal1 = 1000
    • tableauNode1.2000 = 2000
    • arrayNode1.literal3 = 3000
    Si un objet complexe est téléchargé sous un tableau, dans ce cas {"cdi1 » : 1}, le point de terminaison crée un nouveau nœud virtuel dont le nom est égal à sa position. Dans l’exemple ci-dessus, il s’agit de 2000. Pour includes, la position est toujours vide.

    Type de données : chaîne

    previous_version Détails de la version précédente de l’enregistrement de nœud.
    Remarque :
    Si un nouveau nœud a été créé, le point de terminaison renvoie « previous_version » = null pour ce paramètre.

    Type de données : objet

    "previous_version": {
      "link": "String",
      "value": "String"
    }
    previous_version.value Sys_id de l’enregistrement de nœud. Situé dans la table Nœud CDM [sn_cdm_node].

    Type de données : chaîne

    reason_for_conflict Explication détaillée du conflit.

    Type de données : chaîne

    restricted_to Détails du groupe ayant accès au nœud associé.

    Type de données : objet

    "restricted_to": {
      "link": "String",
      "value": "String"
    }
    restricted_to.value Sys_id de l’enregistrement du groupe. Situé dans la table Groupe [sys_user_group CDM.

    Type de données : chaîne

    secure_value Si cette valeur a été marquée pour être sécurisée, le champ chiffré (retourné masqué).

    Un utilisateur doit disposer du rôle sn_cdm.cdm_secrets pour déchiffrer ces informations. Vous pouvez demander au point de terminaison de ne pas renvoyer ces champs en définissant le champ du paramètre de returnFields requête.

    Type de données : chaîne

    statut État du nœud.
    Valeurs possibles :
    • SUPPRIMÉ
    • NOUVEAU
    • REMPLACÉE
    • ACTUALISÉ
    • VALIDE

    Type de données : chaîne

    system_folder Marqueur indiquant si le nœud associé est un dossier système.
    Valeurs possibles :
    • true : le nœud est un dossier système.
    • false : le nœud n’est pas un dossier système.

    Type de données : booléennes

    sys_class_name Table dans laquelle réside le nœud.

    Type de données : chaîne

    sys_created_by Nom de l’utilisateur qui a créé le nœud.

    Type de données : chaîne

    sys_created_on Date et heure auxquelles le nœud a été créé.

    Type de données : chaîne

    Format : aaaa-mm-jj hh :mm :ss

    sys_id Sys_id du nœud. Situé dans la table Nœud CDM [sn_cdm_node].

    Type de données : chaîne

    sys_updated_by Nom de l’utilisateur qui a mis à jour le nœud.

    Type de données : chaîne

    sys_updated_on Date et heure auxquelles le nœud a été mis à jour pour la dernière fois.

    Type de données : chaîne

    Format : aaaa-mm-jj hh :mm :ss

    type
    Type de nœud.
    Valeurs possibles :
    • sn_cdm_node_cdi
    • sn_cdm_node_collection
    • sn_cdm_node_component
    • sn_cdm_node_folder
    • sn_cdm_node_variable

    Type de données : chaîne

    Par défaut : Toutes

    valide Valeur du nœud.

    Type de données : chaîne

    Demande cURL

    Cet exemple de code montre comment récupérer les nœuds enfants de type sn_cdm_node_cdi sous le nœud parent /testApp/Fdeployables/Development_1 .

    curl "http://instance.servicenow.com/api/sn_cdm/editor/nodes?decryptPassword=true&name=cdi45&changesetNumber=Chset3&parentFullNamePath=%2FtestApp%2Fdeployables%2FDevelopment_1&type=sn_cdm_node_cdi" \
    --request GET \
    --header "Accept:application/json" \
    --user 'username':'password'

    Renvoyer le résultat :

    { 
      "result": [ 
        { 
          "changeset_id": { 
            "value": "d403648653b70110a1d3ddeeff7b12c5", 
            "link": "http://instance.servicenow.com/api/now/table/sn_cdm_changeset/d403648653b70110a1d3ddeeff7b12c5" 
          }, 
          "node_path": "!$!+!,![:", 
          "description": null, 
          "sys_updated_on": "2022-06-30 09:24:07", 
          "type": "sn_cdm_node_cdi", 
          "sys_class_name": "sn_cdm_node", 
          "sys_id": "c93c7c1753981110a1d3ddeeff7b12c7", 
          "sys_updated_by": "admin", 
          "previous_version": null, 
          "sys_created_on": "2022-06-30 08:53:13", 
          "value": "cdcdc", 
          "effective_from": null, 
          "linked_to": null, 
          "sys_created_by": "admin", 
          "restricted_to": null, 
          "level": "3", 
          "conflict_type": null, 
          "main_id": "2869", 
          "effective_to": null, 
          "secure_value": null, 
          "node_classifier": "/application/deployables/env:Development", 
          "main_id_encoded": "[:", 
          "name": "cdi45", 
          "position": null, 
          "reason_for_conflict": null, 
          "system_folder": false, 
          "status": "new", 
          "conflict": false 
        } 
      ] 
    }

    CdmEditorApi - POST /sn_cdm/editor/includes

    Inclut un nœud existant dans un autre nœud, tel qu’un nœud de composant dans un nœud de collection ou un nœud de collection dans un nœud déployable. Après avoir inclus un nœud, le nouveau nœud a ses propres sys_id et main_Id.

    L’appelant de ce point de terminaison doit avoir le rôle d’éditeur CDM.

    Format d'URL

    URL versionnée : /api/sn_cdm/{api_version}/editor/includes

    URL par défaut : /api/sn_cdm/editor/includes

    Paramètres de demande pris en charge

    Tableau 19. Paramètres de chemin d'accès
    Nom Description
    api_version Facultatif. Version du point de terminaison auquel accéder. Exemple : v1 ou v2. Spécifiez uniquement cette valeur pour utiliser une version de point de terminaison différente de la dernière.

    Type de données : chaîne

    Tableau 20. Paramètres de requête
    Nom Description
    changesetNumber Requis. Numéro unique de l’ensemble de changements ouvert à inclure dans le nœud cible. Situé dans la table Ensemble de changements CDM [sn_cdm_changeset].

    Type de données : chaîne

    returnFields Liste des champs à renvoyer dans le cadre de la réponse. Transmettez les noms des colonnes d’enregistrement tels que sys_id, sys_updated_by ou État.

    Type de données : tableau

    Par défaut : tous les champs tels que déterminés par le point de terminaison

    sourceFullNamePath Requis. Nom du chemin d’accès du nœud à inclure dans le nœud cible.
    Vous pouvez transmettre le chemin d’accès au nom dans l’un des formats suivants. Par exemple, pour inclure le nœud suivant Staging/deployables/Development1/cdi1 :
    • Format de barre oblique inverse : Staging/deployables/Development1/cdi1
      Remarque :
      Si le nom de votre nœud contient une barre oblique inverse (« / »), vous ne pouvez pas utiliser ce format.
    • Chemin d’accès au nom du backend avec caractères de remplacement : Éléments déployables intermédiaires Development1 cdi1
    • Tableau : ['Staging','deployables','Development1','cdi1']

    Type de données : chaîne

    targetFullNamePath Requis. Nom du chemin d’accès du nœud sous lequel le nœud source doit être inclus.
    Vous pouvez transmettre le chemin d’accès au nom dans l’un des formats suivants. Par exemple, pour inclure le nœud suivant Production/déployables/Développement1 :
    • Format de barre oblique inverse : Production/déployables/Development1/cdi1
      Remarque :
      Si le nom de votre nœud contient une barre oblique inverse (« / »), vous ne pouvez pas utiliser ce format.
    • Chemin d’accès au nom du backend avec caractères de remplacement : Déployables de production Development1 cdi1
    • Tableau : ['Production','déployables','Development1','cdi1']

    Type de données : chaîne

    Tableau 21. Paramètres de corps de demande
    Nom Description
    Néant

    En-têtes

    Les en-têtes de demande et de réponse suivants s'appliquent à cette action HTTP uniquement ou s'appliquent à cette action d'une manière distincte. Pour obtenir une liste des en-têtes généraux utilisés dans l’API REST, consultez En-têtes d’API REST pris en charge.

    Tableau 22. En-têtes de demandes
    En-tête Description
    Accepter Format de données du corps de la réponse. Prend uniquement en charge application/json.
    Content-Type Format de données du corps de la demande. Prend uniquement en charge application/json.
    Tableau 23. En-têtes de réponses
    En-tête Description
    Aucun

    Codes d'état

    Les codes d'état suivants s'appliquent à cette action HTTP. Pour obtenir une liste des codes d’état possibles utilisés dans l’API REST, consultez Codes de réponse HTTP de l’API REST.

    Tableau 24. Codes d'état
    Code d'état Description
    200 Réussi. La demande a été correctement traitée.
    400 Demande incorrecte. Un type de demande incorrecte ou mal formé a été détecté.
    500 Erreur interne du serveur. Une erreur inattendue s'est produite lors du traitement de la demande. La réponse contient des informations supplémentaires sur l'erreur.

    Paramètres du corps de réponse

    Nom Description
    changeset_id
    Identificateur unique de l’ensemble de changements associé, tel que « Chset-10 ». Situé dans la table Ensemble de changements CDM [sn_cdm_changeset].

    Type de données : chaîne

    Conflit Marqueur indiquant s’il y a eu un conflit lors du traitement du nœud.
    Valeurs possibles :
    • true : conflit détecté.
    • false : aucun conflit n’a été détecté.

    Type de données : booléennes

    conflict_type Si le conflict paramètre est défini sur true, le type de conflit détecté. Nul si aucun conflit n’est détecté.
    Valeurs possibles :
    • corrupted_node
    • deleted_node
    • duplicated_node
    • incomplete_deleted_parent
    • incomplete_deleted_ref
    • incomplete_renamed_ref
    • invalid_include
    • orphaned_descendant
    • related_conflict
    • unlinked_include
    • unrenamed_include
    • updated_node

    Type de données : chaîne

    description Brève description du but du nœud.

    Type de données : chaîne

    effective_from Horodatage (converti en entier long) lorsque le nœud a été validé dans le cadre de l’ensemble de changements. Si le nœud n’a pas été validé, cette valeur est « null ».

    Type de données : nombre entier

    effective_to Horodatage (converti en entier long) du noeud lorsqu’il a été supprimé ou remplacé par un autre noeud, sinon « null ».

    Type de données : nombre entier

    erreur Si une erreur s’est produite pendant le traitement, les détails sur l’erreur.

    Type de données : objet

    "error": {
      "detail": "String",
      "message": "String"
    }
    erreur.détail Informations supplémentaires sur l’erreur.

    Type de données : chaîne

    message d’erreur Message d’erreur généré lors de l’essai de traitement de la demande.

    Type de données : chaîne

    niveau Niveau du nœud, à partir du nœud racine, qui est toujours égal à 0. Par exemple, le nœud /AppA/components/compA a deux niveaux.

    Type de données : chaîne

    linked_to Paramètre main_id du nœud référencé auquel ce nœud est lié.

    Si ce nœud n’est pas lié à un nœud de référence, la valeur est « null ».

    Type de données : chaîne

    main_id Identificateur primaire du nœud. Vous pouvez utiliser cette valeur dans le script include CdmQuery() pour récupérer une arborescence JSON. Par exemple : CdmQuery().mainId('123')/query().getTree() ;

    Type de données : chaîne

    main_id_encoded Représentation de la chaîne RADIX 57 du paramètre du nœud main_id .

    Type de données : chaîne

    nom Nom du nœud inclus sous le chemin cible.

    Type de données : chaîne

    node_classifier Hiérarchie des classifieurs du nœud. Utilisez ces informations pour localiser un nœud dans la hiérarchie des dossiers.

    Par exemple, un élément déployable aurait une hiérarchie de /application/deployables/env :Development

    Alors qu’une collection aurait une hiérarchie de /applications/collections

    Type de données : chaîne

    node_path Nom complet du chemin d’accès du nœud inclus dans le chemin cible, par exemple /Production/deployables/Development1/cdi1.

    Type de données : chaîne

    position Position du nœud.
    Par exemple : si vous chargez le tableau suivant :
    arrayNode1: [
      "literal1", 
      {"cdi1": 1},
      "literal3"
    ]
    Les valeurs de position sont définies comme suit :
    • arrayNode1.literal1 = 1000
    • tableauNode1.2000 = 2000
    • arrayNode1.literal3 = 3000
    Si un objet complexe est téléchargé sous un tableau, dans ce cas {"cdi1 » : 1}, le point de terminaison crée un nouveau nœud virtuel dont le nom est égal à sa position. Dans l’exemple ci-dessus, il s’agit de 2000. Pour includes, la position est toujours vide.

    Type de données : chaîne

    previous_version Détails de la version précédente de l’enregistrement de nœud.
    Remarque :
    Si un nouveau nœud a été créé, le point de terminaison renvoie « previous_version » = null pour ce paramètre.

    Type de données : objet

    "previous_version": {
      "link": "String",
      "value": "String"
    }
    restricted_to Détails du groupe ayant accès au nœud associé.

    Type de données : objet

    "restricted_to": {
      "link": "String",
      "value": "String"
    }
    secure_value Si cette valeur a été marquée pour être sécurisée, le champ chiffré (retourné masqué).

    Un utilisateur doit disposer du rôle sn_cdm.cdm_secrets pour déchiffrer ces informations. Vous pouvez demander au point de terminaison de ne pas renvoyer ces champs en définissant le champ du paramètre de returnFields requête.

    Type de données : chaîne

    statut État du nœud.
    Valeurs possibles :
    • SUPPRIMÉ
    • NOUVEAU
    • REMPLACÉE
    • ACTUALISÉ
    • VALIDE

    Type de données : chaîne

    sys_id Sys_id du nœud. Situé dans la table Nœud CDM [sn_cdm_node].

    Type de données : chaîne

    system_folder Marqueur indiquant si le nœud associé est un dossier système.
    Valeurs possibles :
    • true : le nœud est un dossier système.
    • false : le nœud n’est pas un dossier système.

    Type de données : booléennes

    type
    Type de nœud.
    Valeurs possibles :
    • sn_cdm_node_cdi
    • sn_cdm_node_collection
    • sn_cdm_node_component
    • sn_cdm_node_folder
    • sn_cdm_node_variable

    Type de données : chaîne

    valide Valeur du nœud.

    Type de données : chaîne

    Demande cURL

    L’exemple de code suivant montre comment inclure le nœud /testApp/collections/collA sous /testApp/deployables/Development_1.

    curl "http://instance.servicenow.com/api/sn_cdm/editor/includes?changesetNumber=Chset5&targetFullNamePath=%2FtestApp%2Fdeployables%2FDevelopment_1&sourceFullNamePath=%2FtestApp%2Fcollecti
    ons%2FcollA" \
    --request POST \
    --header "Accept:application/json" \
    --user 'username':'password'

    Renvoyer le résultat :

    { 
      "result": { 
        "changeset_id": { 
          "value": "d403648653b70110a1d3ddeeff7b12c5", 
          "link": "http://192.168.0.233:8080/api/now/table/sn_cdm_changeset/d403648653b70110a1d3ddeeff7b12c5" 
        }, 
        "node_path": "!$!+!,![?", 
        "description": null, 
        "sys_updated_on": "2022-06-30 09:19:47", 
        "type": "sn_cdm_node_linked", 
        "sys_class_name": "sn_cdm_node", 
        "sys_id": "1642015b53981110a1d3ddeeff7b1232", 
        "sys_updated_by": "admin", 
        "previous_version": null, 
        "sys_created_on": "2022-06-30 09:19:47", 
        "value": null, 
        "effective_from": null, 
        "linked_to": "2870", 
        "sys_created_by": "admin", 
        "restricted_to": null, 
        "level": "3", 
        "conflict_type": null, 
        "main_id": "2872", 
        "effective_to": null, 
        "secure_value": null, 
        "node_classifier": "/application/deployables/env:Development", 
        "main_id_encoded": "[?", 
        "name": "collA", 
        "position": null, 
        "reason_for_conflict": null, 
        "system_folder": false, 
        "status": "new", 
        "conflict": false 
      } 
    }

    CdmEditorApi - POST /sn_cdm/editor/nodes

    Crée un type spécifique de nœud, tel qu’un composant, une collection, un dossier, un élément de données de configuration (CDI) ou une variable.

    Vous pouvez également indiquer si vous souhaitez générer automatiquement des nœuds parents qui ne sont pas actuellement définis.

    L’appelant de ce point de terminaison doit avoir le rôle Éditeur CDM ou Secret CDM.

    Format d'URL

    URL versionnée : /api/sn_cdm/{api_version}/editor/nodes

    URL par défaut : /api/sn_cdm/editor/nodes

    Paramètres de demande pris en charge

    Tableau 25. Paramètres de chemin d'accès
    Nom Description
    api_version Facultatif. Version du point de terminaison auquel accéder. Exemple : v1 ou v2. Spécifiez uniquement cette valeur pour utiliser une version de point de terminaison différente de la dernière.

    Type de données : chaîne

    Tableau 26. Paramètres de requête
    Nom Description
    autoCreateParents Marqueur indiquant si les parents inexistants dans le chemin d’accès du nom doivent être créés automatiquement en tant que composants. Les exceptions à cette règle sont l’application, l’élément déployable et la collection. Si vous ne définissez pas ce marqueur et que les parents n’existent pas déjà, le point de terminaison échoue.
    Valeurs valides :
    • true : crée automatiquement les parents inexistants.
    • false : ne crée pas automatiquement les parents inexistants.

    Type de données : booléennes

    Valeur par défaut : false

    changesetNumber Requis.
    Identificateur unique de l’ensemble de changements associé, tel que « Chset-10 ». Situé dans la table Ensemble de changements CDM [sn_cdm_changeset].

    Type de données : chaîne

    chemin d’accès complet Requis. Chemin d’accès du nœud.
    Vous pouvez transmettre le chemin d’accès au nom dans l’un des formats suivants. Par exemple, pour définir le chemin d’accès du nom du nœud testApp/deployables/Development1/cdi1 :
    • Format de barre oblique inverse : testApp/deployables/Development1/cdi1
      Remarque :
      Si le nom de votre nœud contient une barre oblique inverse (« / »), vous ne pouvez pas utiliser ce format.
    • Chemin d’accès du nom du backend avec caractères de remplacement : testApp déployables Development1 cdi1
    • Tableau : ['testApp','deployables','Development1','cdi1']

    Type de données : chaîne

    returnFields Liste des champs à renvoyer dans le cadre de la réponse. Transmettez les noms des colonnes d’enregistrement tels que sys_id, sys_updated_by ou État.

    Type de données : tableau

    Par défaut : tous les champs tels que déterminés par le point de terminaison

    Sécurisé Marqueur indiquant si la valeur doit être chiffrée pour les nœuds terminaux.
    Valeurs valides :
    • true : chiffré
    • false : non chiffré

    Type de données : booléennes

    Valeur par défaut : false

    type Requis. Type de nouveau nœud.
    Valeurs valides :
    • Collection sn_cdm_node_collection OU
    • sn_cdm_node_component composant OU
    • sn_cdm_node_folder dossier OU
    • sn_cdm_node_cdi OU CDI
    • sn_cdm_node_variable ou variable

    Type de données : chaîne

    valide Valeur du nouveau nœud.

    Type de données : chaîne

    Valeur par défaut : équivalent de « null »

    Tableau 27. Paramètres de corps de demande
    Nom Description
    Néant

    En-têtes

    Les en-têtes de demande et de réponse suivants s'appliquent à cette action HTTP uniquement ou s'appliquent à cette action d'une manière distincte. Pour obtenir une liste des en-têtes généraux utilisés dans l’API REST, consultez En-têtes d’API REST pris en charge.

    Tableau 28. En-têtes de demandes
    En-tête Description
    Accepter Format de données du corps de la réponse. Prend uniquement en charge application/json.
    Content-Type Format de données du corps de la demande. Prend uniquement en charge application/json.
    Tableau 29. En-têtes de réponses
    En-tête Description
    Aucun

    Codes d'état

    Les codes d'état suivants s'appliquent à cette action HTTP. Pour obtenir une liste des codes d’état possibles utilisés dans l’API REST, consultez Codes de réponse HTTP de l’API REST.

    Tableau 30. Codes d'état
    Code d'état Description
    200 Réussi. La demande a été correctement traitée.
    400 Demande incorrecte. Un type de demande incorrecte ou mal formé a été détecté.
    500 Erreur interne du serveur. Une erreur inattendue s'est produite lors du traitement de la demande. La réponse contient des informations supplémentaires sur l'erreur.

    Paramètres du corps de réponse

    Nom Description
    changeset_id Détails de l’enregistrement de l’ensemble de changements associé au nœud.

    Type de données : objet

    "changeset_id": {
      "link": "String",
      "value": "String"
    }
    changeset_id.link Syntaxe d’appel pour interroger cet enregistrement d’ensemble de changements à l’aide de l’API REST de table .

    Type de données : chaîne

    changeset_id.value Identificateur unique de l’enregistrement de l’ensemble de changements. Situé dans la table Ensemble de changements CDM [sn_cdm_changeset].

    Type de données : chaîne

    Conflit Marqueur indiquant s’il y a eu un conflit lors du traitement du nœud.
    Valeurs possibles :
    • true : conflit détecté.
    • false : aucun conflit n’a été détecté.

    Type de données : booléennes

    conflict_type Si le conflict paramètre est défini sur true, le type de conflit détecté. Nul si aucun conflit n’est détecté.
    Valeurs possibles :
    • corrupted_node
    • deleted_node
    • duplicated_node
    • incomplete_deleted_parent
    • incomplete_deleted_ref
    • incomplete_renamed_ref
    • invalid_include
    • orphaned_descendant
    • related_conflict
    • unlinked_include
    • unrenamed_include
    • updated_node

    Type de données : chaîne

    description Brève description du but du nœud.

    Type de données : chaîne

    effective_from Horodatage (converti en entier long) lorsque le nœud a été validé dans le cadre de l’ensemble de changements. Si le nœud n’a pas été validé, cette valeur est « null ».

    Type de données : nombre entier

    effective_to Horodatage (converti en entier long) du noeud lorsqu’il a été supprimé ou remplacé par un autre noeud, sinon « null ».

    Type de données : nombre entier

    erreur Si une erreur s’est produite pendant le traitement, les détails sur l’erreur.

    Type de données : objet

    "error": {
      "detail": "String",
      "message": "String"
    }
    erreur.détail Informations supplémentaires sur l’erreur.

    Type de données : chaîne

    message d’erreur Message d’erreur généré lors de l’essai de traitement de la demande.

    Type de données : chaîne

    niveau Niveau du nœud, à partir du nœud racine, qui est toujours égal à 0. Par exemple, le nœud /AppA/components/compA a deux niveaux.

    Type de données : chaîne

    linked_to Paramètre main_id du nœud référencé auquel ce nœud est lié.

    Si ce nœud n’est pas lié à un nœud de référence, la valeur est « null ».

    Type de données : chaîne

    main_id Identificateur primaire du nœud. Vous pouvez utiliser cette valeur dans le script include CdmQuery() pour récupérer une arborescence JSON. Par exemple : CdmQuery().mainId('123')/query().getTree() ;

    Type de données : chaîne

    main_id_encoded Représentation de la chaîne RADIX 57 du paramètre du nœud main_id .

    Type de données : chaîne

    nom Nom du nœud.

    Type de données : chaîne

    node_classifier Hiérarchie des classifieurs du nœud. Utilisez ces informations pour localiser un nœud dans la hiérarchie des dossiers.

    Par exemple, un élément déployable aurait une hiérarchie de /application/deployables/env :Development

    Alors qu’une collection aurait une hiérarchie de /applications/collections

    Type de données : chaîne

    node_path Nom complet du chemin d’accès du nœud.

    Type de données : chaîne

    position Position du nœud.
    Par exemple : si vous chargez le tableau suivant :
    arrayNode1: [
      "literal1", 
      {"cdi1": 1},
      "literal3"
    ]
    Les valeurs de position sont définies comme suit :
    • arrayNode1.literal1 = 1000
    • tableauNode1.2000 = 2000
    • arrayNode1.literal3 = 3000
    Si un objet complexe est téléchargé sous un tableau, dans ce cas {"cdi1 » : 1}, le point de terminaison crée un nouveau nœud virtuel dont le nom est égal à sa position. Dans l’exemple ci-dessus, il s’agit de 2000. Pour includes, la position est toujours vide.

    Type de données : chaîne

    previous_version Détails de la version précédente de l’enregistrement de nœud.
    Remarque :
    Si un nouveau nœud a été créé, le point de terminaison renvoie « previous_version » = null pour ce paramètre.

    Type de données : objet

    "previous_version": {
      "link": "String",
      "value": "String"
    }
    previous_version.link Syntaxe d’appel pour interroger cet enregistrement de nœud à l’aide de l’API REST de table .

    Type de données : chaîne

    previous_version.value Sys_id de l’enregistrement de nœud. Situé dans la table Nœud CDM [sn_cdm_node].

    Type de données : chaîne

    reason_for_conflict Explication détaillée du conflit.

    Type de données : chaîne

    restricted_to Détails du groupe ayant accès au nœud associé.

    Type de données : objet

    "restricted_to": {
      "link": "String",
      "value": "String"
    }
    restricted_to.link Syntaxe d’appel pour interroger cet enregistrement de groupe à l’aide de l’API REST de table .

    Type de données : chaîne

    restricted_to.value Sys_id de l’enregistrement du groupe. Situé dans la table Groupe [sys_user_group CDM.

    Type de données : chaîne

    secure_value Si cette valeur a été marquée pour être sécurisée, le champ chiffré (retourné masqué).

    Un utilisateur doit disposer du rôle sn_cdm.cdm_secrets pour déchiffrer ces informations. Vous pouvez demander au point de terminaison de ne pas renvoyer ces champs en définissant le champ du paramètre de returnFields requête.

    Type de données : chaîne

    statut État du nœud.
    Valeurs possibles :
    • SUPPRIMÉ
    • NOUVEAU
    • REMPLACÉE
    • ACTUALISÉ
    • VALIDE

    Type de données : chaîne

    system_folder Marqueur indiquant si le nœud associé est un dossier système.
    Valeurs possibles :
    • true : le nœud est un dossier système.
    • false : le nœud n’est pas un dossier système.

    Type de données : booléennes

    sys_class_name Table dans laquelle réside le nœud.

    Type de données : chaîne

    sys_created_by Nom de l’utilisateur qui a créé le nœud.

    Type de données : chaîne

    sys_created_on Date et heure auxquelles le nœud a été créé.

    Type de données : chaîne

    Format : aaaa-mm-jj hh :mm :ss

    sys_id Sys_id du nœud. Situé dans la table Nœud CDM [sn_cdm_node].

    Type de données : chaîne

    sys_updated_by Nom de l’utilisateur qui a mis à jour le nœud.

    Type de données : chaîne

    sys_updated_on Date et heure auxquelles le nœud a été mis à jour pour la dernière fois.

    Type de données : chaîne

    Format : aaaa-mm-jj hh :mm :ss

    type
    Type de nœud.
    Valeurs possibles :
    • sn_cdm_node_cdi
    • sn_cdm_node_collection
    • sn_cdm_node_component
    • sn_cdm_node_folder
    • sn_cdm_node_variable

    Type de données : chaîne

    Par défaut : Toutes

    valide Valeur du nœud.

    Type de données : chaîne

    Demande cURL

    L’exemple de code suivant montre comment créer un nœud à l’aide de ce point de terminaison.

    curl "http://instance.servicenow.com/api/sn_cdm/editor/nodes?fullNamePath=%2FtestApp%2Fdeployables%2FDevelopment1%2Fcdi1&secure=true&value=someVal&type=cdi&changesetNumber=Chset-760" \
    --request POST \
    --header "Accept:application/json" \
    --user 'username':'password'

    Renvoyer le résultat :

    { 
      "result": { 
        "changeset_id": { 
          "value": "d403648653b70110a1d3ddeeff7b12c5", 
          "link": "http://instance.servicenow.com/api/now/table/sn_cdm_changeset/d403648653b70110a1d3ddeeff7b12c5" 
        }, 
        "node_path": "!$!+!,![:", 
        "description": null, 
        "sys_updated_on": "2022-06-30 08:53:13", 
        "type": "sn_cdm_node_cdi", 
        "sys_class_name": "sn_cdm_node", 
        "sys_id": "c93c7c1753981110a1d3ddeeff7b12c7", 
        "sys_updated_by": "admin", 
        "previous_version": null, 
        "sys_created_on": "2022-06-30 08:53:13", 
        "value": null, 
        "effective_from": null, 
        "linked_to": null, 
        "sys_created_by": "admin", 
        "restricted_to": null, 
        "level": "3", 
        "conflict_type": null, 
        "main_id": "2869", 
        "effective_to": null, 
        "secure_value": "﷞﷟﷒113a0c6e53001110a1d3ddeeff7b121d﷬﷔1﷬﷭bAUA1wj-fxofbSrMyF-BAg==6qiho5f_9DhnuHT2Km5SLf0Ck4XNX_w=﷮﷯", 
        "node_classifier": "/application/deployables/env:Development", 
        "main_id_encoded": "[:", 
        "name": "cdi45", 
        "position": null, 
        "reason_for_conflict": null, 
        "system_folder": false, 
        "status": "new", 
        "conflict": false 
      } 
    }

    CdmEditorApi - PUT /sn_cdm/editor/nodes

    Met à jour le nom et/ou la valeur d’un nœud spécifié.

    L’appelant de ce point de terminaison doit avoir le rôle Éditeur CDM ou Secret CDM.

    Format d'URL

    URL versionnée : /api/sn_cdm/{api_version}/editor/nodes

    URL par défaut : /api/sn_cdm/editor/nodes

    Paramètres de demande pris en charge

    Tableau 31. Paramètres de chemin d'accès
    Nom Description
    api_version Facultatif. Version du point de terminaison auquel accéder. Exemple : v1 ou v2. Spécifiez uniquement cette valeur pour utiliser une version de point de terminaison différente de la dernière.

    Type de données : chaîne

    Tableau 32. Paramètres de requête
    Nom Description
    changesetNumber Requis.
    Identificateur unique de l’ensemble de changements associé, tel que « Chset-10 ». Situé dans la table Ensemble de changements CDM [sn_cdm_changeset].

    Type de données : chaîne

    chemin d’accès complet Requis. Chemin d’accès du nœud.
    Vous pouvez transmettre le chemin d’accès au nom dans l’un des formats suivants. Par exemple, pour définir le chemin d’accès du nom du nœud testApp/deployables/Development1/cdi1 :
    • Format de barre oblique inverse : testApp/deployables/Development1/cdi1
      Remarque :
      Si le nom de votre nœud contient une barre oblique inverse (« / »), vous ne pouvez pas utiliser ce format.
    • Chemin d’accès du nom du backend avec caractères de remplacement : testApp déployables Development1 cdi1
    • Tableau : ['testApp','deployables','Development1','cdi1']

    Type de données : chaîne

    Newname Nouveau nom pour le nœud associé.

    Type de données : chaîne

    newValue Nouvelle valeur pour le nœud associé.

    Type de données : chaîne

    Sécurisé Marqueur indiquant si la valeur doit être chiffrée pour les nœuds terminaux.
    Valeurs valides :
    • true : chiffré
    • false : non chiffré

    Type de données : booléennes

    Valeur par défaut : false

    returnFields Liste des champs à renvoyer dans le cadre de la réponse. Transmettez les noms des colonnes d’enregistrement tels que sys_id, sys_updated_by ou État.

    Type de données : tableau

    Par défaut : tous les champs tels que déterminés par le point de terminaison

    Tableau 33. Paramètres de corps de demande
    Nom Description
    Néant

    En-têtes

    Les en-têtes de demande et de réponse suivants s'appliquent à cette action HTTP uniquement ou s'appliquent à cette action d'une manière distincte. Pour obtenir une liste des en-têtes généraux utilisés dans l’API REST, consultez En-têtes d’API REST pris en charge.

    Tableau 34. En-têtes de demandes
    En-tête Description
    Accepter Format de données du corps de la réponse. Prend uniquement en charge application/json.
    Content-Type Format de données du corps de la demande. Prend uniquement en charge application/json.
    Tableau 35. En-têtes de réponses
    En-tête Description
    Aucun

    Codes d'état

    Les codes d'état suivants s'appliquent à cette action HTTP. Pour obtenir une liste des codes d’état possibles utilisés dans l’API REST, consultez Codes de réponse HTTP de l’API REST.

    Tableau 36. Codes d'état
    Code d'état Description
    200 Réussi. La demande a été correctement traitée.
    400 Demande incorrecte. Un type de demande incorrecte ou mal formé a été détecté.
    500 Erreur interne du serveur. Une erreur inattendue s'est produite lors du traitement de la demande. La réponse contient des informations supplémentaires sur l'erreur.

    Paramètres du corps de réponse

    Nom Description
    changeset_id Détails de l’enregistrement de l’ensemble de changements associé au nœud.

    Type de données : objet

    "changeset_id": {
      "link": "String",
      "value": "String"
    }
    changeset_id.value Identificateur unique de l’enregistrement de l’ensemble de changements. Situé dans la table Ensemble de changements CDM [sn_cdm_changeset].

    Type de données : chaîne

    Conflit Marqueur indiquant s’il y a eu un conflit lors du traitement du nœud.
    Valeurs possibles :
    • true : conflit détecté.
    • false : aucun conflit n’a été détecté.

    Type de données : booléennes

    conflict_type Si le conflict paramètre est défini sur true, le type de conflit détecté. Nul si aucun conflit n’est détecté.
    Valeurs possibles :
    • corrupted_node
    • deleted_node
    • duplicated_node
    • incomplete_deleted_parent
    • incomplete_deleted_ref
    • incomplete_renamed_ref
    • invalid_include
    • orphaned_descendant
    • related_conflict
    • unlinked_include
    • unrenamed_include
    • updated_node

    Type de données : chaîne

    description Brève description du but du nœud.

    Type de données : chaîne

    effective_from Horodatage (converti en entier long) lorsque le nœud a été validé dans le cadre de l’ensemble de changements. Si le nœud n’a pas été validé, cette valeur est « null ».

    Type de données : nombre entier

    effective_to Horodatage (converti en entier long) du noeud lorsqu’il a été supprimé ou remplacé par un autre noeud, sinon « null ».

    Type de données : nombre entier

    erreur Si une erreur s’est produite pendant le traitement, les détails sur l’erreur.

    Type de données : objet

    "error": {
      "detail": "String",
      "message": "String"
    }
    erreur.détail Informations supplémentaires sur l’erreur.

    Type de données : chaîne

    message d’erreur Message d’erreur généré lors de l’essai de traitement de la demande.

    Type de données : chaîne

    niveau Niveau du nœud, à partir du nœud racine, qui est toujours égal à 0. Par exemple, le nœud /AppA/components/compA a deux niveaux.

    Type de données : chaîne

    linked_to Paramètre main_id du nœud référencé auquel ce nœud est lié.

    Si ce nœud n’est pas lié à un nœud de référence, la valeur est « null ».

    Type de données : chaîne

    main_id Identificateur primaire du nœud. Vous pouvez utiliser cette valeur dans le script include CdmQuery() pour récupérer une arborescence JSON. Par exemple : CdmQuery().mainId('123')/query().getTree() ;

    Type de données : chaîne

    main_id_encoded Représentation de la chaîne RADIX 57 du paramètre du nœud main_id .

    Type de données : chaîne

    nom Nom du nœud.

    Type de données : chaîne

    node_classifier Hiérarchie des classifieurs du nœud. Utilisez ces informations pour localiser un nœud dans la hiérarchie des dossiers.

    Par exemple, un élément déployable aurait une hiérarchie de /application/deployables/env :Development

    Alors qu’une collection aurait une hiérarchie de /applications/collections

    Type de données : chaîne

    node_path Nom complet du chemin d’accès du nœud.

    Type de données : chaîne

    position Position du nœud.
    Par exemple : si vous chargez le tableau suivant :
    arrayNode1: [
      "literal1", 
      {"cdi1": 1},
      "literal3"
    ]
    Les valeurs de position sont définies comme suit :
    • arrayNode1.literal1 = 1000
    • tableauNode1.2000 = 2000
    • arrayNode1.literal3 = 3000
    Si un objet complexe est téléchargé sous un tableau, dans ce cas {"cdi1 » : 1}, le point de terminaison crée un nouveau nœud virtuel dont le nom est égal à sa position. Dans l’exemple ci-dessus, il s’agit de 2000. Pour includes, la position est toujours vide.

    Type de données : chaîne

    previous_version Détails de la version précédente de l’enregistrement de nœud.
    Remarque :
    Si un nouveau nœud a été créé, le point de terminaison renvoie « previous_version » = null pour ce paramètre.

    Type de données : objet

    "previous_version": {
      "link": "String",
      "value": "String"
    }
    previous_version.value Sys_id de l’enregistrement de nœud. Situé dans la table Nœud CDM [sn_cdm_node].

    Type de données : chaîne

    reason_for_conflict Explication détaillée du conflit.

    Type de données : chaîne

    restricted_to Détails du groupe ayant accès au nœud associé.

    Type de données : objet

    "restricted_to": {
      "link": "String",
      "value": "String"
    }
    restricted_to.value Sys_id de l’enregistrement du groupe. Situé dans la table Groupe [sys_user_group CDM.

    Type de données : chaîne

    secure_value Si cette valeur a été marquée pour être sécurisée, le champ chiffré (retourné masqué).

    Un utilisateur doit disposer du rôle sn_cdm.cdm_secrets pour déchiffrer ces informations. Vous pouvez demander au point de terminaison de ne pas renvoyer ces champs en définissant le champ du paramètre de returnFields requête.

    Type de données : chaîne

    statut État du nœud.
    Valeurs possibles :
    • SUPPRIMÉ
    • NOUVEAU
    • REMPLACÉE
    • ACTUALISÉ
    • VALIDE

    Type de données : chaîne

    system_folder Marqueur indiquant si le nœud associé est un dossier système.
    Valeurs possibles :
    • true : le nœud est un dossier système.
    • false : le nœud n’est pas un dossier système.

    Type de données : booléennes

    sys_class_name Table dans laquelle réside le nœud.

    Type de données : chaîne

    sys_created_by Nom de l’utilisateur qui a créé le nœud.

    Type de données : chaîne

    sys_created_on Date et heure auxquelles le nœud a été créé.

    Type de données : chaîne

    Format : aaaa-mm-jj hh :mm :ss

    sys_id Sys_id du nœud. Situé dans la table Nœud CDM [sn_cdm_node].

    Type de données : chaîne

    sys_updated_by Nom de l’utilisateur qui a mis à jour le nœud.

    Type de données : chaîne

    sys_updated_on Date et heure auxquelles le nœud a été mis à jour pour la dernière fois.

    Type de données : chaîne

    Format : aaaa-mm-jj hh :mm :ss

    type
    Type de nœud.
    Valeurs possibles :
    • sn_cdm_node_cdi
    • sn_cdm_node_collection
    • sn_cdm_node_component
    • sn_cdm_node_folder
    • sn_cdm_node_variable

    Type de données : chaîne

    Par défaut : Toutes

    valide Valeur du nœud.

    Type de données : chaîne

    Demande cURL

    L’exemple de code suivant montre comment mettre à jour la valeur d’un nœud.

    curl "http://instance.servicenow.com/api/sn_cdm/editor/nodes?newValue=cdcdc&fullNamePath=%2FtestApp%2Fdeployables%2FDe
    velopment-1%2Fcdi45&changesetNumber=Chset-5" \
    --request PUT \
    --header "Accept:application/json" \
    --user 'username':'password'

    Renvoyer le résultat :

    { 
      "result": { 
        "changeset_id": { 
          "value": "d403648653b70110a1d3ddeeff7b12c5", 
          "link": "http://instance.servicenow.com/api/now/table/sn_cdm_changeset/d403648653b70110a1d3ddeeff7b12c5" 
        }, 
        "node_path": "!$!+!,![:", 
        "description": null, 
        "sys_updated_on": "2022-06-30 08:53:13", 
        "type": "sn_cdm_node_cdi", 
        "sys_class_name": "sn_cdm_node", 
        "sys_id": "c93c7c1753981110a1d3ddeeff7b12c7", 
        "sys_updated_by": "admin", 
        "previous_version": null, 
        "sys_created_on": "2022-06-30 08:53:13", 
        "value": null, 
        "effective_from": null, 
        "linked_to": null, 
        "sys_created_by": "admin", 
        "restricted_to": null, 
        "level": "3", 
        "conflict_type": null, 
        "main_id": "2869", 
        "effective_to": null, 
        "secure_value": "﷞﷟﷒113a0c6e53001110a1d3ddeeff7b121d﷬﷔1﷬﷭bAUA1wj-fxofbSrMyF-BAg==6qiho5f_9DhnuHT2Km5SLf0Ck4XNX_w=﷮﷯", 
        "node_classifier": "/application/deployables/env:Development", 
        "main_id_encoded": "[:", 
        "name": "cdi45", 
        "position": null, 
        "reason_for_conflict": null, 
        "system_folder": false, 
        "status": "new", 
        "conflict": false 
      } 
    }