API Engagement proactif

  • Rversion finale: Zurich
  • Mis à jour 31 juil. 2025
  • 5 minutes de lecture
  • L’API Engagement proactif fournit un point de terminaison pour créer des problèmes d’expérience numérique.

    Cette API est disponible en tant qu’API REST scriptée personnalisée. Il nécessite le module d’extension Engagement proactif (proactive-engagement) et le rôle sn_pren.experience_issue_create. Cette API appartient à l’espace de noms sn_pren .

    Utilisez l’API Engagement proactif pour créer un problème d’expérience lorsqu’un problème est détecté sur l’instance d’un utilisateur. Le problème d’expérience créé stimule l’engagement avec l’utilisateur et l’aide à résoudre lui-même le problème.

    Pour utiliser cette API, assurez-vous que les tables suivantes sont remplies d’enregistrements :

    • Modèle de registre des problèmes [sn_pren_issue_registry_template]
    • Registre des problèmes [sn_pren_issue_registry]
    • Résolution [sn_pren_resolution]
    • Contenu de la notification [sn_pren_notification_content]
    • Fournisseur [sn_pren_provider]

    Pour plus d'informations, voir Proactive Engagement

    Engagement proactif : CREATE /api/sn_pren/self_remediation/experience_issue/create

    Crée un problème d’expérience lorsqu’un problème est détecté sur le point de terminaison de l’utilisateur. Met à jour la table Problèmes d’expérience [sn_pren_experience_issue].

    Format d'URL

    URL par défaut : /api/sn_pren/self_remediation/experience_issue/create

    Paramètres de demande pris en charge

    Tableau 1. Paramètres de chemin d'accès
    Nom Description
    Aucun
    Tableau 2. Paramètres de requête
    Nom Description
    Aucun
    Tableau 3. Paramètres de corps de demande (XML ou JSON)
    Nom Description
    point de terminaison Requis. Élément de configuration (CI) et informations utilisateur utilisées pour détecter les détails du problème.
    Remarque :
    Tous les paramètres de cet objet sont facultatifs. Vous devez transmettre au moins un paramètre dans l’objet pour identifier l’utilisateur ou l’appareil.

    Type de données : objet

    "endpoint": {
      "CI": "String",
      "email": "String",
      "user_id": "String",
      "user_name": "String"
    }
    extrémité. CI Sys_id de l’appareil CI sur lequel le problème a été détecté.

    Type de données : chaîne

    Table : Ordinateur [cmdb_ci_computer]

    endpoint.email Adresse e-mail de l’utilisateur pour lequel le problème a été détecté.

    Type de données : chaîne

    endpoint.user_id Sys_id de l’utilisateur pour lequel le problème a été détecté.

    Type de données : chaîne

    Table : Utilisateur [sys_user]

    endpoint.user_name Nom d’utilisateur de l’utilisateur pour lequel le problème a été détecté.

    Type de données : chaîne

    Table : Utilisateur [sys_user]

    experience_id ID défini par l’utilisateur à affecter au problème créé.

    Type de données : nombre

    Par défaut : un ID est généré automatiquement.

    input_parameters Paramètres à transmettre à l’action qui sera exécutée sur l’appareil. Les paramètres d’entrée envoyés sont transmis à l’action de correction de résolution configurée, telle qu’un flux secondaire, une action de flux ou une action de CI.

    Type de données : objet

    "input_parameters": {
      "process_id": "String"
    }
    input_parameters.process_id Sys_id du processus à arrêter ou à redémarrer.

    Type de données : chaîne

    investigative_details Détails qui pourraient être utiles pour un examen manuel si la résolution de l’efficacité de l’utilisation de l’alimentation (PUE) échoue. Les détails de l’enquête sont copiés dans l’incident, qui est créé comme solution de secours en cas d’échec de la résolution PUE.

    Type de données : objet

    "investigative_details": {
      "cpu_usage": "String",
      "processes_running": "String",
      "available_memory": "String"
      }
    investigative_details.cpu_usage Utilisation du processeur sur l’appareil.

    Type de données : nombre (analysé comme une chaîne)

    investigative_details.processus_exécution Nombre de processus en cours d’exécution sur l’appareil.

    Type de données : nombre (analysé comme une chaîne)

    investigative_details.mémoire_disponible. Mémoire disponible sur l’appareil.

    Type de données : nombre (analysé comme une chaîne)

    issue_code Requis. Code du problème à associer au problème. Le code du problème doit être disponible et déployé dans l’instance. L’API renvoie une erreur si un problème vide ou non valide est fourni.

    Type de données : chaîne

    Tableau : Registre des problèmes [sn_pren_issue_registry]

    fournisseur Requis. Code unique pour le fournisseur. Ce code doit correspondre au provider_code champ de la table sn_pren_provider sur l’instance.

    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 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
    Type de contenu Format de données du corps de la demande. Types pris en charge : application/json ou application/xml.

    Valeur par défaut : application/json

    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.

    Code d'état Description
    200 Un problème d’expérience a été créé avec succès.
    400 Demande non valide. Fournir les détails du point de terminaison.

    Un objet vide endpoint a été envoyé dans la demande.

    400 Code de problème non valide, veuillez fournir un code de problème valide.

    Un élément vide issue_code a été envoyé dans la demande.

    400 Fournisseur non valide, veuillez fournir un fournisseur valide.

    Un fournisseur vide a été envoyé dans la demande.

    400 Code de problème ou fournisseur non valide, veuillez fournir des détails valides.

    Le problème ne peut pas être détecté dans l’instance. Vérifiez issue_code et provider détaillez.

    400 Le code du problème n’a pas une résolution appropriée.

    Une résolution valide n’est pas configurée dans le cadre de travail PUE pour le problème identifié.

    400 Impossible de résoudre l’utilisateur à partir des détails du point de terminaison, veuillez fournir des détails valides.

    Cette erreur est renvoyée si l’ID du cadre de travail PUE n’est pas en mesure d’identifier l’utilisateur à partir des détails de point de terminaison donnés.

    400 Un problème d’expérience est en cours de résolution avec le code de problème donné pour l’utilisateur spécifié.

    Le problème d’expérience spécifié est actuellement à l’état En cours ou Ouvert.

    400 Le problème d’expérience existant avec donné experience_id est toujours en cours d’exécution ou est fermé.

    Cette erreur se produit lorsqu’un problème d’expérience se trouve dans un scénario de chaînage. Par exemple, si une nouvelle issue_code clé est envoyée avec une clé existante et que le problème d’expérience antérieur experience_idest en cours d’exécution ou est à l’état Fermé.

    Le problème d’expérience avec cette experience_id doit être dans action_wait état pour envoyer une nouvelle issue_code avec la experience_id précédente.

    400 Une erreur s’est produite lors de la création du problème d’expérience.

    Cela indique une erreur technique.

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

    Nom Description
    experienceId ID d’expérience du problème d’expérience créé. Généré à partir du paramètre de experience_id demande.

    Si le paramètre n’est experience_id pas transmis, l’ID résultant est toujours l’sys_id de l’enregistrement créé.

    Table : Problèmes d’expérience [sn_pren_experience_issue]

    Demande cURL

    L’exemple suivant crée un problème d’expérience pour l’utilisateur Abel Tuter. Le code du problème dans le corps permet à Engagement proactif d’identifier la résolution à partir du modèle de registre des problèmes et de dialoguer avec l’utilisateur final via Agent virtuel pour l’aider à résoudre lui-même le problème.

    curl  "http://instance.servicenow.com//api/sn_srf/self_remediation/experience_issue/create" \
    --request POST \
    --header "Accept:application/json" \
    --user 'username':'password'
    --data “{
      "endpoint": {
        "CI": "d049b28e936aa1106f98f6db5cba10d5",
        "user_id": "62826bf03710200044e0bfc8bcbe5df1",
        "user_name": "abel.tuter",
        "email": ""
      },
      "issue_code": "100",
      "provider": "sn",
      "experience_id": "09ed4830f393739df33",
      "input_parameters": {
        "process_id": "10644"
      },
      "investigative_details": {
        "cpu usage": "78%",
        "processes running": "35",
        "available memory": "23%"
      }
    }”\
    

    Le corps de la réponse renvoie l’ID d’expérience, indiquant que la création du problème a réussi.

    { 
      "result": { 
        "experience_id": “09ed4830f393739df33”
      } 
    }