API de convidados de reserva do WSD

  • Versão de lançamento: Washingtondc
  • Atualizado 1 de fev. de 2024
  • 11 min. de leitura
  • A API de convidados de reservaWorkplace Service Delivery (WSD) fornece endpoints que permitem adicionar convidados a reservas, buscar convidados de uma reserva e reatribuir convidados de uma reserva.

    Para acessar essa API, o solicitante deve ter a função sn_wsd_core.workplace_user e o plug-in Workplace Reservation Management (sn_wsd_rsv) deve estar ativado.

    Esta API é executada no namespace sn_wsd_rsv.

    Para obter informações adicionais sobre Workplace Reservation Management, consulte Workplace Reservation Management.

    Convidados de reserva do WSD - GET /api/sn_wsd_rsv/wsd_reservation_invitees/reservation/{sys_id}

    Recupera detalhes sobre os convidados associados a uma reserva especificada.

    Formato de URL

    URL com controle de versões: /api/sn_wsd_rsv/{api_version}/wsd_reservation_invitees/reservation/{sys_id}

    URL padrão: /api/sn_wsd_rsv/reservation/{sys_id}

    Parâmetros de solicitação compatíveis

    Tabela 1. Parâmetros de caminho
    Nome Descrição
    api_version Opcional. Versão do endpoint a ser acessada. Por exemplo, v1 ou v2. Especifique este valor somente para usar uma versão de endpoint diferente da mais recente.

    Tipo de dados: cadeia de caracteres

    sys_id Sys_id da reserva para a qual os detalhes do convidado serão retornados.

    Tipo de dados: cadeia de caracteres

    Tabela 2. Parâmetros de consulta
    Nome Descrição
    Nenhum
    Tabela 3. Parâmetros do corpo da solicitação
    Nome Descrição
    Nenhum

    Cabeçalhos

    Os cabeçalhos de solicitação e resposta a seguir se aplicam somente a esta ação HTTP ou se aplicam a esta ação de maneira distinta. Para obter uma lista de cabeçalhos gerais usados na REST API, consulte Cabeçalhos de REST API compatíveis.

    Tabela 4. Cabeçalhos da solicitação
    Cabeçalho Descrição
    Aceitar Formato de dados do corpo da resposta. Tipos compatíveis: application/json ou application/xml.

    Padrão: application/json

    Tabela 5. Cabeçalhos de resposta
    Cabeçalho Descrição
    Nenhum

    Códigos de status

    Os códigos de status a seguir se aplicam a esta ação HTTP. Para obter uma lista de códigos de status possíveis usados na REST API, consulte Códigos de resposta HTTP da REST API.

    Tabela 6. Códigos de status
    Código de status Descrição
    200 Bem-sucedido. A solicitação foi processada com sucesso.
    401 Não autorizado. As credenciais do usuário estão incorretas ou não foram aprovadas.
    404 Não encontrado. O item solicitado não foi encontrado.
    500 Erro interno do servidor. Ocorreu um erro inesperado ao processar a solicitação. A resposta contém informações adicionais sobre o erro.

    Parâmetros do corpo da resposta

    Nome Descrição
    resultado Retorna resultados para os convidados associados à reserva especificada.

    Tipo de dados: objeto

    {
      "result": {
        "invitees": [Array],
        "reservationId": "String",
        "reservationSubType": "String",
        "success": Boolean
      }
    }
    resultado.convidados Detalhes sobre os convidados associados à reserva.

    Tipo de dados: matriz de objetos

    "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
    Endereço de e-mail do convidado.

    Tipo de dados: cadeia de caracteres

    resultado.convidados.primeiroNome Nome do convidado.

    Tipo de dados: cadeia de caracteres

    result.invitees.inviteId
    Sys_id do registro do usuário do funcionário. Localizado na tabela Usuário [sys_user].

    Tipo de dados: cadeia de caracteres

    resultado.convidados.estadodoconvite Detalhes sobre o estado atual do convidado para a reserva.

    Tipo de dados: objeto

    "inviteState": {
      "displayValue": "String",
      "value": "String"
    }
    result.invitees.inviteState.displayValue Exiba o valor do estado do convidado, como Novo ou Removido.

    Tipo de dados: cadeia de caracteres

    result.invitees.inviteState.value Valor interno para o estado do convidado.

    Tipo de dados: cadeia de caracteres

    result.invites.conviteType
    Tipo de convidado.
    Valores válidos: (diferencia maiúsculas de minúsculas)
    • funcionário
    • visitante

    Tipo de dados: cadeia de caracteres

    resultado.convidados.éVIP Sinalizador que indica se o convidado é classificado como VIP.
    Valores válidos:
    • verdadeiro: o convidado é um VIP.
    • false: o convidado não é um VIP.

    Tipo de dados: booliano

    result.invitees.isWifiRequired Sinalizador que indica se a senha do WIFI deve ser fornecida ao visitante na entrada.
    Valores válidos:
    • verdadeiro: forneça a senha do Wi-Fi.
    • falso: não forneça a senha do Wi-Fi.

    Tipo de dados: booliano

    result.invitees.isParkingRequired Sinalizador que indica se o convidado precisa de estacionamento.
    Valores válidos:
    • verdadeiro: estacionamento necessário.
    • false: o estacionamento não é necessário.

    Tipo de dados: booliano

    resultado.convidados.sobrenome Sobrenome do convidado.

    Tipo de dados: cadeia de caracteres

    result.invitees.licensePlate Placa do convidado.

    Tipo de dados: cadeia de caracteres

    resultado.convidados.local Detalhes sobre o local de trabalho do convidado.

    Tipo de dados: objeto

     "location": {
      "displayName": "String",
      "sysId": "String"
    }
    result.invitees.location.displayName Nome de exibição do local de trabalho do convidado, como Dublin.

    Tipo de dados: cadeia de caracteres

    result.invitees.location.sysId Sys_id do local de trabalho do convidado. Localizado na tabela Local do local de trabalho [sn_wsd_core_workplace_location].

    Tipo de dados: cadeia de caracteres

    result.invitees.name Nome do convidado.

    Tipo de dados: cadeia de caracteres

    result.invitees.org Organização do convidado.

    Tipo de dados: cadeia de caracteres

    result.invitees.estacionamentoTipo Tipo de estacionamento necessário para o convidado.
    Valores válidos: (diferencia maiúsculas de minúsculas)
    • ev_estacionamento
    • normal_estacionamento
    • nenhum
    • car_accessible_estacionamento

    Tipo de dados: cadeia de caracteres

    result.invitees.phoneNumber Número de telefone do convidado.

    Tipo de dados: cadeia de caracteres

    resultado.convidados.anotaçõesprivadas Quaisquer anotações adicionais fornecidas pelo convidado.

    Tipo de dados: cadeia de caracteres

    result.invitees.reservationId Sys_id da reserva à qual o convidado está associado. Localizado na tabela Reserva do local de trabalho [sn_wsd_rsv_reservation].

    Tipo de dados: cadeia de caracteres

    result.invitees.reservationInviteId

    Sys_id do convidado da reserva para o visitante. Localizado na tabela Convidado da reserva [sn_wsd_rsv_m2m_reservation_invitee].

    Tipo de dados: cadeia de caracteres

    resultado.convidados.título Título do convidado.

    Tipo de dados: cadeia de caracteres

    result.invitees.visitorType Tipo de convidado.
    Valores válidos: (diferencia maiúsculas de minúsculas)
    • cliente
    • prestador de serviço
    • amigo_familia
    • outros

    Tipo de dados: cadeia de caracteres

    result.reservaId Sys_id da reserva à qual o convidado está associado. Localizado na tabela Reserva do local de trabalho [sn_wsd_rsv_reservation].

    Tipo de dados: cadeia de caracteres

    result.reservationSubType Subtipo do registro de reserva, como secundário único ou múltiplo.

    Tipo de dados: cadeia de caracteres

    resultado.sucesso Sinalizador que indica se a chamada foi bem-sucedida.
    Valores possíveis:
    • verdadeiro: a chamada do endpoint foi bem-sucedida.
    • falso: falha na chamada do endpoint.

    Tipo de dados: booliano

    Solicitação de cURL

    O exemplo de código a seguir mostra como recuperar os convidados de uma reserva.

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

    Retornar resultados:

    {
      "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"
          }
        ]
      }
    }

    Convidados de reserva do WSD - POST /api/sn_wsd_rsv/wsd_reservation_invitees/reassign

    Reatribui os convidados especificados de uma reserva para outra.

    Formato de URL

    URL com controle de versões: /api/sn_wsd_rsv/{api_version}/wsd_reservation_invitees/reassign

    URL padrão: /api/sn_wsd_rsv/wsd_reservation_invitees/reassign

    Parâmetros de solicitação compatíveis

    Tabela 7. Parâmetros de caminho
    Nome Descrição
    api_version Opcional. Versão do endpoint a ser acessada. Por exemplo, v1 ou v2. Especifique este valor somente para usar uma versão de endpoint diferente da mais recente.

    Tipo de dados: cadeia de caracteres

    Tabela 8. Parâmetros de consulta
    Nome Descrição
    Nenhum
    Tabela 9. Parâmetros do corpo da solicitação
    Nome Descrição
    ID da reserva Obrigatório. Sys_id da reserva para a qual reatribuir os convidados. Localizado na tabela Reserva do local de trabalho [sn_wsd_rsv_reservation].

    Tipo de dados: cadeia de caracteres

    ReservaConvidados Lista de convidados a serem reatribuídos à reserva identificada no parâmetro reservationId. Localizado na tabela Convidado da reserva [sn_wsd_rsv_m2m_reservation_invitee].

    Isso remove os convidados especificados de uma reserva anterior na qual eles estavam presentes de acordo com a tabela de convidados da reserva e os move para esta reserva.

    Tipo de dados: matriz de cadeias de caracteres

    Cabeçalhos

    Os cabeçalhos de solicitação e resposta a seguir se aplicam somente a esta ação HTTP ou se aplicam a esta ação de maneira distinta. Para obter uma lista de cabeçalhos gerais usados na REST API, consulte Cabeçalhos de REST API compatíveis.

    Tabela 10. Cabeçalhos da solicitação
    Cabeçalho Descrição
    Aceitar Formato de dados do corpo da solicitação. Tipos compatíveis: application/json, application/xml ou, text/xml.

    Padrão: application/json

    Tipo de conteúdo Formato de dados do corpo da solicitação. Oferece suporte somente a application/json.
    Tabela 11. Cabeçalhos de resposta
    Cabeçalho Descrição
    Nenhum

    Códigos de status

    Os códigos de status a seguir se aplicam a esta ação HTTP. Para obter uma lista de códigos de status possíveis usados na REST API, consulte Códigos de resposta HTTP da REST API.

    Tabela 12. Códigos de status
    Código de status Descrição
    200 Bem-sucedido. A solicitação foi processada com sucesso.
    401 Não autorizado. As credenciais do usuário estão incorretas ou não foram aprovadas.
    404 Não encontrado. O item solicitado não foi encontrado.
    500 Erro interno do servidor. Ocorreu um erro inesperado ao processar a solicitação. A resposta contém informações adicionais sobre o erro.

    Parâmetros do corpo da resposta

    Nome Descrição
    resultado Detalhes sobre a reatribuição do convidado.

    Tipo de dados: objeto

    "result": {
       "reservationInviteeIds": Array,
       "success": Boolean
    }
    result.reservationInviteeIds Lista de sys_ids dos convidados da reserva que foram reatribuídos à reserva especificada.

    Tipo de dados: matriz de cadeias de caracteres

    resultado.sucesso Sinalizador que indica se os convidados foram reatribuídos à reserva.
    Valores possíveis:
    • verdadeiro: os convidados foram reatribuídos com sucesso.
    • falso: os convidados não foram reatribuídos.

    Tipo de dados: booliano

    Solicitação de cURL

    O exemplo de código a seguir mostra como reatribuir convidados a uma reserva.

    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'

    Retornar resultados:

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

    Convidados de reserva do WSD - POST /api/sn_wsd_rsv/wsd_reservation_invitees/submit

    Adiciona os convidados especificados a uma reserva especificada.

    Formato de URL

    URL com controle de versões: /api/sn_wsd_rsv/{api_version}/wsd_reservation_invitees/submit

    URL padrão: /api/sn_wsd_rsv/wsd_reservation_invitees/submit

    Parâmetros de solicitação compatíveis

    Tabela 13. Parâmetros de caminho
    Nome Descrição
    api_version Opcional. Versão do endpoint a ser acessada. Por exemplo, v1 ou v2. Especifique este valor somente para usar uma versão de endpoint diferente da mais recente.

    Tipo de dados: cadeia de caracteres

    Tabela 14. Parâmetros de consulta
    Nome Descrição
    Nenhum
    Tabela 15. Parâmetros do corpo da solicitação (XML ou JSON)
    Nome Descrição
    convidados Lista de convidados a serem adicionados à reserva especificada.

    Tipo de dados: objeto

    "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"
      }
    ]
    convidados.e-mail Obrigatório quando inviteeType for "visitante".
    Endereço de e-mail do convidado.

    Tipo de dados: cadeia de caracteres

    convidados.primeiroNome Nome do convidado.

    Tipo de dados: cadeia de caracteres

    convidados.conviteId Obrigatório se inviteType for "funcionário".
    Sys_id do registro do usuário do funcionário. Localizado na tabela Usuário [sys_user].

    Tipo de dados: cadeia de caracteres

    convidados.conviteTipo Obrigatório.
    Tipo de convidado.
    Valores válidos: (diferencia maiúsculas de minúsculas)
    • funcionário
    • visitante

    Tipo de dados: cadeia de caracteres

    convidados.éVIP Sinalizador que indica se o convidado é classificado como VIP.
    Valores válidos:
    • verdadeiro: o convidado é um VIP.
    • false: o convidado não é um VIP.

    Tipo de dados: booliano

    convidados.éWi-FiRequired Sinalizador que indica se a senha do WIFI deve ser fornecida ao visitante na entrada.
    Valores válidos:
    • verdadeiro: forneça a senha do Wi-Fi.
    • falso: não forneça a senha do Wi-Fi.

    Tipo de dados: booliano

    convidados.sobrenome Sobrenome do convidado.

    Tipo de dados: cadeia de caracteres

    Convidados.PlacaDeLicença Placa do convidado.

    Tipo de dados: cadeia de caracteres

    invitees.org Organização do convidado.

    Tipo de dados: cadeia de caracteres

    convidados.estacionamentoTipo Tipo de estacionamento necessário para o convidado.
    Valores válidos: (diferencia maiúsculas de minúsculas)
    • ev_estacionamento
    • normal_estacionamento
    • nenhum
    • car_accessible_estacionamento

    Tipo de dados: cadeia de caracteres

    convidados.telefone Número de telefone do convidado.

    Tipo de dados: cadeia de caracteres

    convidados.anotaçõesprivadas Quaisquer anotações adicionais fornecidas pelo convidado.

    Tipo de dados: cadeia de caracteres

    convidados.título Título do convidado.

    Tipo de dados: cadeia de caracteres

    convidados.TipoDeVisitante Tipo de convidado.
    Valores válidos: (diferencia maiúsculas de minúsculas)
    • cliente
    • prestador de serviço
    • amigo_familia
    • outros

    Tipo de dados: cadeia de caracteres

    ID da reserva Obrigatório.
    Sys_id da reserva para a qual os convidados serão adicionados. Localizado na tabela Reservas do local de trabalho [sn_wsd_rsv_reservation].

    Tipo de dados: cadeia de caracteres

    Cabeçalhos

    Os cabeçalhos de solicitação e resposta a seguir se aplicam somente a esta ação HTTP ou se aplicam a esta ação de maneira distinta. Para obter uma lista de cabeçalhos gerais usados na REST API, consulte Cabeçalhos de REST API compatíveis.

    Tabela 16. Cabeçalhos da solicitação
    Cabeçalho Descrição
    Aceitar Formato de dados do corpo da solicitação. Tipos compatíveis: application/json, application/xml ou, text/xml.

    Padrão: application/json

    Tipo de conteúdo Formato de dados do corpo da solicitação. Oferece suporte somente a application/json.
    Tabela 17. Cabeçalhos de resposta
    Cabeçalho Descrição
    Nenhum

    Códigos de status

    Os códigos de status a seguir se aplicam a esta ação HTTP. Para obter uma lista de códigos de status possíveis usados na REST API, consulte Códigos de resposta HTTP da REST API.

    Tabela 18. Códigos de status
    Código de status Descrição
    200 Bem-sucedido. A solicitação foi processada com sucesso.
    401 Não autorizado. As credenciais do usuário estão incorretas ou não foram aprovadas.
    404 Não encontrado. O item solicitado não foi encontrado.
    500 Erro interno do servidor. Ocorreu um erro inesperado ao processar a solicitação. A resposta contém informações adicionais sobre o erro.

    Parâmetros do corpo da resposta

    Nome Descrição
    resultado Resultado da adição dos convidados à reserva.

    Tipo de dados: objeto

    "result": {
      "reservationId": "String",
      "success": Boolean
    }
    result.reservaId Sys_id da reserva à qual o convidado foi adicionado.

    Tipo de dados: cadeia de caracteres

    resultado.sucesso Sinalizador que indica se os convidados foram adicionados à reserva.
    Valores possíveis:
    • verdadeiro: os convidados foram adicionados com sucesso.
    • falso: os convidados não foram adicionados.

    Tipo de dados: booliano

    Solicitação de cURL

    O exemplo de código a seguir mostra como adicionar um visitante e um funcionário a uma reserva.

    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'

    Retornar resultados:

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