API des invités de réservation WSD

  • Rversion finale: Washingtondc
  • Mis à jour 1 févr. 2024
  • 11 minutes de lecture
  • L’API Workplace Service Deliveryd’invités de réservation (WSD) fournit des points de terminaison qui vous permettent d’ajouter des invités aux réservations, d’extraire les invités d’une réservation et de réaffecter les invités d’une réservation.

    Pour accéder à cette API, l’appelant doit avoir le rôle sn_wsd_core.workplace_user et le module d’extension Workplace Reservation Management (sn_wsd_rsv) doit être activé.

    Cette API s’exécute dans l’espace de noms sn_wsd_rsv .

    Pour plus d’informations sur Workplace Reservation Management, consultez Workplace Reservation Management.

    Invités de réservation WSD : GET /api/sn_wsd_rsv/wsd_reservation_invitees/reservation/{sys_id}

    Récupère les détails sur les invités associés à une réservation spécifiée.

    Format d'URL

    URL versionnée : /api/sn_wsd_rsv/{api_version}/wsd_reservation_invitees/reservation/{sys_id}

    URL par défaut : /api/sn_wsd_rsv/reservation/{sys_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

    sys_id Sys_id de la réservation pour laquelle retourner les détails de l’invité.

    Type de données : chaîne

    Tableau 2. Paramètres de requête
    Nom Description
    Néant
    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. 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 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.
    401 Non autorisé. Les informations d'identification de l'utilisateur sont incorrectes ou n'ont pas été transmises.
    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

    Nom Description
    résultat Résultats du retour pour les invités associés à la réservation spécifiée.

    Type de données : objet

    {
      "result": {
        "invitees": [Array],
        "reservationId": "String",
        "reservationSubType": "String",
        "success": Boolean
      }
    }
    result.invités Détails sur les invités associés à la réservation.

    Type de données : tableau d’objets

    "invitees": [
      {
        "email": "String",
        "firstName": "String",
        "inviteeId": "String",
        "inviteState": {Object},
        "inviteeType": "String",
        "isVIP": Boolean,
        "isWifiRequired": Boolean,
        "isParkingRequired": Boolean,
        "lastName": "String",
        "licensePlate": "String",
        "location": {Object},
        "name": "String",
        "org": "String",
        "parkingType": "String",
        "phoneNumber": "String",
        "privateNotes": "String",
        "reservationId": "String",
        "reservationInviteeId": "String",
        "title": "String",
        "visitorType": "String"
      }
    ]
    result.invitees.email
    Adresse e-mail de l’invité.

    Type de données : chaîne

    result.invitees.firstName Prénom de l’invité.

    Type de données : chaîne

    result.invitees.inviteeId
    Sys_id de l’enregistrement utilisateur de l’employé. Situé dans la table Utilisateur [sys_user].

    Type de données : chaîne

    result.invitees.inviteState Détails sur l’état actuel de l’invité pour la réservation.

    Type de données : objet

    "inviteState": {
      "displayValue": "String",
      "value": "String"
    }
    résultat.invitées.inviteState.displayValue Valeur d’affichage de l’état de l’invité, par exemple Nouveau ou Supprimé.

    Type de données : chaîne

    résultat.invitees.inviteState.valeur Valeur interne pour l’état d’invité.

    Type de données : chaîne

    result.invitees.inviteeType
    Type d’invité.
    Valeurs valides : (sensible à la casse)
    • employé
    • visiteur

    Type de données : chaîne

    résultat.invités.isVIP Marqueur indiquant si l’invité est classé comme VIP.
    Valeurs valides :
    • true : l’invité est un VIP.
    • false : l’invité n’est pas un VIP.

    Type de données : booléennes

    résultat.invités.isWifiRequis Marqueur indiquant si le mot de passe WIFI doit être fourni au visiteur à l’entrée.
    Valeurs valides :
    • true : fournir le mot de passe WIFI.
    • false : ne pas fournir le mot de passe WIFI.

    Type de données : booléennes

    résultat.invités.isParkingRequis Marqueur indiquant si l’invité a besoin d’un stationnement.
    Valeurs valides :
    • true : stationnement nécessaire.
    • false : le stationnement n’est pas nécessaire.

    Type de données : booléennes

    result.invitees.lastName Nom de famille de l’invité.

    Type de données : chaîne

    résultat.invités.plaque_licence Plaque d’immatriculation de l’invité.

    Type de données : chaîne

    résultat.invités.location Détails sur l’emplacement du lieu de travail de l’invité.

    Type de données : objet

     "location": {
      "displayName": "String",
      "sysId": "String"
    }
    result.invitees.location.displayName Nom d’affichage de l’emplacement du lieu de travail de l’invité, tel que Dublin.

    Type de données : chaîne

    result.invitees.location.sysId Sys_id de l’emplacement du lieu de travail de l’invité. Situé dans la table Emplacement du lieu de travail [sn_wsd_core_worplace_location].

    Type de données : chaîne

    result.invitees.name Nom de l’invité.

    Type de données : chaîne

    result.invitees.org Organisation de l’invité.

    Type de données : chaîne

    résultat.invitées.parkingType Type de stationnement requis pour l’invité.
    Valeurs valides : (sensible à la casse)
    • ev_parking
    • normal_parking
    • aucun
    • van_accessible_parking

    Type de données : chaîne

    result.invitées.phoneNumber Numéro de téléphone de l’invité.

    Type de données : chaîne

    résultat.invités.privateNotes Toutes les notes supplémentaires fournies par l’invité.

    Type de données : chaîne

    result.invitees.reservationId Sys_id de la réservation à laquelle l’invité est associé. Situé dans la table Réservation du lieu de travail [sn_wsd_rsv_reservation].

    Type de données : chaîne

    result.invitees.reservationInviteeId

    Sys_id de l’invité de la réservation pour le visiteur. Situé dans la table Invité de la réservation [sn_wsd_rsv_m2m_reservation_invitee].

    Type de données : chaîne

    résultat.invitees.title Titre de l’invité.

    Type de données : chaîne

    result.invitees.visitorType Type d’invité.
    Valeurs valides : (sensible à la casse)
    • client
    • Entrepreneur
    • friend_family
    • others

    Type de données : chaîne

    result.reservationId Sys_id de la réservation à laquelle l’invité est associé. Situé dans la table Réservation du lieu de travail [sn_wsd_rsv_reservation].

    Type de données : chaîne

    result.reservationSubType Sous-type de l’enregistrement de réservation, par exemple unique ou multi-enfant.

    Type de données : chaîne

    résultat.succès Marqueur indiquant si l’appel a réussi.
    Valeurs possibles :
    • true : l’appel du point de terminaison a réussi.
    • false : échec de l’appel du point de terminaison.

    Type de données : booléennes

    Demande cURL

    L’exemple de code suivant montre comment récupérer les invités d’une réservation.

    curl 
    "http://instance.servicenow.com/api/sn_wsd_rsv/wsd_reservation_invitees/reservation/17979dc9536b01103cf7ddeeff7b12b3" \
    --request GET \
    --header "Accept:application/json" \
    --user 'username':'password'
    

    Résultats renvoyés :

    {
      "result": {
        "success": true,
        "reservationId": "17979dc9536b01103cf7ddeeff7b12b3",
        "reservationSubType": "single",
        "invitees": [
          {
            "reservationId": "17979dc9536b01103cf7ddeeff7b12b3",
            "location": {
              "sysId": "19efb84edb7650106c731dcd1396193c",
              "displayName": "Dublin"
            },
            "reservationInviteeId": "1f97d58d53e701103cf7ddeeff7b129a",
            "inviteeType": "employee",
            "inviteState": {
              "displayValue": "New",
              "value": "new"
            },
            "inviteeId": "6816f79cc0a8016401c5a33be04be441",
            "name": "System Administrator",
            "email": "admin@example.com"
          },
          {
            "reservationId": "17979dc9536b01103cf7ddeeff7b12b3",
            "location": {
              "sysId": "19efb84edb7650106c731dcd1396193c",
              "displayName": "Dublin"
            },
            "reservationInviteeId": "8ee7ddc9536b01103cf7ddeeff7b1219",
            "inviteeType": "employee",
            "inviteState": {
              "displayValue": "New",
              "value": "new"
            },
            "inviteeId": "62826bf03710200044e0bfc8bcbe5df1",
            "name": "Abel Tuter",
            "email": "abel.tuter@example.com"
          },
          {
            "reservationId": "17979dc9536b01103cf7ddeeff7b12b3",
            "location": {
              "sysId": "19efb84edb7650106c731dcd1396193c",
              "displayName": "Dublin"
            },
            "reservationInviteeId": "4ae7d10d536b01103cf7ddeeff7b126b",
            "inviteeType": "visitor",
            "inviteState": {
              "displayValue": "New",
              "value": "new"
            },
            "inviteeId": "86e7d10d536b01103cf7ddeeff7b1267",
            "firstName": "Visitor",
            "lastName": "User",
            "name": "Visitor User",
            "email": "visitoruser@example.com",
            "phoneNumber": "+919876543210",
            "isVIP": true,
            "parkingType": "normal_parking",
            "licensePlate": "1234",
            "isParkingRequired": true,
            "org": "Senow",
            "visitorType": "contractor",
            "title": "President",
            "isWifiRequired": true,
            "privateNotes": "Visiting"
          }
        ]
      }
    }

    Invités de réservation WSD : POST/api/sn_wsd_rsv/wsd_reservation_invitees/reassign

    Réaffecte les invités spécifiés d’une réservation à une autre.

    Format d'URL

    URL versionnée : /api/sn_wsd_rsv/{api_version}/wsd_reservation_invitees/reassign

    URL par défaut : /api/sn_wsd_rsv/wsd_reservation_invitees/reassign

    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
    ID de réservation Requis. Sys_id de la réservation pour laquelle réaffecter les invités. Situé dans la table Réservation du lieu de travail [sn_wsd_rsv_reservation].

    Type de données : chaîne

    reservationInvitees Liste des invités à réaffecter à la réservation identifiée dans le reservationId paramètre. Situé dans la table Invité de la réservation [sn_wsd_rsv_m2m_reservation_invitee].

    Cela supprime les invités spécifiés d’une réservation antérieure dans laquelle ils étaient présents selon la table des invités de la réservation et les déplace vers cette réservation.

    Type de données : tableau de chaînes

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

    Valeur par défaut : application/json

    Content-Type Format de données du corps de la demande. 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.
    401 Non autorisé. Les informations d'identification de l'utilisateur sont incorrectes ou n'ont pas été transmises.
    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

    Nom Description
    résultat Détails sur la réaffectation de l’invité.

    Type de données : objet

    "result": {
       "reservationInviteeIds": Array,
       "success": Boolean
    }
    result.reservationInviteeIds Liste des sys_ids des invités de la réservation qui ont été réaffectés à la réservation spécifiée.

    Type de données : tableau de chaînes

    résultat.succès Marqueur indiquant si les invités ont été réaffectés à la réservation.
    Valeurs possibles :
    • true : les invités ont été réaffectés avec succès.
    • false : les invités n’ont pas été réaffectés.

    Type de données : booléennes

    Demande cURL

    L’exemple de code suivant montre comment réaffecter des invités à une réservation.

    curl "http://instance.servicenow.com/api/sn_wsd_rsv/wsd_reservation_invitees/reassign" \
    --request POST \
    --header "Accept:application/json" \
    --header "Content-Type:application/json" \
    --data "{
    \"reservationId\":\"3984e6c1532f01103cf7ddeeff7b129b\",
    \"reservationInvitees\":{\"aa31427f531701103cf7ddeeff7b1243\",\"e231427f531701103cf7ddeeff7b1243\"}
    }" \
    --user 'username':'password'

    Résultats renvoyés :

    {
      "result": {
        "success": true,
        "reservationInviteeIds": [
          "aa31427f531701103cf7ddeeff7b1243",
          "e231427f531701103cf7ddeeff7b1243"
        ]
      }
    }

    Invités de réservation WSD : POST/api/sn_wsd_rsv/wsd_reservation_invitees/submit

    Ajoute les invités spécifiés à une réservation spécifiée.

    Format d'URL

    URL versionnée : /api/sn_wsd_rsv/{api_version}/wsd_reservation_invitees/submit

    URL par défaut : /api/sn_wsd_rsv/wsd_reservation_invitees/submit

    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
    Néant
    Tableau 15. Paramètres de corps de demande (XML ou JSON)
    Nom Description
    Invités Liste des invités à ajouter à la réservation spécifiée.

    Type de données : objet

    "invitees": [
      {
        "email": "String",
        "firstName": "String",
        "inviteeId": "String",
        "inviteeType": "String",
        "isVIP": Boolean,
        "isWifiRequired": Boolean,
        "lastName": "String",
        "licensePlate": "String",
        "org": "String",
        "parkingType": "String",
        "phone": "String",
        "privateNotes": "String",
        "title": "String",
        "visitorType": "String"
      }
    ]
    invitees.email Requis quand inviteeType est « visiteur ».
    Adresse e-mail de l’invité.

    Type de données : chaîne

    invitées.firstName Prénom de l’invité.

    Type de données : chaîne

    invitees.inviteeId Requis si inviteType est « employé ».
    Sys_id de l’enregistrement utilisateur de l’employé. Situé dans la table Utilisateur [sys_user].

    Type de données : chaîne

    invitées.inviteeType Requis.
    Type d’invité.
    Valeurs valides : (sensible à la casse)
    • employé
    • visiteur

    Type de données : chaîne

    invités.isVIP Marqueur indiquant si l’invité est classé comme VIP.
    Valeurs valides :
    • true : l’invité est un VIP.
    • false : l’invité n’est pas un VIP.

    Type de données : booléennes

    invitees.isWifiRequired Marqueur indiquant si le mot de passe WIFI doit être fourni au visiteur à l’entrée.
    Valeurs valides :
    • true : fournir le mot de passe WIFI.
    • false : ne pas fournir le mot de passe WIFI.

    Type de données : booléennes

    invitées.lastName Nom de famille de l’invité.

    Type de données : chaîne

    invités.licensePlate Plaque d’immatriculation de l’invité.

    Type de données : chaîne

    invitees.org Organisation de l’invité.

    Type de données : chaîne

    invitées.parkingType Type de stationnement requis pour l’invité.
    Valeurs valides : (sensible à la casse)
    • ev_parking
    • normal_parking
    • aucun
    • van_accessible_parking

    Type de données : chaîne

    invités.phone Numéro de téléphone de l’invité.

    Type de données : chaîne

    invitées.privateNotes Toutes les notes supplémentaires fournies par l’invité.

    Type de données : chaîne

    invitées.title Titre de l’invité.

    Type de données : chaîne

    invitées.visitorType Type d’invité.
    Valeurs valides : (sensible à la casse)
    • client
    • Entrepreneur
    • friend_family
    • others

    Type de données : chaîne

    ID de réservation Requis.
    Sys_id de la réservation pour laquelle ajouter les invités. Situé dans la table Réservations du lieu de travail [sn_wsd_rsv_reservation].

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

    Valeur par défaut : application/json

    Content-Type Format de données du corps de la demande. 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.
    401 Non autorisé. Les informations d'identification de l'utilisateur sont incorrectes ou n'ont pas été transmises.
    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

    Nom Description
    résultat Résultat de l’ajout des invités à la réservation.

    Type de données : objet

    "result": {
      "reservationId": "String",
      "success": Boolean
    }
    result.reservationId Sys_id de la réservation à laquelle l’invité a été ajouté.

    Type de données : chaîne

    résultat.succès Marqueur indiquant si les invités ont été ajoutés à la réservation.
    Valeurs possibles :
    • true : les invités ont été ajoutés avec succès.
    • false : les invités n’ont pas été ajoutés.

    Type de données : booléennes

    Demande cURL

    L’exemple de code suivant montre comment ajouter un visiteur et un employé à une réservation.

    curl "http://instance.servicenow.com/api/sn_wsd_rsv/v1/wsd_reservation_invitees/submit" \
    --request POST \
    --header "Accept:application/json" \
    --header "Content-Type:application/json" \
    --data "{[
      \"reservationId\": \"041c4a13532f01103cf7ddeeff7b12c0\",
      \"invitees\": [
      {
        \"inviteeType\": \"employee\",
        \"inviteeId\": \"62826bf03710200044e0bfc8bcbe5df1\"
      },
      {
        \"inviteeType\":  \"visitor\",
        \"email\": \"visitoruser@example.com\",
        \"firstName\": \"Visitor\",
        \"lastName\":\"User\",
        \"isVIP\":true,
        \"visitorType\":\"contractor\",
        \"title\": \"ServiceNow Developer\",
        \"phone\": \"+91 9876543210\",
        \"isWifiRequired\": true,
        \"parkingType\": \"ev_parking\",
        \"licensePlate\": \"TS00TS0000\",
        \"org\": \"ServiceNow\",
        \"privateNotes\": \"Remarks\"
      }
    ]}" \
    --user 'username':'password'

    Résultats renvoyés :

    {
      "result": {
        "success": true,
        "reservationId": "17979dc9536b01103cf7ddeeff7b12b3"
      }
    }