API de l’agent AWA

  • Rversion finale: Xanadu
  • Mis à jour 1 août 2024
  • 22 minutes de lecture
  • L’API AWA (Advanced Work Assignment) Agent fournit des points de terminaison pour gérer la présence de l’agent, la disponibilité des canaux et la charge de travail.

    Cette API nécessite le module d’extension Affectation de travail avancée (com.glide.awa) et le rôle awa_integration_user. Pour plus d’informations, reportez-vous à Affectation de travail avancée.

    AWA Agent : GET /now/awa/agents/{user_id}

    Renvoie l’état actuel de présence de l’agent et la disponibilité du canal.

    Format d'URL

    URL versionnée : /api/now/{api_version}/awa/agents/{user_id}

    URL par défaut : /api/now/awa/agents/{user_id}

    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

    user_id Sys_id de l’élément de travail répertorié dans la table Élément de travail AWA [awa_work_item].
    L’élément de travail doit répondre aux critères suivants :
    • L’élément de travail doit être affecté à l’agent spécifié.
    • L’élément de travail doit être dans l’état En attente d’acceptation .

    Type de données : chaîne

    Tableau 2. Paramètres de requête
    Nom Description
    Aucun
    Tableau 3. Paramètres de corps de demande (XML ou JSON)
    En-tête Description
    presence.channels.available Marqueur indiquant si le canal est disponible.
    Valeurs possibles :
    • true : le canal est disponible.
    • false : le canal n’est pas disponible.

    Type de données : booléennes

    presence.channels.sys_id Canal sys_id. Situé dans la table Canaux de service [awa_service_channel].

    Type de données : chaîne

    presence.sys_id État de présence sys_id. Situé dans la table États de présence [awa_presence_state].

    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

    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 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 n'ont pas été transmises.
    403 Interdit.
    Raisons possibles :
    404 Introuvable. L’élément demandé est introuvable.
    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)

    Tableau 7. Paramètres du corps de réponse (JSON ou XML)
    Paramètre Description
    erreur Détails décrivant une erreur rencontrée au cours du processus de demande.

    Type de données : objet

    "error": {
      "detail": "String",
      "message": "String"
    }
    error.detail Détails de l’erreur rencontrée au cours du processus de demande.

    Type de données : chaîne

    message.erreur Message de l’erreur rencontrée pendant le processus de demande. Chaque message d’erreur a une description correspondante dans la detail propriété.
    Valeurs possibles :
    • Enregistrement introuvable : les informations fournies dans le corps de la demande sont inexactes ou n’existent pas.
    • Utilisateur non authentifié : l’utilisateur n’a pas le rôle awa_integration_user.

    Type de données : chaîne

    presence Informations sur la présence, l’état et le canal actuels d’un agent.

    Type de données : objet

    "presence": {
      "available": Boolean,
      "channels": [Array],
      "name": "String",
      "sys_id": "String"
    }
    presence.available Marqueur indiquant si l’agent est disponible.
    Valeurs possibles :
    • true : l’agent est disponible.
    • faux : l’agent n’est pas disponible.

    Type de données : booléennes

    presence.channels Liste des objets qui décrivent les canaux de communication disponibles avec l’agent.

    Type de données : tableau

    "channels": [
     {
      "available": Boolean,
      "name": "String",
      "sys_id": "String"
     }
    ]
    presence.channels.available Marqueur indiquant si le canal est disponible.
    Valeurs possibles :
    • true : le canal est disponible.
    • false : le canal n’est pas disponible.

    Type de données : booléennes

    presence.channels.name Nom du canal, par exemple Messagerie instantanée ou Téléphone.

    Type de données : chaîne

    presence.channels.restrict_update Marqueur indiquant si l’utilisateur peut restreindre les mises à jour, c’est-à-dire sélectionner le canal pour vérifier la disponibilité.
    Valeurs possibles :
    • vrai : l’utilisateur peut sélectionner ce canal pour vérifier sa disponibilité.
    • false : l’utilisateur ne peut pas sélectionner ce canal pour la disponibilité.

    Type de données : booléennes

    presence.channels.service_channel_type Type de canal de service, tel que messagerie instantanée. Les valeurs possibles varient en fonction des modules d’extension installés.

    Type de données : chaîne

    presence.channels.sys_id Canal sys_id. Situé dans la table Canaux de service [awa_service_channel].

    Type de données : chaîne

    presence.name Nom de l’état de présence de l’agent.
    Valeurs possibles :
    • Disponible
    • Non disponible

    Type de données : chaîne

    presence.restrict_update Marqueur indiquant si l’utilisateur peut restreindre les mises à jour.
    Valeurs possibles :
    • true : l’utilisateur peut restreindre les mises à jour.
    • false : l’utilisateur ne peut pas restreindre les mises à jour.

    Type de données : booléennes

    presence.sys_id État de présence sys_id. Situé dans la table États de présence [awa_presence_state].

    Type de données : chaîne

    statut Statut d’une demande ayant échoué. Cette propriété n’est incluse dans la réponse qu’en cas d’erreur.

    Valeur valide : échec

    Type de données : chaîne

    sys_id sys_id de l’agent.

    Type de données : chaîne

    workItem

    workItem: informations sur l’élément de travail associé à l’événement.

    Élément de travail.document workItem.document: liste des documents associés à la tâche d’élément de travail.
    workItem.document.sys_id workItem.document.sys_id: Sys_id du document affecté à la tâche d’élément de travail.
    Élément de travail.document.table workItem.document.table: nom de la table de documents affectée à la tâche.
    Élément de travail.précédentÉlément de travail workItem.previousWorkItem: Sys_id de l’élément de travail précédent pour le même ID de document. Pour les éléments de travail sans transfert, cette valeur est vide.
    Élément de travail.serviceChannel workItem.serviceChannel: liste des canaux de service associés à la tâche d’élément de travail.
    workItem.serviceChannel.name workItem.serviceChannel.name: nom du canal de service, par exemple Messagerie instantanée ou Téléphone.
    workItem.serviceChannel.sys_id workItem.serviceChannel.sys_id: Sys_id du canal de service.
    Élément de travail.taille workItem.size: capacité de l’agent utilisée lorsque cet élément de travail est affecté à l’agent.
    workItem.sys_id workItem.sys_id: Sys_id de l’élément de travail qui a été accepté ou proposé.
    Élément de travail.isQueueTransféré workItem.isQueueTransferred: indique si l’élément de travail est transféré dans la file d’attente. Défini sur vrai si l’élément de travail est transféré dans la file d’attente, sur faux s’il ne l’est pas. Pour plus d’informations sur les transferts de file d’attente, reportez-vous à la section Transfer a chat to another queue.

    Exemple de demande cURL

    curl -X GET \
    https://instance.servicenow.com/api/now/awa/agents/46d44a23a9fe19810012d100cca80666 \
    -H 'Accept: application/json' \
    -H 'Content-Type: application/json' \
    -u 'username':'password'\
    {
      "result": {
        "presence": {
          "name": "Available",
          "sys_id": "0b10223c57a313005baaaa65ef94f970",
          "available": true,
          "channels": [
            {
              "name": "Chat",
              "available": true,
              "sys_id": "27f675e3739713004a905ee515f6a7c3"
            }
          ]
        },
        "sys_id": "46d44a23a9fe19810012d100cca80666"
      }
    }

    AWA Agent : GET /now/awa/agents/{user_id}/capacities

    Renvoie les capacités du canal d’un agent, l’aptitude universelle et la charge de travail actuelle pour voir si l’agent peut gérer un ticket.

    Utilisez la AWA Agent : PUT /now/awa/agents/{user_id}/capacities méthode pour modifier le canal et les capacités universelles d’un agent.

    Format d'URL

    URL versionnée : /api/now/{api_version}/awa/agents/{user_id}/capacities

    URL par défaut : /api/now/awa/agents/{user_id}/capacities

    Paramètres de demande pris en charge

    Tableau 8. 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

    user_id Sys_id de l’agent répertorié dans la table Utilisateur [sys_user].

    Type de données : chaîne

    Tableau 9. Paramètres de requête
    Nom Description
    Aucun
    Tableau 10. 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 11. 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 12. 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 13. 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.
    403 Interdit.
    Raisons possibles :
    404 Introuvable. L’élément demandé est introuvable.
    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
    Canaux Liste des objets qui décrivent les canaux de communication disponibles avec l’agent.
    "channels": [
      {
        "channel_sys_id": "String",
        "current_workload": Number,
        "max_capacity": Number
      }
    ]

    Type de données : tableau

    channels.channel_sys_id Canal sys_id. Situé dans la table Canaux de service [awa_service_channel].

    Type de données : chaîne

    channels.current_workload Nombre d’éléments de travail sur un canal de service spécifique actuellement affectés à l’agent.

    Type de données : nombre

    channels.max_capacité Charge de travail maximale sur un canal de service spécifique auquel l’agent peut être activement affecté à la fois.

    Type de données : chaîne

    erreur Détails décrivant une erreur rencontrée au cours du processus de demande.

    Type de données : objet

    "error": {
      "detail": "String",
      "message": "String"
    }
    error.detail Détails de l’erreur rencontrée au cours du processus de demande.

    Type de données : chaîne

    message.erreur Message de l’erreur rencontrée pendant le processus de demande. La description est fournie dans la error.detail propriété.

    Type de données : chaîne

    statut Statut d’une demande ayant échoué. Cette propriété n’est incluse dans la réponse qu’en cas d’erreur.

    Valeur valide : échec

    Type de données : chaîne

    universal_capacity Capacité maximale de l’agent sur tous les canaux de service. Si la charge de travail actuelle d’un agent est égale à la capacité universelle maximale, les éléments de travail supplémentaires ne lui sont pas affectés.

    Cette propriété est uniquement renvoyée si un enregistrement de capacité universelle existe pour cet agent.

    Type de données : nombre

    universal_workload Nombre d’éléments de travail dans tous les canaux de service actuellement affectés à l’agent spécifié.

    Cette propriété est renvoyée uniquement si un enregistrement de capacité universelle existe pour l’agent.

    Type de données : nombre

    Exemple de demande cURL

    L’exemple suivant montre comment obtenir les valeurs de capacité et de charge de travail pour un utilisateur.

    curl "https://instance.service-now.com/api/now/awa/agents/46d44a23a9fe19810012d100cca80666/capacities" \
    --request GET \
    --header "Accept:application/json" \
    --user 'username':'password'

    Une réponse réussie inclut des valeurs de capacité et une charge de travail pour chaque canal.

    {
      "result": {
        "universal_workload": 2,
        "channels": [
          {
            "channel_sys_id": "27f675e3739713004a905ee515f6a7c3",
            "current_workload": 2,
            "max_capacity": 4
          }
        ],
        "universal_capacity": 10
      }
    }

    AWA Agent : GET /now/awa/agents/{user_id}/presence_states

    Renvoie les états de présence d’un agent et indique si l’agent est disponible ou dans un autre état de présence.

    Format d'URL

    URL versionnée : /api/now/{api_version}/awa/agents/{user_id}/presence_states

    URL par défaut : /api/now/awa/agents/{user_id}/presence_states

    Paramètres de demande pris en charge

    Tableau 14. 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

    user_id Sys_id de l’agent répertorié dans la table Utilisateur [sys_user].

    Type de données : chaîne

    Tableau 15. Paramètres de requête
    Nom Description
    Aucun
    Tableau 16. 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 17. 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 18. 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 19. 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.
    403 Interdit.
    Raisons possibles :
    404 Introuvable. L’élément demandé est introuvable.
    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étails décrivant une erreur rencontrée au cours du processus de demande.

    Type de données : objet

    "error": {
      "detail": "String",
      "message": "String"
    }
    error.detail Détails de l’erreur rencontrée au cours du processus de demande.

    Type de données : chaîne

    message.erreur Message de l’erreur rencontrée pendant le processus de demande. La description est fournie dans la error.detail propriété.

    Type de données : chaîne

    <état de présence> Liste des définitions d’état de présence de l’agent en tant qu’objets. Chaque objet décrit l’état et inclut les canaux de l’agent.

    Type de données : tableau

    {
      "available": Boolean,
      "channels": [Array],
      "disable_inactivity_check": Boolean,
      "name": "String",
      "show_channels": Boolean,
      "sys_id": "String"
    }
    <état de présence>.available Marqueur indiquant si l’agent est disponible.
    Valeurs possibles :
    • true : l’agent est disponible.
    • faux : l’agent n’est pas disponible.

    Type de données : booléennes

    <état de présence>.channels Liste des objets qui décrivent les canaux de communication disponibles avec l’agent.

    Type de données : tableau

    "channels": [
     {
      "available": Boolean,
      "name": "String",
      "restrict_update": Boolean,
      "service_channel_type": "String",
      "sys_id": "String"
     }
    ]
    <état de présence>.canaux.disponibles Marqueur indiquant si le canal est disponible.
    Valeurs possibles :
    • true : le canal est disponible.
    • false : le canal n’est pas disponible.

    Type de données : booléennes

    <état de présence>.channels.name Nom du canal, par exemple Messagerie instantanée ou Téléphone.

    Type de données : chaîne

    <état de présence>.channels.sys_id Canal sys_id. Situé dans la table Canaux de service [awa_service_channel].

    Type de données : chaîne

    <état de présence>.disable_inactivity_check Marqueur indiquant s’il faut vérifier l’inactivité de cet état de présence.
    Valeurs valides :
    • true : la vérification d’inactivité de l’état de présence est désactivée.
    • false : la vérification d’inactivité de l’état de présence est activée.

    Type de données : booléennes

    Valeur par défaut : false

    Pour en savoir plus sur la modification de ce paramètre, reportez-vous à la section Configurer les états de présence de l’agent.

    <état de présence>.name Nom de l’état de présence de l’agent. Les états de présence installés par défaut sont Disponible, Absent et Hors ligne.

    Type de données : chaîne

    <état de présence>.order Ordre dans lequel cet état est affiché dans la boîte de réception de l’agent.

    Type de données : nombre

    <état de présence>.show_channels Marqueur indiquant si l’agent a l’autorisation de changer l’état de présence, par exemple, de Disponible à Absent.
    Valeurs valides :
    • true : l’utilisateur a l’autorisation de modifier la présence.
    • false : l’utilisateur n’est pas autorisé à modifier la présence.

    Type de données : booléennes

    <état de présence>.sys_id État de présence sys_id. Situé dans la table États de présence [awa_presence_state].

    Type de données : chaîne

    statut Statut d’une demande ayant échoué. Cette propriété n’est incluse dans la réponse qu’en cas d’erreur.

    Valeur valide : échec

    Type de données : chaîne

    Exemple de demande cURL

    L’exemple suivant montre comment obtenir les états de présence d’un agent spécifié.

    curl "https://instance.service-now.com/api/now/awa/agents/46d44a23a9fe19810012d100cca80666/presence_states" \
    --request GET \
    --header "Accept:application/json" \
    --user 'username':'password'

    Le corps de la réponse répertorie les états de présence possibles de l’agent et indique que l’agent est disponible.

    {
      "result": [
        {
          "name": "Available",
          "order": 0,
          "show_channels": false,
          "sys_id": "0b10223c57a313005baaaa65ef94f970",
          "available": true,
          "channels": [
            {
              "name": "Chat",
              "available": true,
              "sys_id": "27f675e3739713004a905ee515f6a7c3",
              "restrict_update": false,
              "service_channel_type": "chat"
            }
          ],
          "disable_inactivity_check": false
        },
        {
          "name": "Away",
          "order": 1000,
          "show_channels": false,
          "sys_id": "41f9b8dfb31313005baa6e5f26a8dcac",
          "available": false,
          "channels": [],
          "disable_inactivity_check": false
        },
        {
          "name": "Offline",
          "order": 2000,
          "show_channels": false,
          "sys_id": "9cd83267575313005baaaa65ef94f98b",
          "available": false,
          "channels": [],
          "disable_inactivity_check": false
        }
      ]
    }

    AWA Agent : PUT /now/awa/agents/{user_id}

    Définit l’état de présence d’un agent spécifié et, le cas échéant, définit la disponibilité du canal de l’agent pour cet état.

    Format d'URL

    URL versionnée : /api/now/{api_version}/awa/agents/{user_id}

    URL par défaut : /api/now/awa/agents/{user_id}

    Paramètres de demande pris en charge

    Tableau 20. 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

    user_id Sys_id de l’agent. Situé dans la table Utilisateur [sys_user].

    Type de données : chaîne

    Tableau 21. Paramètres de requête
    Nom Description
    Aucun
    Tableau 22. Paramètres de corps de demande (XML ou JSON)
    Nom Description
    presence.channels Liste des objets qui définissent les canaux disponibles pour l’agent.
    Type de données : tableau
    "channels": [
      { 
        "available": Boolean,
        "sys_id": "String"
      }
    ] 
    presence.channels.available Marqueur indiquant si le canal est disponible.
    Valeurs possibles :
    • true : le canal est disponible.
    • false : le canal n’est pas disponible.
    Remarque :
    Ce paramètre doit être spécifié pour inclure des canaux dans le corps de la réponse.

    Type de données : booléennes

    Valeur par défaut : false

    presence.channels.sys_id Canal sys_id. Situé dans la table Canaux de service [awa_service_channel].

    Type de données : chaîne

    presence.sys_id État de présence sys_id. Situé dans la table États de présence [awa_presence_state].

    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 23. 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 24. 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 25. 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.
    403 Interdit.
    Raisons possibles :
    404 Introuvable. L’élément demandé est introuvable.
    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.
    Tableau 26. Paramètres du corps de réponse (JSON ou XML)
    Paramètre Description
    erreur Détails décrivant une erreur rencontrée au cours du processus de demande.

    Type de données : objet

    "error": {
      "detail": "String",
      "message": "String"
    }
    error.detail Détails de l’erreur rencontrée au cours du processus de demande.

    Type de données : chaîne

    message.erreur Message de l’erreur rencontrée pendant le processus de demande. Chaque message d’erreur a une description correspondante dans la detail propriété.
    Valeurs possibles :
    • Enregistrement introuvable : les informations fournies dans le corps de la demande sont inexactes ou n’existent pas.
    • Utilisateur non authentifié : l’utilisateur n’a pas le rôle awa_integration_user.

    Type de données : chaîne

    presence Informations sur la présence, l’état et le canal actuels d’un agent.

    Type de données : objet

    "presence": {
      "available": Boolean,
      "channels": [Array],
      "name": "String",
      "sys_id": "String"
    }
    presence.available Marqueur indiquant si l’agent est disponible.
    Valeurs possibles :
    • true : l’agent est disponible.
    • faux : l’agent n’est pas disponible.

    Type de données : booléennes

    presence.channels Liste des objets qui décrivent les canaux de communication disponibles avec l’agent.

    Type de données : tableau

    "channels": [
     {
      "available": Boolean,
      "name": "String",
      "sys_id": "String"
     }
    ]
    presence.channels.available Marqueur indiquant si le canal est disponible.
    Valeurs possibles :
    • true : le canal est disponible.
    • false : le canal n’est pas disponible.

    Type de données : booléennes

    presence.channels.name Nom du canal, par exemple Messagerie instantanée ou Téléphone.

    Type de données : chaîne

    presence.channels.restrict_update Marqueur indiquant si l’utilisateur peut restreindre les mises à jour, c’est-à-dire sélectionner le canal pour vérifier la disponibilité.
    Valeurs possibles :
    • vrai : l’utilisateur peut sélectionner ce canal pour vérifier sa disponibilité.
    • false : l’utilisateur ne peut pas sélectionner ce canal pour la disponibilité.

    Type de données : booléennes

    presence.channels.service_channel_type Type de canal de service, tel que messagerie instantanée. Les valeurs possibles varient en fonction des modules d’extension installés.

    Type de données : chaîne

    presence.channels.sys_id Canal sys_id. Situé dans la table Canaux de service [awa_service_channel].

    Type de données : chaîne

    presence.name Nom de l’état de présence de l’agent.
    Valeurs possibles :
    • Disponible
    • Non disponible

    Type de données : chaîne

    presence.restrict_update Marqueur indiquant si l’utilisateur peut restreindre les mises à jour.
    Valeurs possibles :
    • true : l’utilisateur peut restreindre les mises à jour.
    • false : l’utilisateur ne peut pas restreindre les mises à jour.

    Type de données : booléennes

    presence.sys_id État de présence sys_id. Situé dans la table États de présence [awa_presence_state].

    Type de données : chaîne

    statut Statut d’une demande ayant échoué. Cette propriété n’est incluse dans la réponse qu’en cas d’erreur.

    Valeur valide : échec

    Type de données : chaîne

    sys_id sys_id de l’agent.

    Type de données : chaîne

    workItem

    workItem: informations sur l’élément de travail associé à l’événement.

    Élément de travail.document workItem.document: liste des documents associés à la tâche d’élément de travail.
    workItem.document.sys_id workItem.document.sys_id: Sys_id du document affecté à la tâche d’élément de travail.
    Élément de travail.document.table workItem.document.table: nom de la table de documents affectée à la tâche.
    Élément de travail.précédentÉlément de travail workItem.previousWorkItem: Sys_id de l’élément de travail précédent pour le même ID de document. Pour les éléments de travail sans transfert, cette valeur est vide.
    Élément de travail.serviceChannel workItem.serviceChannel: liste des canaux de service associés à la tâche d’élément de travail.
    workItem.serviceChannel.name workItem.serviceChannel.name: nom du canal de service, par exemple Messagerie instantanée ou Téléphone.
    workItem.serviceChannel.sys_id workItem.serviceChannel.sys_id: Sys_id du canal de service.
    Élément de travail.taille workItem.size: capacité de l’agent utilisée lorsque cet élément de travail est affecté à l’agent.
    workItem.sys_id workItem.sys_id: Sys_id de l’élément de travail qui a été accepté ou proposé.
    Élément de travail.isQueueTransféré workItem.isQueueTransferred: indique si l’élément de travail est transféré dans la file d’attente. Défini sur vrai si l’élément de travail est transféré dans la file d’attente, sur faux s’il ne l’est pas. Pour plus d’informations sur les transferts de file d’attente, reportez-vous à la section Transfer a chat to another queue.
    curl -X PUT \
     https://instance.servicenow.com/api/now/awa/agents/46d44a23a9fe19810012d100cca80666 \
    -H 'Accept: application/json' \
    -H 'Content-Type: application/json' \
    -u 'username':'password'\
    -d '{"presence": {\
      "sys_id": "0b10223c57a313005baaaa65ef94f970",\
      "channels": [{ \
      "sys_id": "0bbdedbb3b892300a2bac9bb34efc445",\
      "available": true
    }] 
    }}
    {
      "result": {
        "presence": {
          "name": "Available",
          "sys_id": "0b10223c57a313005baaaa65ef94f970",
          "available": true,
          "channels": [
            {
              "name": "Chat",
              "available": true,
              "sys_id": "27f675e3739713004a905ee515f6a7c3"
            }
          ]
        },
        "sys_id": "46d44a23a9fe19810012d100cca80666"
      }
    }

    AWA Agent : PUT /now/awa/agents/{user_id}/capacities

    Permet de mettre à jour la capacité maximale (charge de travail) d’un agent pour les capacités des canaux et l’aptitude universelle.

    Utilisez cette AWA Agent : GET /now/awa/agents/{user_id}/capacities méthode pour récupérer le canal actuel et les capacités universelles d’un agent.

    Format d'URL

    URL versionnée : /api/now/{api_version}/awa/agents/{user_id}/capacities

    URL par défaut : /api/now/awa/agents/{user_id}/capacities

    Paramètres de demande pris en charge

    Tableau 27. 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

    user_id Sys_id de l’agent répertorié dans la table Utilisateur [sys_user].

    Type de données : chaîne

    Tableau 28. Paramètres de requête
    Nom Description
    Aucun
    Tableau 29. Paramètres de corps de demande (XML ou JSON)
    Nom Description
    Canaux Obligatoire si vous mettez à jour la valeur maximale d’un ou de plusieurs canaux pour l’agent spécifié. Objet JSON contenant une ou plusieurs paires clé-valeur, mappant le canal à sa capacité maximale pour chaque canal affecté à l’agent.

    Type de données : objet

    La paire est dans le format suivant :
    • Clé (canal sys_id) – Canal sys_id. Situé dans la table Canaux de service [awa_service_channel].

      Type de données : chaîne

    • Valeur (capacité maximale) – Charge de travail maximale sur un canal de service spécifique auquel l’agent peut être activement affecté à la fois.

      Type de données : nombre

    channels: {"<channel_sys_id>": <max_capacity>}
    universal_capacity Obligatoire si la capacité universelle est en cours de mise à jour. Capacité maximale de l’agent sur tous les canaux de service. Si la charge de travail actuelle d’un agent est égale à la capacité universelle maximale, les éléments de travail supplémentaires ne lui sont pas affectés.

    Type de données : nombre

    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 30. 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 31. 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 32. 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é.
    404 Introuvable. L’élément demandé est introuvable.

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

    Nom Description
    Canaux Liste des objets qui décrivent les canaux de communication disponibles avec l’agent.
    "channels": [
      {
        "channel_sys_id": "String",
        "max_capacity": Number
      }
    ]

    Type de données : tableau

    channels.channel_sys_id Canal sys_id. Situé dans la table Canaux de service [awa_service_channel].

    Type de données : chaîne

    channels.max_capacité Charge de travail maximale sur un canal de service spécifique auquel l’agent peut être activement affecté à la fois.

    Type de données : chaîne

    erreur Détails décrivant une erreur rencontrée au cours du processus de demande.

    Type de données : objet

    "error": {
      "detail": "String",
      "message": "String"
    }
    error.detail Détails de l’erreur rencontrée au cours du processus de demande.

    Type de données : chaîne

    message.erreur Message de l’erreur rencontrée pendant le processus de demande. La description est fournie dans la error.detail propriété.

    Type de données : chaîne

    statut Statut d’une demande ayant échoué. Cette propriété n’est incluse dans la réponse qu’en cas d’erreur.

    Valeur valide : échec

    Type de données : chaîne

    universal_capacity Capacité maximale de l’agent sur tous les canaux de service. Si la charge de travail actuelle d’un agent est égale à la capacité universelle maximale, les éléments de travail supplémentaires ne lui sont pas affectés.

    Cette propriété est uniquement renvoyée si un enregistrement de capacité universelle existe pour cet agent.

    Type de données : nombre

    Exemple de demande cURL

    L’exemple suivant montre comment modifier la capacité universelle de l’agent et la capacité maximale pour un canal spécifié.

    curl "https://instance.service-now.com/api/now/awa/agents/46d44a23a9fe19810012d100cca80666/capacities" \
    --request PUT \
    --header "Accept:application/json" \
    --header "Content-Type:application/json" \
    --data "{
     \"channels\": { \"27f675e3739713004a905ee515f6a7c3\": 6 },
     \"universal_capacity\" : 12
    }" \
    --user 'username':'password'

    Une réponse réussie inclut les valeurs de capacité mises à jour.

    {
      "result": {
        "channels": [
          {
            "channel_sys_id": "27f675e3739713004a905ee515f6a7c3",
            "max_capacity": 6
          }
        ],
        "universal_capacity": 12
      }
    }