Compromisso em aberto - GET /sn_tmf_api/appointment/searchTimeSlot

  • Versão de lançamento: Xanadu
  • Atualizado 1 de ago. de 2024
  • 4 min. de leitura
  • Retorna o intervalo de tempo disponível dentro de um período fornecido para o qual você pode reservar compromissos.

    Formato da URL

    /api/sn_tmf_api/appointment/searchTimeSlot

    Parâmetros de solicitação compatíveis

    Tabela 1. Parâmetros de caminho
    Nome Descrição
    Nenhum(a)
    Tabela 2. Parâmetros de consulta
    Nome Descrição
    start_date Obrigatório. Data e hora de início do período em que você deseja pesquisar o compromisso.

    Formato: AAAA-MM-DD 00:00:00. Por exemplo, 2025-01-31 09:00:00.

    Tipo de dados: cadeia de caracteres

    end_date Obrigatório. Data e hora de término do período de tempo em que você deseja pesquisar o compromisso.

    Formato: AAAA-MM-DD 00:00:00. Por exemplo, 2025-01-31 12:00:00.

    Tipo de dados: cadeia de caracteres

    catalog_id Obrigatório. Sys_id do produtor de registro configurado com uma configuração de serviço de agendamentos. Localizado na tabela Produtor de registro [sc_cat_item_producer].

    Tipo de dados: cadeia de caracteres

    local Sys_id do local (cmn_location) do compromisso. Localizado na tabela Local [cmn_location].

    Tipo de dados: cadeia de caracteres

    aberto_para Obrigatório. Sys_id do usuário para o qual o compromisso está sendo reservado. Tabela Contato localizado [customer_contact].

    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 códigos de status possíveis usados na REST API, consulte Códigos de resposta HTTP de REST API.

    Tabela 6. Códigos de status
    Código de status Descrição
    200 Bem-sucedido. A solicitação foi processada com sucesso.
    400 Solicitação Incorreta. Foi detectado um tipo de solicitação incorreto ou solicitação malformada.
    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
    availableTimeSlot Lista de slots de compromisso dentro do bloco especificado de tempo solicitado.

    Tipo de dados: objeto

    'availableTimeSlot': [
     { 
      'available': Boolean,
      'end_date': 'String',
      'end_date_display': 'String',
      'end_dateUTC': 'String',
      'start_date': 'String',
      'start_date_display': 'String',
      'start_dateUTC': 'String',
     }
    ]
    disponívelTempoDeTempo.disponível Sinalizador que indica se o intervalo de tempo associado está disponível.
    Valores válidos:
    • verdadeiro: o intervalo de tempo está disponível.
    • falso: o intervalo de tempo não está disponível.

    Tipo de dados: booliano

    availableTimeSlot.end_date Data e hora de término do compromisso associado. O fuso horário é baseado no valor do parâmetro time_zone.

    Tipo de dados: cadeia de caracteres

    availableTimeSlot.end_date_display Exibir data e hora de término do compromisso associado. O fuso horário é baseado no valor do parâmetro time_zone_display_value.

    Tipo de dados: cadeia de caracteres

    availableTimeSlot.end_dateUTC Data e hora de término do compromisso associado no formato de hora UTC.

    Tipo de dados: cadeia de caracteres

    disponívelTimeSlot.data_início Data e hora de início do compromisso associado. Reflete o valor do parâmetro time_zone.

    Tipo de dados: cadeia de caracteres

    availableTimeSlot.start_date_display Exibir data e hora de início do compromisso associado. Reflete o valor do parâmetro time_zone_display_value.

    Tipo de dados: cadeia de caracteres

    disponívelTimeSlot.start_dateUTC Data e hora de início do compromisso associado no formato de hora UTC.

    Tipo de dados: cadeia de caracteres

    hasMore Sinalizador que indica se há mais slots de compromisso a serem buscados após o retorno do limite.
    Valores válidos:
    • verdadeiro: mais slots de compromisso podem ser obtidos.
    • falso: não há mais slots de compromisso disponíveis.

    Tipo de dados: booliano

    noApptDisponível Sinalizador que indica se há mais slots de compromisso disponíveis para a data e hora especificadas.
    Valores válidos:
    • verdadeiro: há mais slots de compromisso disponíveis para a data e hora especificadas.
    • falso: não há mais slots de compromisso disponíveis para a data e hora especificadas.

    Tipo de dados: booliano

    resultado da pesquisa Resultados de disponibilidade de compromisso dentro do intervalo de tempo de pesquisa designado.
    Valores possíveis:
    • êxito
    • falha

    Tipo de dados: cadeia de caracteres

    status Status de conclusão da pesquisa de intervalos de tempo disponíveis.

    Tipo de dados: cadeia de caracteres

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

    Tipo de dados: cadeia de caracteres

    Solicitação de cURL

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

    curl --location --request GET 'https://instance.service-now.com/api/sn_tmf_api/appointment/searchTimeSlot?
    start_date=2024-07-10 09:00:00&end_date=2024-07-20 23:00:00&catalog_id=ada50a93f0220210f8776517d8c8e776&
    opened_for=51670151c35420105252716b7d40ddfe&location=f48b21850a0a0ba7004182b18099696d ' \
    --user 'username':'password'

    Resultado:

    {
      "searchResult": "success",
      "status": "done",
      "availableTimeSlot": [
        {
          "start_date": "2024-07-10 09:00:00",
          "end_date": "2024-07-10 12:00:00",
          "start_date_display": "09:00",
          "end_date_display": "12:00",
          "start_dateUTC": "2024-07-10 16:00:00",
          "end_dateUTC": "2024-07-10 19:00:00",
          "available": false
        },...
        {
          "start_date": "2024-07-11 13:00:00",
          "end_date": "2024-07-11 16:00:00",
          "start_date_display": "13:00",
          "end_date_display": "16:00",
          "start_dateUTC": "2024-07-11 20:00:00",
          "end_dateUTC": "2024-07-11 23:00:00",
          "available": true
        },
        {
          "start_date": "2024-07-12 09:00:00",
          "end_date": "2024-07-12 12:00:00",
          "start_date_display": "09:00",
          "end_date_display": "12:00",
          "start_dateUTC": "2024-07-12 16:00:00",
          "end_dateUTC": "2024-07-12 19:00:00",
          "available": true
        },
        {
          "start_date": "2024-07-12 13:00:00",
          "end_date": "2024-07-12 16:00:00",
          "start_date_display": "13:00",
          "end_date_display": "16:00",
          "start_dateUTC": "2024-07-12 20:00:00",
          "end_dateUTC": "2024-07-12 23:00:00",
          "available": true
        },...
        {
          "start_date": "2024-07-19 13:00:00",
          "end_date": "2024-07-19 16:00:00",
          "start_date_display": "13:00",
          "end_date_display": "16:00",
          "start_dateUTC": "2024-07-19 20:00:00",
          "end_dateUTC": "2024-07-19 23:00:00",
          "available": true
        }
      ],
      "hasMore": false,
      "noApptAvailable": false,
      "timeZone": "US/Arizona"
    }