Appointment API

  • Versão de lançamento: Zurich
  • Atualizado 31 de jul. de 2025
  • 31 min. de leitura
  • . Compromisso A API fornece endpoints para interagir com a aplicação de reserva de compromisso. Use esta API para reservar e reagendar compromissos, verificar os slots de compromisso disponíveis e buscar detalhes de configuração de reserva de compromisso.

    Antes de usar esta API, a Configuração de agendamento de compromisso e a Configuração de serviço devem ser configuradas. Uma tarefa para a qual o compromisso está sendo reservado já deve existir. Para obter informações adicionais, confira Configuring Appointment Booking.

    . Compromisso A API requer o plug-in Agendamento (com.snc.appointment_booking) e é fornecida em sn_apptmnt_booking namespace. Para acessar esta API, você deve ter a função snc_internal.

    Compromisso - OBTENHA /sn_apptmnt_booking/appointment/calendar

    Retorna o intervalo de tempo para o qual você pode reservar compromissos. Os resultados de retorno respeitam o lead time e as datas máximas futuras reserváveis configuradas na configuração do serviço de reserva de compromisso.

    Para obter informações adicionais sobre o prazo de entrega e a configuração de datas futuras máximas reserváveis, consulte Create or modify an application configuration for Appointment Booking.

    Você deve ter a função snc_internal ou snc_external para acessar este endpoint.

    Formato de URL

    URL com controle de versão: /api/sn_apptmnt_booking//appointment/calendar

    URL padrão: /api/sn_apptmnt_booking/appointment/calendar

    Nota:
    As versões disponíveis são especificadas em REST API Explorer . Para REST APIs com script, há informações adicionais de versão no Formulário de serviço REST com script .

    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 acessado. 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 2. Parâmetros de consulta
    Nome Descrição
    catalog_id Obrigatório. Sys_id do produtor de registro configurado com uma configuração de serviço de reserva de compromisso.

    Tabela: Produtor de registro [sc_cat_item_producer]

    Tipo de dados: Cadeia de caracteres

    local Obrigatório. Sys_id do local do compromisso.

    Tabela: Local [cmn_location]

    Tipo de dados: Cadeia de caracteres

    opened_for Obrigatório. Sys_id do usuário para o qual o compromisso está sendo reservado.

    Tabela: Usuário [sys_user]

    Tipo de dados: Cadeia de caracteres

    Tabela 3. Parâmetros do corpo da solicitação
    Nome Descrição
    Nenhum(a)

    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. Oferece suporte somente a application/json.
    Tabela 5. Cabeçalhos de resposta
    Cabeçalho Descrição
    Nenhum(a)

    Códigos de status

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

    Tabela 6. Códigos de status
    Código do status Descrição
    200 Bem-sucedido. A solicitação foi processada com sucesso.
    400 Solicitação Incorreta. Um tipo de solicitação incorreto ou uma solicitação malformada foi detectada.
    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 Informações sobre os resultados da solicitação de endpoint.

    Tipo de dados: Objeto

    "result": {
      "range_end": "String",
      "range_start": "String"
    }
    range_end.result.range_end Fim do intervalo no qual os compromissos podem ser agendados.

    Fim do intervalo: Hoje e máximo de dias futuros reserváveis

    Tipo de dados: Cadeia de caracteres

    Fuso horário do compromisso no formato de data e hora interno.

    range_start.result.range_start Início do intervalo no qual os compromissos podem ser agendados.

    Início do intervalo: Hoje e lead time

    Tipo de dados: Cadeia de caracteres

    Fuso horário do compromisso no formato de data e hora interno.

    Solicitação de curl

    O exemplo de código a seguir mostra como chamar este endpoint.

    curl "http://instance.servicenow.com/api/sn_apptmnt_booking/v1/appointment/calendar?catalog_id=e4c1116b3b810300ce8a4d72f3efc40f&location=32e8499cdb2d2200d75270f5bf9619d6&opened_for=6816f79cc0a8016401c5a33be04be441" \
    --request GET \
    --header "Accept:application/json" \
    --user 'username':'password'

    Resultado:

    {
      "result": {
        "range_start": "2023-02-08 03:52:27",
        "range_end": "2023-02-21 23:52:27"
      }
    }

    Compromisso - OBTENHA /sn_apptmnt_booking/appointment/configuration

    Retorna a configuração definida em uma Configuração de serviço de agendamento de compromisso especificada.

    Além disso, ele retorna as traduções e as preferências de data e hora do usuário necessárias para renderizar os slots nos widgets de reserva de compromisso.

    Você deve ter a função snc_internal ou snc_external para acessar este endpoint.

    Formato de URL

    URL com controle de versão: /api/sn_apptmnt_booking//appointment/configuration

    URL padrão: /api/sn_apptmnt_booking/appointment/configuration

    Nota:
    As versões disponíveis são especificadas em REST API Explorer . Para REST APIs com script, há informações adicionais de versão no Formulário de serviço REST com script .

    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 acessado. 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
    catalog_id Obrigatório. Sys_id do produtor de registro configurado com a configuração do serviço de reserva de compromisso.

    Tipo de dados: Cadeia de caracteres

    Tabela: Produtor de registro [sc_cat_item_producer]

    Tabela 9. Parâmetros do corpo da solicitação
    Nome Descrição
    Nenhum(a)

    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 resposta. Oferece suporte somente a application/json.
    Tabela 11. Cabeçalhos de resposta
    Cabeçalho Descrição
    Nenhum(a)

    Códigos de status

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

    Tabela 12. Códigos de status
    Código do status Descrição
    200 Bem-sucedido. A solicitação foi processada com sucesso.
    400 Solicitação Incorreta. Um tipo de solicitação incorreto ou uma solicitação malformada foi detectada.
    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 Resultados da solicitação de endpoint.

    Tipo de dados: Objeto

    "result": {
      "active": Boolean,
      "active_string": "String",
      "advanced_calendar_view_portal": Boolean,
      "auto_acceptance": Boolean,
      "locale_language": "String",
      "service_config": {Object},
      "task_table": "String",
      "translations": {Object},
      "userDateFormatOptions": {Object},
      "useRR": Boolean,
      "userTimeFormat": {Object},
      "userTimeFormatOptions": {Object},
      "view_scale": "String"
    }
    resultado.ativo Sinalizador que indica se a configuração do serviço para o ID do catálogo associado está ativa.
    Valores possíveis:
    • Verdadeiro: A configuração do serviço para o ID do catálogo está ativa.
    • Falso: A configuração do serviço para o ID do catálogo não está ativa.

    Tipo de dados: Booliano

    result.active_string Representação em texto do status da configuração do serviço para o ID do catálogo associado.

    Tipo de dados: Cadeia de caracteres

    advanced_calendar_view_portal Sinalizador que indica se a exibição de calendário avançada é exibida no portal ou exibe a exibição de base. Para obter informações adicionais sobre a exibição avançada do calendário, consulte Create or modify an application configuration for Appointment Booking.
    Valores possíveis:
    • Verdadeiro: A exibição de calendário avançada é exibida no portal.
    • Falso: A exibição básica é exibida no portal.

    Tipo de dados: Booliano

    result.auto_acceptance Sinalizador que indica se o compromisso faz a transição automaticamente para o estado Aceito.
    Valores possíveis:
    • Verdadeiro: O compromisso muda automaticamente para o estado Aceito.
    • Falso: O agente deve aceitar manualmente o compromisso.

    Tipo de dados: Booliano

    result.locale_language Configuração de idioma do usuário.

    Tipo de dados: Cadeia de caracteres

    Formato: Código de idioma ISO 639,1

    result.service_config Detalhes sobre a configuração do serviço.

    Tipo de dados: Objeto

    "service_config": {
      "active": Boolean,
      "active_string": "String",
      "appointment_booking_config": "String",
      "appointment_duration": "String",
      "appointments_per_bookable_slot": "String",
      "bookable_days": "String",
      "cancel_by_time": "String",
      "default_timezone": "String",
      "enable_advanced_config": Boolean,
      "field_mapping": {Object},
      "future_bookable_max_days": "String",
      "lead_time": "String",
      "mandatory": "String",
      "use_slot_end_time_as": "String",
      "work_duration": "String"
    }
    result.service_config.active Sinalizador que indica o status ativo da configuração do serviço de reserva de compromisso.
    Valores possíveis:
    • Verdadeiro: Ativo
    • Inativo

    Tipo de dados: Booliano

    result.service_config.active_string Representação em texto do status da configuração do serviço de reserva de compromisso.

    Tipo de dados: Cadeia de caracteres

    result.service_config.​appointment_booking_config Sys_id da configuração do serviço de reserva de compromisso para o ID do catálogo associado.

    Tipo de dados: Cadeia de caracteres

    Configuração do serviço de agendamento de compromisso [sn_apptmnt_booking_service_config]

    result.service_config.​appointment_duration Duração do compromisso.

    Tipo de dados: Cadeia de caracteres

    Unidade: Minutos

    result.service_config.​appointments_per_bookable_slot Número de compromissos que podem ser reservados para o slot associado.

    Tipo de dados: Cadeia de caracteres

    result.service_config.​bookable_days Valores separados por vírgulas que representam os dias em que os compromissos podem ser reservados.

    Os dias são representados como números inteiros em que segunda-feira é 1 e domingo é 7.

    Tipo de dados: Cadeia de caracteres

    result.service_config.cancel_by_time Tempo mínimo antes do início de um compromisso que um usuário pode cancelar o compromisso. Por exemplo, se você tiver um compromisso reservado para 1:00pm e houver um cancelamento de 2 horas por hora, deverá cancelar o compromisso até às 10:59 horas.

    Formato: Este valor é a diferença de data e hora de "1970-01-01 00:00:00". Se o valor retornado for "1970-01-01 04:00:00, isso significa que a sala deve ser cancelada quatro horas antes do início da reunião.

    Tipo de dados: Cadeia de caracteres

    result.service_config.default_timezone Configuração de fuso horário em que os compromissos estão reservados.
    Valores possíveis:
    • Local: Use o fuso horário do local do compromisso.
    • Usuário: Use o fuso horário da pessoa para quem o compromisso está sendo reservado.

    Tipo de dados: Cadeia de caracteres

    result.service_config.​enable_advanced_config Sinalizador que indica se as configurações de reserva de compromisso e as regras de reserva de compromisso são consideradas ao reservar compromissos. Para obter informações adicionais, confira Create appointment booking advanced configuration.
    Valores possíveis:
    • Verdadeiro: As configurações de reserva de compromisso e as regras de reserva de compromisso são consideradas ao reservar compromissos.
    • Falso: As configurações de reserva de compromisso e as regras de reserva de compromisso não são consideradas ao reservar compromissos.

    Tipo de dados: Booliano

    result.service_config.field_mapping Detalhes sobre as variáveis do catálogo mapeadas para os valores de local e contato usados para reservar o compromisso.

    Tipo de dados: Objeto

    "field_mapping": {
      "contact": "String",
      "contactRPVariable": {Object},
      "location": "String",
      "locationRPVariable": {Object}
    }
    result.service_config.​field_mapping.contact Nome da variável do catálogo que contém o valor do contato.

    Tipo de dados: Cadeia de caracteres

    result.service_config.field_mapping.​ContactRPVariable Detalhes sobre os dados de variáveis do catálogo de locais.

    Tipo de dados: Objeto

    "contactRPVariable": {
      "displayName": "String",
      "label": "String",
      "name": "String"
    }
    result.service_config.field_mapping.​ContactRPVariable.displayName Nome de exibição da variável do catálogo de contatos.

    Tipo de dados: Cadeia de caracteres

    result.service_config.field_mapping.​ContactRPVariable.label Rótulo da variável do catálogo de contatos.

    Tipo de dados: Cadeia de caracteres

    result.service_config.field_mapping.​contactRPVariable.name Nome da variável do catálogo de contatos.

    Tipo de dados: Cadeia de caracteres

    result.service_config.​field_mapping.location Nome da variável do catálogo que contém o valor do local.

    Tipo de dados: Cadeia de caracteres

    result.service_config.field_mapping.​LocationRPVariable Detalhes sobre os dados de variáveis do catálogo de locais.

    Tipo de dados: Objeto

    "locationRPVariable": {
      "displayName": "String",
      "label": "String",
      "name": "String"
    }
    result.service_config.field_mapping.​LocationRPVariable.displayName Nome de exibição da variável do catálogo de local.

    Tipo de dados: Cadeia de caracteres

    result.service_config.field_mapping.​LocationRPVariable.label Rótulo da variável do catálogo de local.

    Tipo de dados: Cadeia de caracteres

    result.service_config.field_mapping.​locationRPVariable.name Nome da variável do catálogo de local.

    Tipo de dados: Cadeia de caracteres

    result.service_config.​future_bookable_max_days Número máximo de dias no futuro que um compromisso pode ser reservado.

    Tipo de dados: Cadeia de caracteres

    result.service_config.lead_time Tempo mínimo antes do início de um compromisso que um usuário pode agendar o compromisso. Por exemplo, se você quiser marcar um compromisso às 1:00pm e houver um lead time de 2 horas, deverá agendar o compromisso até às 10:59 da manhã.

    Formato: Este valor é a diferença de data e hora de "1970-01-01 00:00:00". Se o valor retornado for "1970-01-01 04:00:00, isso significa que a sala deve ser reservada quatro horas antes do início da reunião.

    Tipo de dados: Cadeia de caracteres

    result.service_config.mandatory Indicador para se o compromisso é obrigatório.
    Valores possíveis:
    • 0: Compromisso não é obrigatório.
    • 1: O agendamento é obrigatório.

    Tipo de dados: Cadeia de caracteres

    result.service_config.​use_slot_end_time_as Indicador de quando um agente chegará ou concluirá o trabalho programado para o compromisso associado.
    Valores possíveis:
    • Arive_by: O agente chegará ao local do compromisso dentro do intervalo de tempo especificado.
    • Complete_by: O agente concluirá o trabalho do compromisso dentro do intervalo de tempo especificado.
    • Vazio: Igual a completed_by.

    Tipo de dados: Cadeia de caracteres

    result.service_config.work_duration Tempo necessário para trabalhar no compromisso. A duração do trabalho é configurada na configuração do serviço de reserva de compromisso. Para obter informações adicionais, confira Create or modify service configuration for Appointment Booking.

    Tipo de dados: Cadeia de caracteres

    Unidade: Minutos

    result.task_table Nome da tabela para a qual o compromisso pode ser reservado. Configurado na configuração do serviço de reserva de compromisso.

    Tipo de dados: Cadeia de caracteres

    resultado.traduções Pares nome-valor de traduções de texto usados pelo widget de reserva de compromisso. Contém valores traduzidos para ações, mensagens, dias e meses.

    Tipo de dados: Objeto

    result.userDateFormatOptions Descreve as opções de formato de data necessárias para renderizar objetos de data JS. Esses valores são definidos em constantes de reserva de compromisso que não são modificáveis.
    Tipo de dados: Objeto
    "userDateFormatOptions": {
      "day": "String",
      "month": "String",
      "week": "String",
      "weekday": "String"
    }
    result.userDateFormatOptions.day Formato de data do dia.

    Tipo de dados: Cadeia de caracteres

    Formato: Numérico (valores ou 1-31)

    result.userDateFormatOptions.month Formato de data do mês.

    Tipo de dados: Cadeia de caracteres

    Formato: Curto (valores em jan, fev, mar e assim por diante)

    result.userDateFormatOptions.week Formato de data da semana.

    Tipo de dados: Cadeia de caracteres

    Formato: Numérico (valores de 1 a 5)

    result.userDateFormatOptions.weekday Formato de data do dia da semana.

    Tipo de dados: Cadeia de caracteres

    Formato: Curto (valores de seg, ter, qua e assim por diante)

    result.useRR Valor da propriedade sn_apptmnt_booking.use_read_replica_from_ui. Este valor define se o banco de dados de réplica de leitura deve ser usado para buscar slots de compromisso quando a consulta é realizada na IU.
    Valores possíveis:
    • Verdadeiro: Use o banco de dados de réplica de leitura para buscar os slots.
    • Falso: Não use o banco de dados de réplica de leitura para buscar os slots.

    Tipo de dados: Booliano

    result.userTimeFormat Descreve o formato de hora do usuário.

    O usuário é a pessoa que faz a solicitação de endpoint. Se feito por meio da plataforma, é um agente. Se feito por meio do portal, é um cliente.

    Tipo de dados: Objeto
    "userTimeFormat": {
      "type": "String",
      "value": "String"
    }
    result.userTimeFormat.type Tipo de formato de hora.
    Valores possíveis:
    • 12hr
    • 24hr

    Tipo de dados: Cadeia de caracteres

    result.userTimeFormat.value Formato de hora preferencial, como "HH:mm:ss".

    Tipo de dados: Cadeia de caracteres

    result.userTimeFormatOptions Descreve as opções de formato de hora necessárias para renderizar objetos de tempo JS. Esses valores são definidos nas constantes de reserva de compromisso que não podem ser modificadas.
    Tipo de dados: Objeto
    "userTimeFormatOptions": {
      "hour": "String",
      "hourCycle": "String",
      "minute": "String"
    }
    result.userTimeFormatOptions.hour Formato para horas.

    Formato: Numérico (valores de 1 a 12)

    result.userTimeFormatOptions.hourCycle Formato do ciclo de horas.

    Somente o valor possível é h23 .

    result.userTimeFormatOptions.minute Formato para minutos.

    Formato: Numérico (valores de 1 a 60)

    resultado.view_scale Exibição configurada na configuração de serviço.
    Valores possíveis:
    • dia
    • semana

    Tipo de dados: Cadeia de caracteres

    Solicitação de curl

    O exemplo de código a seguir mostra como chamar este endpoint.

    curl "http://instance.servicenow.com/api/sn_apptmnt_booking/v1/appointment/configuration?catalog_id=e4c1116b3b810300ce8a4d72f3efc40f" \
    --request GET \
    --header "Accept:application/json" \
    --user ‘username':'password'

    Resposta:

    {
      "result": {
        "active": true,
        "activeString": "true"
        "view_scale": "day",
        "auto_acceptance": true,
        "task_table": "wm_order",
        "advanced_calendar_view_portal": false,
        "service_config": {
          "appointment_booking_config": "deb1d2fd3b033200ce8a4d72f3efc4c2",
          "future_bookable_max_days": "14",
          "appointments_per_bookable_slot": "20",
          "bookable_days": "1,2,3,4,5",
          "active": true,
          "activeString": "true",
          "mandatory": "1",
          "lead_time": "1970-01-01 04:00:00",
          "cancel_by_time": "1970-01-01 04:00:00",
          "appointment_duration": "120",
          "default_timezone": "location",
          "work_duration": "60",
          "enable_advanced_config": true,
          "field_mapping": {
            "location": "location"
            "opened_for": "contact",
            "locationRPVariable": {
              "name": "location",
              "label": "Location",
              "displayName": "location"
            },
            "contactRPVariable": {
              "name": "contact",
              "label": "Contact",
              "displayName": "contact"
            }
          },
          "use_slot_end_time_as": ""
        },
        "translations": {
          "submit_btn_text": "Select",
          "cancel_btn_text": "Cancel",
          "calendar_prev_text": "Previous",
          "select_appointment_calendar_text": "Select Appointment Calendar",
          "calendar_next_text": "Next",
          "previous_btn_text": "Previous day",
          "next_btn_text": "Next day",
          "date_input_placeholder_text": "Pick a date",
          "show_calendar_btn_text": "Show Calendar",
          "app_window_btn_text_start_time": "Start time",
          "app_window_btn_text_end_time": "End time",
          "appointment_window_aria_label_start_text": "Available appointment window ",
          "no_appointment": "No appointments",
          "time_zone": "Time zone",
          "selected_window": "The window which has been selected is ",
          "day_names": {
            "1": "Monday",
            "2": "Tuesday",
            "3": "Wednesday",
            "4": "Thursday",
            "5": "Friday",
            "6": "Saturday",
            "7": "Sunday"
          },
          "days": [
            "Sunday",
            "Monday",
            "Tuesday",
            "Wednesday",
            "Thursday",
            "Friday",
            "Saturday"
          ],
          "daysShort": [
            "Sun",
            "Mon",
            "Tue",
            "Wed",
            "Thu",
            "Fri",
            "Sat"
          ],
          "daysMin": [
            "Su",
            "Mo",
            "Tu",
            "We",
            "Th",
            "Fr",
            "Sa"
          ],
          "months": [
            "January",
            "February",
            "March",
            "April",
            "May",
            "June",
            "July",
            "August",
            "September",
            "October",
            "November",
            "December"
          ],
          "monthsShort": [
            "Jan",
            "Feb",
            "Mar",
            "Apr",
            "May",
            "Jun",
            "Jul",
            "Aug",
            "Sep",
            "Oct",
            "Nov",
            "Dec"
          ],
          "today": "Today",
          "clear": "Clear",
          "language": "en",
          "arrive_by_msg": "The agent will arrive within the selected slot."
        },
        "useRR": true,
        "locale_language": "en",
        "userTimeFormat": {
          "value": "HH:mm:ss",
          "type": "24hr"
        },
        "userDateFormatOptions": {
          "weekday": "short",
          "year": "numeric",
          "month": "short",
          "day": "numeric"
        },
        "userTimeFormatOptions": {
          "hour": "numeric",
          "minute": "numeric",
          "hourCycle": "h23"
        }
      }
    }

    Compromisso - OBTENHA /sn_apptmnt_booking/appointment/execute_rule_conditions

    Retorna o sys_id da regra de configuração do serviço de reserva de compromisso que corresponde a um sys_id de tarefa especificado ou a um conjunto de dados de item do catálogo especificado.

    O ID da tarefa ou os dados do item do catálogo aprovados são avaliados em relação às regras definidas para uma configuração de serviço. O sys_id da primeira regra para a qual essas condições correspondem é retornado. Em seguida, você deve passar esta regra sys_id para solicitações de disponibilidade subsequentes para buscar os slots corretos, que são definidos na regra.

    Você deve ter a função snc_internal ou snc_external para acessar este endpoint.

    Formato de URL

    URL com controle de versão: /api/sn_apptmnt_booking//appointment/execute_rule_conditions

    URL padrão: /api/sn_apptmnt_booking/appointment/execute_rule_conditions

    Nota:
    As versões disponíveis são especificadas em REST API Explorer . Para REST APIs com script, há informações adicionais de versão no Formulário de serviço REST com script .

    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 acessado. 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(a)
    Tabela 15. Parâmetros do corpo da solicitação
    Nome Descrição
    CatalogId Obrigatório. Sys_id do produtor de registro configurado com a configuração do serviço de reserva de compromisso.

    Tipo de dados: Cadeia de caracteres

    Tabela: Produtor de registro [sc_cat_item_producer]

    OutrosInputs Necessário se taskIdo parâmetro não foi especificado.

    Pares nome-valor de variáveis de item do catálogo para comparar com as regras definidas para uma configuração de serviço.

    Por exemplo:
    "otherInputs": {
      "u_sn_point_of_sale_variable_set": "true",
      "short_description": "Point-of-Sale Installation",
      "contact": "6816f79cc0a8016401c5a33be04be441",
      "description": "Install new point-of-sale system with cash tray",
      "location": "32e8499cdb2d2200d75270f5bf9619d6"
    }

    Tipo de dados: Objeto

    taskId Necessário se otherInputso parâmetro não foi especificado.

    Sys_id do registro da tarefa para o qual o compromisso está sendo reservado. Localizado na tabela de tarefas para a qual o compromisso está sendo reservado. . catalogIdcorresponde a uma configuração de reserva de compromisso específica e cada configuração tem uma tabela de tarefas na qual o compromisso é reservado.

    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 resposta. Oferece suporte somente a 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(a)

    Códigos de status

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

    Tabela 18. Códigos de status
    Código do status Descrição
    200 Bem-sucedido. A solicitação foi processada com sucesso.
    400 Solicitação Incorreta. Um tipo de solicitação incorreto ou uma solicitação malformada foi detectada.
    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 Descrição das informações retornadas pelo endpoint.

    Tipo de dados: Objeto

    “result": {
      "dedicatedCapacity": Boolean,
      "futureMaxBookableDays": "String",
      "ruleId": "String",
      "ruleName": "String"
    }
    result.dedicatedCapacity Sinalizador que indica se a regra associada tem capacidade dedicada. Para obter informações adicionais sobre capacidade dedicada, consulte Create service configuration rules for a service configuration.
    Valores possíveis:
    • Verdadeiro: A regra tem capacidade dedicada.
    • Falso: A capacidade é compartilhada entre a regra associada e a configuração de base. Ele também é compartilhado com outras regras que não têm capacidade dedicada.

    Tipo de dados: Booliano

    Result.futureMaxBookableDays Número máximo de dias no futuro para os quais um compromisso com a regra de correspondência pode ser reservado.

    Tipo de dados: Cadeia de caracteres

    result.ruleId Sys_id da regra de configuração do serviço de reserva de compromisso que corresponde a. taskIdou otherInputsparâmetros passados na solicitação.

    Tipo de dados: Cadeia de caracteres

    Tabela: Regra de configuração de serviço [sn_apptmnt_booking_config_rule]

    result.ruleName Nome da regra que correspondeu aos parâmetros aprovados.

    Tipo de dados: Cadeia de caracteres

    Solicitação de curl

    O exemplo de código a seguir mostra como usar o. taskIdparâmetro para fazer a solicitação de comparação de regra.

    curl "http://instance.servicenow.com/api/sn_apptmnt_booking/v1/appointment/execute_rule_conditions" \
    --request POST \
    --header "Accept:application/json" \
    --header "Content-Type:application/json" \
    --data "{
      \"catalogId\": \"e4c1116b3b810300ce8a4d72f3efc40f\",
      \"taskId\": \"ce1f397c43b861105e0dbcba6ab8f298\"}" \
    --user 'username':'password'

    Resposta:

    {
      "result": {
        "ruleId": "f7d5d98f437c21105e0dbcba6ab8f2fc",
        "ruleName": "Priority 1 rule",
        "dedicatedCapacity": true,
        "futureMaxBookableDays": "14"
      }
    }

    Solicitação de curl

    O exemplo de código a seguir mostra como usar o. otherInputsparâmetro para fazer a solicitação de comparação de regra.

    curl "http://instance.servicenow.com/api/sn_apptmnt_booking/v1/appointment/execute_rule_conditions" \
    --request POST \
    --header "Accept:application/json" \
    --header "Content-Type:application/json" \
    --data "{
      \"catalogId\": \"e4c1116b3b810300ce8a4d72f3efc40f\",
      \"otherInputs\": {
        \"u_sn_point_of_sale_variable_set\": \"true\",
        \"short_description\": \"Point-of-Sale Installation\",
        \"contact\": \"6816f79cc0a8016401c5a33be04be441\",
        \"description\": \"Install new point-of-sale system with cash tray\",
        \"location\": \"32e8499cdb2d2200d75270f5bf9619d6\"
      }
    }" \
    --user 'username':'password'

    Resposta:

    {
      "result": {
        "ruleId": " 1d1bb72b4334a1105e0dbcba6ab8f275",
        "ruleName": "Lake View SC rule",
        "dedicatedCapacity": false,
        "futureMaxBookableDays": "21"
      }
    }

    Compromisso - PUBLICAR /sn_apptmnt_booking/appointment/appointment

    Permite que você reserve e reprograme compromissos para um Gestão de serviços de campo tarefa.

    Nota:
    Este endpoint só permite que você reserve e programe compromissos que tenham horas de início e término definidas na configuração do serviço de reserva de compromisso associado e tenham slots disponíveis.

    Para obter informações adicionais sobre Gestão de serviços de campo tarefas, consulte Configuring Appointment Booking.

    Formato de URL

    URL com controle de versão: /api/sn_apptmnt_booking//appointment/appointment

    URL padrão: /api/sn_apptmnt_booking/appointment/appointment

    Nota:
    As versões disponíveis são especificadas em REST API Explorer . Para REST APIs com script, há informações adicionais de versão no Formulário de serviço REST com script .

    Parâmetros de solicitação compatíveis

    Tabela 19. Parâmetros de caminho
    Nome Descrição
    api_version Opcional. Versão do endpoint a ser acessado. 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 20. Parâmetros de consulta
    Nome Descrição
    Nenhum(a)
    Tabela 21. Parâmetros do corpo da solicitação
    Nome Descrição
    AtualEndDate Obrigatório. Data e hora de término do intervalo de compromisso no fuso horário do compromisso.

    Tipo de data: Cadeia de caracteres

    Formato: AAAA-MM-dd HH:mm:ss

    AtualStartDate Obrigatório. Data e hora de início do intervalo de compromisso no fuso horário do compromisso.

    Tipo de data: Cadeia de caracteres

    Formato: AAAA-MM-dd HH:mm:ss

    CatalogId Sys_id do produtor de registro configurado para a configuração do serviço de reserva de compromisso.

    Se você não passar este parâmetro, o endpoint tentará distinguir essas informações do taskIde. taskTableparâmetros. Se não for possível, o endpoint falhará e um erro será retornado.

    Tipo de data: Cadeia de caracteres

    Tabela: O campo Item do catálogo da tabela Configuração do serviço de agendamentos [sn_apptmnt_booking_service_config].

    EndDateUTC Obrigatório. Data e hora de término do intervalo de compromisso no fuso horário UTC.

    Tipo de data: Cadeia de caracteres

    Formato: AAAA-MM-dd HH:mm:ss

    local Obrigatório. Sys_id do registro de local relacionado ao compromisso.

    Tipo de data: Cadeia de caracteres

    Tabela: Local [cmn_location]

    Aberto para Obrigatório. Sys_id do usuário para o qual o compromisso está sendo reservado.

    Tipo de data: Cadeia de caracteres

    Tabela: Usuário [sys_user]

    reprogramar Obrigatório. Sinalizador que indica se o compromisso está sendo reprogramado.
    Valores válidos:
    • Verdadeiro: O compromisso existe no momento e está sendo reprogramado.
    • Falso: Novo compromisso.

    Tipo de dados: Booliano

    service_coconfig_rule Se o compromisso estiver sendo reservado em uma regra, o sys_id da regra de configuração de serviço.

    Tipo de data: Cadeia de caracteres

    Tabela: Regra de configuração de serviço [sn_apptmnt_booking_config_rule]

    StartDateUTC Obrigatório. Data e hora de início do intervalo de compromisso no fuso horário UTC.

    Tipo de data: Cadeia de caracteres

    Formato: AAAA-MM-dd HH:mm:ss

    taskId Obrigatório. Sys_id do registro da tarefa para o qual o compromisso está sendo reservado.

    Tipo de data: Cadeia de caracteres

    Tabela: Definida em taskTableparâmetro.

    taskTable Obrigatório. Nome da tabela que contém o registro da tarefa para a qual o compromisso está sendo reservado.

    Tipo de data: Cadeia de caracteres

    fuso horário Obrigatório. Fuso horário a ser usado ao reservar ou atualizar o intervalo de compromisso especificado.

    Formato: Formato de país/cidade ou área, como EUA/Leste

    Tipo de data: Cadeia de caracteres

    validate_request Sinalizador que indica se a solicitação de compromisso deve ser validada. Se qualquer uma das validações falhar, o endpoint falhará e retornará uma mensagem de erro que descreve o problema.
    As seguintes validações são realizadas:
    • Validação do ID do catálogo: Verifica se o foi aprovado catalogIdo parâmetro é um sys_id válido.
    • Validação de fuso horário: Verifica se o foi aprovado timezoneo parâmetro é um fuso horário válido.
    • Validação do ID da tarefa: Verifica se o foi aprovado taskIdo parâmetro é um sys_id válido e a tarefa está no estado de expedição pendente.
    • Validação de slot duplicado: Para reprogramações, se você passar pelo mesmo slot que o compromisso original, o slot será inválido, pois o slot já está tecnicamente reservado.
    • Validação de slot: Verifica se as informações de slot aprovadas correspondem ao que está configurado e se o slot tem o mesmo intervalo de tempo. Por exemplo, se na configuração um slot de duas horas estiver configurado, mas você passar por um slot de três horas, o slot não será válido. Da mesma forma, se o slot das 9:00 às 11:00 estiver disponível, mas o slot aprovado for das 9:30 às 11:30 horas, o slot aprovado será inválido.
    Valores válidos:
    • Verdadeiro: Valide as informações do compromisso.
    • Falso: Não valide as informações do compromisso.

    Tipo de dados: Booliano

    Padrão: falso

    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 22. Cabeçalhos da solicitação
    Cabeçalho Descrição
    Aceitar Formato de dados do corpo da resposta. Oferece suporte somente a application/json.
    Tipo de conteúdo Formato de dados do corpo da solicitação. Oferece suporte somente a application/json.
    Tabela 23. Cabeçalhos de resposta
    Cabeçalho Descrição
    Nenhum(a)

    Códigos de status

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

    Tabela 24. Códigos de status
    Código do status Descrição
    200 Bem-sucedido. A solicitação foi processada com sucesso.
    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 Informações sobre os resultados da solicitação de endpoint.

    Tipo de dados: Objeto

    "result": {
      "data": "String",
      "message": "String",
      "reason": "String",
      "success": Boolean
    }
    result.data Sys_id do registro de compromisso que foi criado ou reprogramado.

    Tipo de dados: Cadeia de caracteres

    resultado.mensagem Mensagem que explica se a solicitação de compromisso foi programada ou falhou. Por exemplo, as respostas de erro podem incluir:
    • O compromisso não pode ser agendado.
    • O compromisso não pode ser reagendado.
    Se a operação for bem-sucedida, uma mensagem semelhante à seguinte será retornada: Seu compromisso foi agendado com sucesso.

    Tipo de dados: Cadeia de caracteres

    motivo.resultado Informações adicionais sobre os resultados da solicitação de compromisso.

    Tipo de dados: Cadeia de caracteres

    resultado.sucesso Sinalizador que indica se a solicitação foi bem-sucedida.
    Valores possíveis:
    • Verdadeiro: Solicitação bem-sucedida
    • Falso: Falha na solicitação

    Tipo de dados: Booliano

    Solicitação de curl

    O exemplo a seguir mostra como criar um novo agendamento de compromisso para uma tarefa na tabela Ordem de serviço [wm_order].

    curl "https://instance.servicenow.com/api/sn_apptmnt_booking/appointment/appointment" \
    --request POST \
    --header "Accept:application/json" \
    --header "Content-Type:application/json" \
    --data "{
    \"startDateUTC\": \"2023-02-01 20:00:00\",
    \"endDateUTC\": \"2023-02-01 22:00:00\",
    \"actualStartDate\": \"2023-02-01 15:00:00\",
    \"actualEndDate\": \"2023-02-01 17:00:00\",
    \"taskTable\": \"wm_order\",
    \"location\": \"32e8499cdb2d2200d75270f5bf9619d6\",
    \"catalogId\": \"e4c1116b3b810300ce8a4d72f3efc40f\",
    \"openedFor\": \"ddce70866f9331003b3c498f5d3ee417\"
    \"taskId\": \"ce1f397c43b861105e0dbcba6ab8f298\",
    \"reschedule\": false,
    \"service_configuration_rule\": \"\",
    \"timezone\": \"US/Eastern\"
    }" \
    
    --user 'username':'password'

    Resposta:

    {
    "result": {
      "success": true,
      "message": "Your appointment has been scheduled successfully.",
      "reason": "Appointment created!",
      "data": "7a5f393c43b861105e0dbcba6ab8f29f"
      }
    }

    Compromisso - PUBLICAR /sn_apptmnt_booking/appointment/availability

    Retorna os slots que foram configurados na configuração do serviço de reserva de compromisso junto com sua disponibilidade.

    Se as configurações avançadas estiverem habilitadas para a configuração do serviço, o endpoint respeitará essas configurações e retornará os dados de acordo com as regras e a configuração avançada. Você também pode usar este endpoint para encontrar o primeiro slot disponível passando por get_next_available_slotparâmetro ou get_next_available_day_dataparâmetro no corpo da solicitação como verdadeiro .

    Você deve ter a função snc_internal ou snc_external para acessar este endpoint.

    Formato de URL

    URL com controle de versão: /api/sn_apptmnt_booking//appointment/availability

    URL padrão: /api/sn_apptmnt_booking/appointment/availability

    Nota:
    As versões disponíveis são especificadas em REST API Explorer . Para REST APIs com script, há informações adicionais de versão no Formulário de serviço REST com script .

    Parâmetros de solicitação compatíveis

    Tabela 25. Parâmetros de caminho
    Nome Descrição
    api_version Opcional. Versão do endpoint a ser acessado. 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 26. Parâmetros de consulta
    Nome Descrição
    Nenhum(a)
    Tabela 27. Parâmetros do corpo da solicitação
    Nome Descrição
    catalog_id Sys_id do produtor de registro configurado para a configuração do serviço de reserva de compromisso.

    Se você não passar este parâmetro, o endpoint tentará distinguir essas informações do taskIde. task_tableparâmetros. Se não for possível, o endpoint falhará e um erro será retornado.

    Tipo de dados: Cadeia de caracteres

    Tabela: No campo Item do catálogo no registro relacionado da tabela Configuração do serviço de reserva de compromisso [sn_apptmnt_booking_service_config].

    end_date Obrigatório. Data e hora de término das quais buscar compromissos.

    Tipo de dados: Cadeia de caracteres

    Formato: Fuso horário UTC e no formato AAAA-MM-dd HH:mm:ss

    fetch_days_slot Sinalizador que indica se o primeiro intervalo disponível deve ser retornado em cada dia para o intervalo de datas solicitado.
    Valores válidos:
    • Verdadeiro: Retorna o primeiro slot disponível para cada dia.
    • Falso: Não retorna o primeiro slot disponível para cada dia.

    Tipo de dados: Booliano

    Padrão: falso

    full_day Obrigatório. Sinalizador que indica se todos os compromissos do intervalo de datas especificado devem ser retornados, independentemente dos valores de tempo nas datas de início e término.
    Valores válidos:
    • Verdadeiro: Retorna todos os compromissos, independentemente dos horários especificados.
    • Falso: Retorna somente compromissos que correspondem às datas e horas especificadas.

    Tipo de dados: Booliano

    get_next_available_slot Sinalizador que indica se o primeiro intervalo de compromisso disponível deve ser retornado com a resposta, mesmo que ela não faça parte da aprovação start_datee. end_dateparâmetros.
    Valores válidos:
    • Verdadeiro: Retorna os primeiros slots de compromisso disponíveis.
    • Falso: Não retorna os primeiros slots de compromisso disponíveis.

    Tipo de dados: Booliano

    Padrão: falso

    limite Número máximo de compromissos a serem retornados.

    Tipo de dados: Número

    Valor especificado na propriedade sn_apptmnt_booking .max_appointments_ retornado ou 1000 se a propriedade estiver vazia.

    local Obrigatório. Sys_id do registro de local associado ao compromisso.

    Tipo de dados: Cadeia de caracteres

    Tabela: Local [cmn_location]

    opened_for Obrigatório. Sys_id do usuário para o qual o compromisso está sendo reservado.

    Tipo de dados: Cadeia de caracteres

    Tabela: Usuário [sys_user]

    OutrosInputs Pares nome-valor de quaisquer outros valores necessários para calcular a disponibilidade no método com script. Normalmente, esses valores são variáveis de item do catálogo. No entanto, se você personalizar sua aplicação de reserva, poderá passar todos os valores necessários para sua implementação.
    Por exemplo:
    "otherInputs": {
      "u_sn_point_of_sale_variable_set": "true",
      "short_description": "Point-of-Sale Installation",
      "contact": "6816f79cc0a8016401c5a33be04be441",
      "description": "Install new point-of-sale system with cash tray",
      "location": "32e8499cdb2d2200d75270f5bf9619d6"
    }

    Tipo de dados: Objeto

    service_config_rule Sys_id da regra de configuração de serviço a ser usada para calcular os slots de compromisso e a disponibilidade.

    Tipo de dados: Cadeia de caracteres

    Tabela: Regra de configuração de serviço [sn_apptmnt_booking_config_rule]

    start_date Obrigatório. Data e hora de início das quais buscar compromissos.

    Tipo de dados: Cadeia de caracteres

    Formato: Fuso horário UTC e no formato AAAA-MM-dd HH:mm:ss

    taskId Sys_id do registro da tarefa para o qual o compromisso está sendo reservado.

    Tipo de data: Cadeia de caracteres

    Tabela: Definida em taskTableparâmetro.

    task_table Obrigatório. Nome da tabela que contém o registro da tarefa para a qual o compromisso está sendo reservado.

    Tipo de dados: Cadeia de caracteres

    use_read_replica Sinalizador que indica se a réplica de leitura do banco de dados deve ser usada ao buscar os slots de compromisso e sua disponibilidade.
    Valores válidos:
    • Verdadeiro: Use a réplica de leitura do banco de dados.
    • Falso: Não use a réplica de leitura do banco de dados.

    Padrão: falso

    exibição Obrigatório. Ponto de origem da solicitação.
    Valores válidos: (Diferencia maiúsculas de minúsculas)
    • plataforma
    • portal

    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 28. Cabeçalhos da solicitação
    Cabeçalho Descrição
    Aceitar Formato de dados do corpo da resposta. Oferece suporte somente a application/json.
    Tipo de conteúdo Formato de dados do corpo da solicitação. Oferece suporte somente a application/json.
    Tabela 29. Cabeçalhos de resposta
    Cabeçalho Descrição
    Nenhum(a)

    Códigos de status

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

    Tabela 30. Códigos de status
    Código do status Descrição
    200 Bem-sucedido. A solicitação foi processada com sucesso.
    400 Solicitação Incorreta. Um tipo de solicitação incorreto ou uma solicitação malformada foi detectada.
    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 os compromissos que correspondem à solicitação.

    Tipo de dados: Objeto

    "result": {
     "availability": [Array], 
     "has_more": Boolean,
     "next_available_slot": {Object},
     "no_appt_available": Boolean,
     "success": Boolean,
     "time_zone": "String",
     "time_zone_display_value": "String"
    }
    resultado.disponibilidade Lista de slots de compromisso que atendem à solicitação especificada.

    Tipo de dados: Matriz de objetos

    "availability": [{
      "available": Boolean,
      "end_date": "String",
      "end_date_display": "String",
      "end_dateUTC": "String",
      "start_date": "String", 
      "start_date_display": "String",
      "start_dateUTC": "String"
    }]
    resultado.disponibilidade.disponível Sinalizador que indica se o intervalo de tempo associado está disponível.
    Valores possíveis:
    • Verdadeiro: O intervalo de tempo está disponível.
    • Falso: O intervalo de horas não está disponível.

    Tipo de dados: Booliano

    result.availability.end_date Data e hora de término do compromisso associado. O fuso horário é baseado no valor em time_zoneparâmetro.

    Tipo de dados: Cadeia de caracteres

    Formato: AAAA-MM-DD hh:mm:ss

    resultado.availability.end_date_display Exibir data e hora de término do compromisso associado. O fuso horário é baseado no valor em time_zone_display_valueparâmetro.

    Tipo de dados: Cadeia de caracteres

    Formato: Formato de data e hora do usuário solicitante.

    Result.availability.end_dateUTC Data e hora de término do compromisso associado no horário UTC.

    Tipo de dados: Cadeia de caracteres

    Formato: AAAA-MM-DD hh:mm:ss

    result.availability.start_date Data e hora de início do compromisso associado. O fuso horário é baseado no valor em time_zoneparâmetro.

    Tipo de dados: Cadeia de caracteres

    Formato: AAAA-MM-DD hh:mm:ss

    result.availability.start_date_display Exibir data e hora de início do compromisso associado. O fuso horário é baseado no valor em time_zone_display_valueparâmetro.

    Tipo de dados: Cadeia de caracteres

    Formato: Formato de data e hora do usuário solicitante.

    Result.availability.start_dateUTC Data e hora de início do compromisso associado no horário UTC.

    Tipo de dados: Cadeia de caracteres

    Formato: AAAA-MM-DD hh:mm:ss

    resultado.has_more Sinalizador que indica se há mais slots de compromisso para buscar depois de retornar o limite.
    Valores possíveis:
    • Verdadeiro: Mais slots de compromisso estão disponíveis.
    • Falso: Não há mais slots disponíveis.

    Tipo de dados: Booliano

    resultado.next_available_slot . get_next_available_sloto parâmetro foi passado como verdadeiro, detalhes sobre o primeiro slot disponível, independentemente das datas de início e término aprovadas.

    Tipo de dados: Objeto

    "next_available_slot": {
      "available": Boolean,
      "end_date": "String",
      "end_date_display": "String",
      "end_dateUTC": "String",
      "start_date": "String", 
      "start_date_display": "String",
      "start_dateUTC": "String"
    }
    resultado.next_available_slot.available Sinalizador que indica se o intervalo de tempo associado está disponível.
    Valores possíveis:
    • Verdadeiro: O intervalo de tempo está disponível.
    • Falso: O intervalo de horas não está disponível.

    Tipo de dados: Booliano

    resultado.next_available_slot.end_date Data e hora de término do compromisso associado. O fuso horário é baseado no valor em time_zoneparâmetro.

    Tipo de dados: Cadeia de caracteres

    Formato: AAAA-MM-DD hh:mm:ss

    resultado.next_available_slot.end_date_display Exibir data e hora de término do compromisso associado. O fuso horário é baseado no valor em time_zone_display_valueparâmetro.

    Tipo de dados: Cadeia de caracteres

    Resultado.next_available_slot.end_dateUTC Data e hora de término do compromisso associado no horário UTC.

    Tipo de dados: Cadeia de caracteres

    Formato: AAAA-MM-DD hh:mm:ss

    resultado.next_available_slot.start_date Data e hora de início do compromisso associado. O fuso horário é baseado no valor em time_zoneparâmetro.

    Tipo de dados: Cadeia de caracteres

    Formato: AAAA-MM-DD hh:mm:ss

    resultado.next_available_slot.start_date_display Exibir data e hora de início do compromisso associado. O fuso horário é baseado no valor em time_zone_display_valueparâmetro.

    Tipo de dados: Cadeia de caracteres

    Resultado.next_available_slot.start_dateUTC Data e hora de início do compromisso associado no horário UTC.

    Tipo de dados: Cadeia de caracteres

    Formato: AAAA-MM-DD hh:mm:ss

    result.no_appt_available Sinalizador que indica se há mais slots de compromisso disponíveis para a data e hora especificadas.
    Valores possíveis:
    • Verdadeiro: Há mais intervalos de tempo de compromisso disponíveis.
    • Falso: Não há mais intervalos de tempo de compromisso disponíveis.

    Tipo de dados: Booliano

    resultado.sucesso Sinalizador que indica se a chamada de endpoint foi bem-sucedida.
    Valores possíveis:
    • Verdadeiro: A chamada de endpoint foi bem-sucedida.
    • Falso: Falha na chamada de endpoint.

    Tipo de dados: Booliano

    resultado.time_zone Fuso horário no qual os slots de compromisso foram renderizados. Com base nos valores na configuração do serviço de reserva de compromisso.

    Tipo de dados: Cadeia de caracteres

    resultado.time_zone_display_value Exiba o fuso horário no qual os slots de compromisso foram renderizados. Com base nos valores na configuração do serviço de reserva de compromisso.

    Tipo de dados: Cadeia de caracteres

    Solicitação de curl

    O exemplo de código a seguir mostra como chamar este endpoint.

    curl "http://instance.servicenow.com/api/sn_apptmnt_booking/v1/appointment/availability" \
    --request POST \
    --header "Accept:application/json" \
    --header "Content-Type:application/json" \
    --data "{
      \"start_date\": \"2023-02-05 05:00:00\",
      \"end_date\": \"2023-02-07 04:59:59\",
      \"location\": \"32e8499cdb2d2200d75270f5bf9619d6\",
      \"catalog_id\": \"e4c1116b3b810300ce8a4d72f3efc40f\",
      \"opened_for\": \"6816f79cc0a8016401c5a33be04be441\",
      \"full_day\": false,
      \"task_table\": \"wm_order\",
      \"view\": \"portal\",
      \"get_next_available_slot\": true,
      \"use_read_replica\": true,
      \"service_config_rule\": \"f7d5d98f437c21105e0dbcba6ab8f2fc\"
    }" \
    --user 'username':'password

    Resposta:

    {
    "result": {
      "success": true,
      "availability": [
        {
          "start_date": "2023-02-06 09:00:00",
          "end_date": "2023-02-06 11:00:00",
          "start_date_display": "09:00",
          "end_date_display": "11:00",
          "start_dateUTC": "2023-02-06 14:00:00",
          "end_dateUTC": "2023-02-06 16:00:00",
          "available": false
        },
        {
          "start_date": "2023-02-06 13:00:00",
          "end_date": "2023-02-06 15:00:00",
          "start_date_display": "13:00",
          "end_date_display": "15:00",
          "start_dateUTC": "2023-02-06 18:00:00",
          "end_dateUTC": "2023-02-06 20:00:00",
          "available": false
        },
        {
          "start_date": "2023-02-06 15:00:00",
          "end_date": "2023-02-06 17:00:00",
          "start_date_display": "15:00",
          "end_date_display": "17:00",
          "start_dateUTC": "2023-02-06 20:00:00",
          "end_dateUTC": "2023-02-06 22:00:00",
          "available": false
        }
      ],
      "has_more": false,
      "no_appt_available": true,
      "time_zone": "US/Eastern",
      "time_zone_display_value": "US/Eastern",
      "next_available_slot": {
        "start_date": "2023-02-10 13:00:00",
        "end_date": "2023-02-10 15:00:00",
        "start_date_display": "13:00",
        "end_date_display": "15:00",
        "start_dateUTC": "2023-02-10 18:00:00",
        "end_dateUTC": "2023-02-10 20:00:00",
        "available": true
    }