API de service d’application

  • Rversion finale: Xanadu
  • Mis à jour 1 août 2024
  • 19 minutes de lecture
  • L’API de service d’application fournit des points de terminaison qui vous permettent de créer, modifier et mettre à jour des services d’application.

    Cette API nécessite que l’utilisateur dispose du rôle d’administrateur du service d’application [app_service_admin].

    Important :
    À compter de la Rome publication, l’API du service d’application n’est plus améliorée ni prise en charge. Pour en savoir plus, consultez l'article Processus de retrait [KB0867184] dans la base de connaissances Now Support.

    Service d’application : GET /now/cmdb/app_service/{sys_id}/getContent

    Récupère une liste d’éléments de configuration (CI) dans un service d’application mappé et les relations entre eux. Récupère uniquement le contenu des services qui ont été créés manuellement.

    Format d'URL

    URL par défaut : /api/now/cmdb/app_service/{sys_id}/getContent

    Paramètres de demande pris en charge

    Tableau 1. Paramètres de chemin d'accès
    Nom Description
    sys_id Sys_id du service d’application mappé. Situé dans la table Service d’application mappé [cmdb_ci_service_discovered].

    Type de données : chaîne

    Tableau 2. Paramètres de requête
    Nom Description
    Mode Quantité de données de relation à renvoyer.
    Valeurs valides :
    • Peu profond : renvoyer les relations parents et enfants entre les CI au sein d’un service.
    • Complet : renvoie les attributs de CI et les informations de recherche en plus des données renvoyées en mode peu profond.
    Les valeurs ne sont pas sensibles à la casse.

    Type de données : chaîne

    Tableau 3. Paramètres de corps de demande (XML ou JSON)
    Nom Description
    Aucun

    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 la 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. Types pris en charge : application/json ou application/xml.

    Valeur par défaut : 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 la 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é.
    401 Non autorisé. Les informations d’identification de l’utilisateur sont incorrectes ou l’utilisateur n’a pas le rôle app_service_admin.
    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 (JSON ou XML)

    Nom Description
    cmdb Liste des objets qui décrivent les CI associés au service d’application spécifié.

    Type de données : objet

    "cmdb": [
      {
        "items": {Object},
        "relations": [Array]
      }
    ]
    éléments cmdb.éléments CI au sein du service d’application. Si le paramètre de requête complet a été transmis dans la demande, cette section inclut des attributs et des informations de recherche pour chaque CI.

    Type de données : tableau

    "items": [
      {
        "className": "String",
        "values": {Object}
      }
    ]
    cmdb.items.className Nom de la classe qui contient le CI.

    Type de données : chaîne

    cmdb.éléments.valeurs Informations à utiliser pour localiser un CI associé.

    Type de données : objet

    "values": {
      "name": "String",
      "sys_id": "String"
    }
    cmdb.items.values.name Nom du CI.

    Type de données : chaîne

    cmdb.items.values.sys_id Sys_id du CI.

    Type de données : chaîne

    cmdb.relations Données de relation pour les CI associés, tels que les hôtes et leurs enfants.

    Type de données : tableau

    service Liste des services associés au service identifié.

    Type de données : tableau

    "service": [
      {
        "name": "String",
        "service_relations": [Array],
        "url": "String"
      }
    ]
    service.name Nom du service d'application.

    Type de données : chaîne

    service.service_relations Données de hiérarchie pour les CI au sein du service d’application. Tous les CI forment des paires avec un CI parent et un CI enfant. Le CI de niveau supérieur, appelé point d’entrée d’un service d’application, n’a pas de CI parent.

    Type de données : tableau

    "service_relations": [
      {
        "child": "String",
        "parent": "String"
      }
    ]
    service.service_relations.enfant Nom d’un CI enfant lié au CI.

    Type de données : chaîne

    service.service_relations.parent Nom d’un CI parent lié au CI.

    Type de données : chaîne

    service.url Chemin d’accès relatif au service d’application.

    Type de données : chaîne

    Exemple de demande cURL

    curl "https://instance.servicenow.com/api/now/cmdb/app_service/2fce42d80a0a0bb4004af34d7e3984c8/getContent?mode=shallow" \
    --request GET \
    --header "Accept:application/json" \
    --user 'username':'password'
    {
      "service": {
        "name": "PeopleSoft Portals",
        "url": "/api/now/table/cmdb_ci_service_discovered/2fce42d80a0a0bb4004af34d7e3984c8",
        "service_relations": [
          {
            "parent": "",
            "child": "3a2810c20a0a0bb400268337d6e942ca"
          },
          {
            "parent": "3a27f1520a0a0bb400ecd6ff7afcf036",
            "child": "3a5dd3dbc0a8ce0100655f1ec66ed42c"
          },
          {
            "parent": "3a290cc60a0a0bb400000bdb386af1cf",
            "child": "3a307c930a0a0bb400353965d0b8861f"
          },
          {
            "parent": "3a172e820a0a0bb40034228e9f65f1be",
            "child": "3a27d4370a0a0bb4006316812bf45439"
          },
          {
            "parent": "",
            "child": "3a172e820a0a0bb40034228e9f65f1be"
          },
          {
            "parent": "",
            "child": "3a27f1520a0a0bb400ecd6ff7afcf036"
          },
          {
            "parent": "3a2810c20a0a0bb400268337d6e942ca",
            "child": "3a290cc60a0a0bb400000bdb386af1cf"
          }
        ]
      },
      "cmdb": {
        "relations": [],
        "items": [
          {
            "values": {
              "sys_id": "3a172e820a0a0bb40034228e9f65f1be",
              "name": "PS LoadBal01"
            },
            "className": "cmdb_ci_win_server"
          },
          {
            "values": {
              "sys_id": "3a2810c20a0a0bb400268337d6e942ca",
              "name": "PS Apache03"
            },
            "className": "cmdb_ci_web_server"
          },
          {
            "values": {
              "sys_id": "55b35562c0a8010e01cff22378e0aea9",
              "name": "ny8500-nbxs08"
            },
            "className": "cmdb_ci_netgear"
          },
          {
            "values": {
              "sys_id": "3a27f1520a0a0bb400ecd6ff7afcf036",
              "name": "PS Apache02"
            },
            "className": "cmdb_ci_web_server"
          },
          {
            "values": {
              "sys_id": "3a307c930a0a0bb400353965d0b8861f",
              "name": "PS ORA01"
            },
            "className": "cmdb_ci_database"
          }
        ]
      }
    }

    Service d’application : GET /now/cmdb/csdm/app_service/find_service

    Renvoie des informations de base sur un service d’application spécifié et son contexte professionnel associé.

    Remarque :
    Ce point de terminaison a été déconseillé, utilisez-le à la Services SG – POST – /sg_services/app_service/find place.

    Format d'URL

    URL par défaut : /api/now/cmdb/csdm/app_service/find_service

    Paramètres de demande pris en charge

    Tableau 7. Paramètres de chemin d'accès
    Nom Description
    Aucun
    Tableau 8. Paramètres de requête
    Nom Description
    nom Obligatoire, s’il number n’est pas transmis. Nom du service pour lequel renvoyer des informations. Situé dans la table Service d’application [cmdb_ci_service_auto].

    Type de données : chaîne

    Numéro Obligatoire, s’il name n’est pas transmis. Numéro unique qui identifie le service d’application pour lequel renvoyer des informations. Situé dans la table Service d’application [cmdb_ci_service_auto].

    Type de données : chaîne

    Tableau 9. Paramètres de corps de demande (XML ou JSON)
    Nom Description
    Aucun

    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 la 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 la 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é.
    401 Non autorisé. Les informations d’identification de l’utilisateur sont incorrectes ou l’utilisateur n’a pas le rôle app_service_admin.
    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 (JSON ou XML)

    Nom Description
    erreur Décrit une erreur rencontrée.

    Type de données : objet

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

    Type de données : chaîne

    message.erreur Message décrivant l’erreur.

    Type de données : chaîne

    services Tableau d’objets, chaque objet contenant les détails des services associés au service d’application spécifié.

    Type de données : tableau

    "services": [
      {
        "environment": "String",
        "name": "String",
        "number": "String",
        "relationships": {Object},
        "sys_id": "String",
        "version": "String"
      }
    ]
    services.environnement Environnement dans lequel le service d’application est déployé, tel que « Production » ou « Test Lab 2 ». Il peut s’agir de n’importe quelle valeur qui a du sens pour l’implémenteur.

    Type de données : chaîne

    Longueur maximale : 40

    Par défaut : null

    services.name Requis. Nom du service d'application. Il doit s’agir d’un nom unique provenant de tous les autres services d’application.

    Type de données : chaîne

    Longueur maximale : 255

    services.number Numéro unique qui identifie le service d’application. Cette valeur est initialement générée par le point de terminaison.

    Type de données : chaîne

    services.relations Types de services associés au service d’application.

    Type de données : objet

    "relationships": {
      "business_app": [Array],
      "business_service_offering": [Array],
      "technical_service_offering": [Array]
    }
    services.relationships.business_app Liste des sys_ids des applications d’entreprise liées au service d’application.

    Type de données : tableau

    services.relationships.technical_service_offering Liste des sys_ids des offres de service d’entreprise liées au service d’application.

    Type de données : tableau

    services.relationships.business_service_offering Liste des sys_ids des offres de service technique liées au service d’application.

    Type de données : tableau

    services.sys_id Sys_id du service d’application.

    Type de données : chaîne

    services.version Numéro de version du service d’application.

    Type de données : chaîne

    Longueur maximale : 40

    Format : définissable par l’utilisateur

    Par défaut : null

    Exemple de demande cURL

    curl -X GET \
      https://instance.servicenow.com/api/now/cmdb/csdm/app_service/find_service?name=Email_East&number=SNSVC0001018 \
      -H 'Accept: application/json' \
      -u 'username':'password'
    
    {
    "result": {
      "services": [
        {
          "name": "Email_East",
          "number": "SNSVC0001018",
          "sys_id": "f809cb60db94101037740f95ca96190f",
          "environment": "Production",
          "version": "1.1.1",
          "relationships": {
            "business_app": [
              "658c7620db54101037740f95ca9619f2"
            ],
            "technical_service_offering": [],
            "business_service_offering": [
              "069c7e20db54101037740f95ca9619bf"
            ]
          }
        }
      ]
     }
    }

    Service d’application : POST /now/cmdb/app_service/create

    Crée un service d’application ou met à jour un service d’application existant.

    Format d'URL

    URL par défaut : /api/now/cmdb/app_service/create

    Paramètres de demande pris en charge

    Tableau 13. Paramètres
    Paramètre Description
    Aucun

    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 la 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 14. En-têtes de demandes
    En-tête Description
    Accepter Format de données du corps de la réponse. Types pris en charge : application/json ou application/xml.

    Valeur par défaut : application/json

    Content-Type Format de données du corps de la demande. Types pris en charge : application/json ou application/xml.

    Valeur par défaut : application/json

    Tableau 15. En-têtes de réponses
    En-tête Description
    Aucun

    Codes d'état

    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 la 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. 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é.
    401 Non autorisé. Les informations d'identification de l'utilisateur sont incorrectes ou n'ont pas été transmises.

    Corps de la demande

    L’API accepte ces éléments JSON dans le corps de la demande. En outre, vous pouvez ajouter n’importe quel champ à partir de la table Service d’application mappé [cmdb_ci_service_discovered] pour transmettre des données à l’enregistrement de service d’application. Par exemple, pour ajouter du contenu au champ Commentaires, ajoutez « commentaires » : « transmission de données dans le champ Commentaires » à la demande JSON.

    Tableau 17. Éléments acceptés dans le corps de la demande
    Élément Description
    nom Nom du service d’application que vous souhaitez créer ou mettre à jour.
    service_relations Informations sur les CI et la hiérarchie qu’ils forment. Tous les CI forment des paires avec un CI parent et un CI enfant. Le CI de niveau supérieur, appelé point d’entrée d’un service d’application, n’a pas de CI parent.
    parent Sys_ ID du CI dont la connexion sortante joint ce CI au CI de niveau inférieur de la hiérarchie de carte.
    enfant Sys_'ID du CI dont la connexion entrante joint ce CI au CI situé au niveau supérieur de la hiérarchie de la carte.

    Corps de réponse

    L’API renvoie ces éléments JSON dans le corps de la réponse.

    Tableau 18. Éléments renvoyés dans le corps de réponse
    Élément Description
    URL URL de la table standard API REST pour afficher le sys_id d’un enregistrement de service d’application.

    Cet élément s’affiche uniquement si le point de terminaison réussit.

    Type de données : chaîne

    getContentUrl Chemin d’accès de l’API REST pour obtenir le contenu du service d’application.

    Cet élément s’affiche uniquement si le point de terminaison réussit.

    Type de données : chaîne

    infos Nombre de CI ajoutés au service d’application.

    Cet élément s’affiche uniquement si le point de terminaison réussit.

    Type de données : chaîne

    erreur Détails du message d’erreur.

    Cet élément s’affiche uniquement en cas d’échec du point de terminaison.

    Type de données : objet

    message Message d’erreur décrivant la nature de la défaillance.

    Cet élément s’affiche uniquement en cas d’échec du point de terminaison.

    Type de données : chaîne

    statut Déclare « échec » en cas d’échec de l’API REST.

    Cet élément s’affiche uniquement en cas d’échec du point de terminaison.

    Type de données : chaîne

    Exemple de demande cURL

    curl "http://<instance.servicenow.com>/api/now/cmdb/app_service/create" \
    --request POST \
    --header "Accept:application/json" \
    --header "Content-Type:application/json" \
    --data "{
    \"name\": \"myTestAppService\",
    \"comments\": \"Passing data to the Comments field\",
    \"service_relations\": [
    { \"parent\": \"\",
    \"child\": \"3a70f789c0a8ce010091b0ea635b982a\"
    },{ \"parent\": \"3a70f789c0a8ce010091b0ea635b982a\",
    \"child\": \"b4fd7c8437201000deeabfc8bcbe5dc1\"
    },{ \"parent\": \"b4fd7c8437201000deeabfc8bcbe5dc1\",
    \"child\": \"53fdbc8437201000deeabfc8bcbe5d10\"
    }
    ]
    }" \
    --user 'admin':'admin'
    {
      "result": {
        "url": "/api/now/table/cmdb_ci_service_discovered/b1cff89fc9e19300964fcbb1ac3059a5",
        "getContentUrl": "/api/now/cmdb/app_service/b1cff89fc9e19300964fcbb1ac3059a5/getContent",
        "info": "3 CIs added to service"
      }
    }

    Service d’application : POST /now/cmdb/csdm/app_service/register_service

    Crée un talon d’enregistrement de service d’application dans la table [cmdb_ci_service_auto] de service d’application et le renseigne avec les informations transmises.

    Avant de stocker l’enregistrement, il valide les paramètres transmis et l’unicité du nom du service d’application. Elle crée également des relations en amont qui fournissent un contexte professionnel au service en associant les applications d’entreprise, les offres de service d’entreprise et les offres de service technique spécifiées à l’application de service. Il ne crée pas de relations en aval avec l’infrastructure. Pour définir les relations en aval, vous devez appeler le point de terminaison Service d’application - PUT /now/cmdb/csdm/app_service/{service_sys_id}/populate_service .
    Remarque :
    Ce point de terminaison a été déconseillé, utilisez-le à la Services SG – POST – /sg_services/app_service/register place.

    Format d'URL

    URL par défaut : /api/now/cmdb/csdm/app_service/register_service

    Paramètres de demande pris en charge

    Tableau 19. Paramètres de chemin d'accès
    Nom Description
    Aucun
    Tableau 20. Paramètres de requête
    Nom Description
    Aucun
    Tableau 21. Paramètres du corps de la demande
    Nom Description
    basic_details Requis. Détails du service associé au service d’application spécifié.

    Type de données : objet

    "basic_details": {
      "environment": "String",
      "name": "String",
      "version": "String"
    }
    basic_details.environnement Environnement dans lequel le service d’application est déployé, tel que « Production » ou « Test Lab 2 ». Il peut s’agir de n’importe quelle valeur qui a du sens pour l’implémenteur.

    Type de données : chaîne

    Longueur maximale : 40

    Par défaut : null

    basic_details.name Requis. Nom du service d'application. Il doit s’agir d’un nom unique provenant de tous les autres services d’application.

    Type de données : chaîne

    Longueur maximale : 255

    basic_details.version Numéro de version du service d’application.

    Type de données : chaîne

    Longueur maximale : 40

    Format : définissable par l’utilisateur

    Par défaut : null

    Relations Types de services en amont (parents) à associer au service d’application. Ces relations sont stockées dans la table Relations CI [cmdb_rel_ci].

    Type de données : objet

    "relationships": {
      "business_app": [Array],
      "business_service_offering": [Array],
      "technical_service_offering": [Array]
    }
    relationships.business_app Liste des sys_ids des applications d’entreprise à associer au service d’application.

    Type de données : tableau

    relationships.business_service_offering Liste des sys_ids des offres de service d’entreprise à associer au service d’application.

    Type de données : tableau

    relationships.technical_service_offering Liste des sys_ids des offres de service technique à associer au service d’application.

    Type de données : tableau

    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 la 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 la 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
    201 Réussi. Le service d’application a été enregistré avec succès.
    400 Demande incorrecte. Un type de demande incorrecte ou mal formé a été détecté.
    401 Non autorisé. Les informations d’identification de l’utilisateur sont incorrectes ou l’utilisateur n’a pas le rôle app_service_admin.
    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 (JSON ou XML)

    Nom Description
    erreur Décrit une erreur rencontrée.

    Type de données : objet

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

    Type de données : chaîne

    message.erreur Message décrivant l’erreur.

    Type de données : chaîne

    Numéro Numéro unique qui identifie le service d’application. Ce numéro est généré par le point de terminaison.
    service_sys_id Sys_id du service d’enregistrement des demandes.

    Exemple de demande cURL

    curl -X POST \
      https://instance.servicenow.com/api/now/cmdb/csdm/app_service/register_service \
      -H 'Accept: application/json' \
      -H 'Content-Type: application/json' \
      -u 'username':'password'
      -d '{
      "basic_details": {
        "environment": "Test Lab 2",
        "name": "Test Lab 2",
        "version": "1.1.1"
      },
      "relationships": {
        "business_app":["f07c7620db54101037740f95ca96199a"],
        "business_service_offering":["069c7e20db54101037740f95ca9619bf"]
      }
    }'
    {
      "result": {
        "service_sys_id": "80f21bbadbd410103d3a93c3e296199a",
        "number": "SNSVC0001018    
        }
    }

    Service d’application : PUT /now/cmdb/csdm/app_service/{service_sys_id}/populate_service

    Renseigne le service d’application spécifié avec un ensemble spécifié d’éléments de configuration (CI) en aval.

    Avant d’appeler ce point de terminaison, vous devez appeler le point de terminaison POST /now/cmdb/csdm/app_service/register_service pour créer le service d’application.
    Remarque :
    Ce point de terminaison a été déconseillé, utilisez-le à la Services SG – POST – /sg_services/app_service/remplir place.

    Format d'URL

    URL par défaut : /api/now/cmdb/csdm/app_service/{service_sys_id}/populate_service

    Paramètres de demande pris en charge

    Tableau 25. Paramètres de chemin d'accès
    Nom Description
    service_sys_id Sys_id du service d’application à renseigner avec les CI spécifiés. Situé dans la table Service d’application [cmdb_ci_service_auto].

    Type de données : chaîne

    Tableau 26. Paramètres de requête
    Nom Description
    Aucun
    Tableau 27. Paramètres de corps de demande (XML ou JSON)
    Nom Description
    population_method CI à associer au service d’application spécifié. Les éléments de l’objet populate_method dépendent du type d’information renseigné, défini par le type paramètre.

    Type de données : objet

    Pour type = cmdb_group_based

    {
      "population_method": {
        "group_id": "String",
        "type": "String"
      }
    }
    Pour type = découverte
    Remarque :
    Pour utiliser ce type, vous devez activer le module d’extension Mappage des services (com.snc.service-mapping).
    {
      "population_method": {
        "attributes": [Array],
        "entry_point_id": "String",
        "type":"String"
      }
    }
    Pour type = tag_list
    Remarque :
    Pour utiliser ce type, vous devez activer le module d’extension Mappage des services (com.snc.service-mapping).
    {
      "population_method": {
        "tags":[Array],
        "type":"String"  }
    }
    population_method.attributs Liste des attributs à associer au CI, tels que l’hôte, le port, le nom et l’URL.

    Pour plus d’informations sur les points d’entrée, reportez-vous à la rubrique Attributs de points d’entrée.

    Remarque :
    Vous devez transmettre tous les attributs requis.

    Type de données : tableau

    {
      "attributes": {
        "name":"String",
        "value":"String"
      }
    }
    population_method.attributes.name Nom de l’attribut, tel que l’hôte, le port, le nom et l’URL.

    Type de données : chaîne

    population_method.attributes.value Valeur d’attribut.

    Type de données : chaîne

    population_method.entry_point Requis si population_method.type = découverte. Point d’entrée dans le service d’application. Pour plus d’informations sur les points d’entrée, consultez Attributs de points d’entrée et Créer des types de points d’entrée pour Mappage des services.

    Type de données : chaîne

    population_method.group_id Obligatoire si population_method.type = cmdb_group_based. Sys_id du groupe à associer au CI. Situé dans la table Groupe [cmdb_group] CMDB.

    Type de données : chaîne

    population_method.balises Liste des balises à associer au CI. Ces informations figurent dans la table Valeurs de clé [cmdb_key_value}.

    Type de données : tableau

    {
      "tags": {
        "tag": "String",
        "value": "String"
      }
    }
    population_method.tags.tag Nom de la balise.

    Type de données : chaîne

    population_method.balises.valeur Valeur de la balise.

    Type de données : chaîne

    population_method.type Requis. Type de CI à renseigner.
    Valeurs valides :
    • cmdb_group_based
    • détection
    • tag_list

    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 la 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 la 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.
    401 Non autorisé. Les informations d’identification de l’utilisateur sont incorrectes ou l’utilisateur n’a pas le rôle app_service_admin.
    500 Erreur interne du serveur. Une erreur inattendue s'est produite lors du traitement de la demande.

    Paramètres du corps de réponse (JSON ou XML)

    Nom Description
    erreur Décrit une erreur rencontrée.

    Type de données : objet

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

    Type de données : chaîne

    message.erreur Message décrivant l’erreur.

    Type de données : chaîne

    Exemple de demande cURL

    L’exemple de code suivant montre comment renseigner un service d’application lorsque le type de CI est cmdb_group_based.

    curl -X PUT \
      https://instance.servicenow.com/api/now/cmdb/csdm/app_service/f809cb60db94101037740f95ca96190f/populate_service \
      -H 'Accept: application/json' \
      -H 'Content-Type: application/json' \
      -u 'username':'password' \
      -d '{
      "population_method": {
        "type":"cmdb_group_based",
        "group_id": "e809cf60db94101037640f95ca961932"
      }
    }'
    {
        "result": {}
    }

    L’exemple de code suivant montre comment renseigner un service d’application de détection.

    curl -X PUT \
      https://instance.servicenow.com/api/now/cmdb/csdm/app_service/f809cb60db94101037740f95ca96190f/populate_service \
      -H 'Accept: application/json' \
      -H 'Content-Type: application/json' \
      -u 'username':'password' \
      -d '{
      "population_method": {
        "type":"discovery",
        "entry_point_id":"cmdb_ci_endpoint_ad_forest",
        "attributes": [
          {
            "name":"host",
            "value":"test1.com"
          },
          {
            "name":"port",
            "value":"500"
          },
          {
            "name":"protocol",
            "value":"ssh"
          }
        ]
      }
    }'
    {
        "result": {}
    }

    Service d’application : PUT /now/cmdb/csdm/app_service/{service_sys_id}/service_details

    Met à jour le service d’application spécifié avec les informations de base transmises.

    Il valide également le caractère unique du service d’application en vérifiant les informations transmises par rapport aux règles du moteur Identification et réconciliation (IRE) définies sur la classe de service d’application.
    Remarque :
    Ce point de terminaison a été déconseillé, utilisez-le à la Services SG – POST – /sg_services/app_service/update place.

    Format d'URL

    URL par défaut : /api/now/cmdb/csdm/app_service/{service_sys_id}/service_details

    Paramètres de demande pris en charge

    Tableau 31. Paramètres de chemin d'accès
    Nom Description
    service_sys_id Sys_id du service d’application à mettre à jour. Situé dans la table Service d’application [cmdb_ci_service_auto].

    Type de données : chaîne

    Tableau 32. Paramètres de requête
    Nom Description
    Aucun
    Tableau 33. Paramètres de corps de demande (XML ou JSON)
    Nom Description
    basic_details Détails du service associé au service d’application spécifié.

    Type de données : objet

    "basic_details": {
      "environment": "String",
      "name": "String"
    }
    basic_details.environnement Environnement dans lequel le service d’application est déployé, tel que « Production » ou « Test Lab 2 ». Il peut s’agir de n’importe quelle valeur qui a du sens pour l’implémenteur.

    Type de données : chaîne

    Longueur maximale : 40

    Par défaut : null

    basic_details.name Requis. Nom du service d'application. Il doit s’agir d’un nom unique provenant de tous les autres services d’application.

    Type de données : chaîne

    Longueur maximale : 255

    Relations Types de services à associer au service d’application. Situé dans la table Relations CI [cmdb_rel_ci].

    Type de données : objet

    "relationships": {
      "business_app": [Array],
      "business_service_offering": [Array],
      "technical_service_offering": [Array]
    }
    relationships.business_app Liste des sys_ids des applications d’entreprise à associer au service d’application.

    Type de données : tableau

    relationships.business_service_offering Liste des sys_ids des offres de service d’entreprise à associer au service d’application.

    Type de données : tableau

    relationships.technical_service_offering Liste des sys_ids des offres de service technique à associer au service d’application.

    Type de données : tableau

    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 la 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 la 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.
    401 Non autorisé. Les informations d’identification de l’utilisateur sont incorrectes ou l’utilisateur n’a pas le rôle app_service_admin.

    Paramètres du corps de réponse (JSON ou XML)

    Nom Description
    erreur Décrit une erreur rencontrée.

    Type de données : objet

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

    Type de données : chaîne

    message.erreur Message décrivant l’erreur.

    Type de données : chaîne

    Exemple de demande cURL

    curl -X PUT \
      https://instance.servicenow.com/api/now/cmdb/csdm/app_service/f809cb60db94101037740f95ca96190f/service_details \
      -H 'Accept: application/json' \
      -H 'Content-Type: application/json' \
      -u 'username':'password' \
      -d '{
      "basic_details": {
        "environment": "Test Lab 2"
      },  "relationships": {
        "business_app" :["f07c7620db54101037740f95ca96199a"]
      }
    }'
    {
        "result": {}
    }