약속 API

  • 릴리스 버전: Zurich
  • 업데이트 날짜 2025년 07월 31일
  • 소요 시간: 50분
  • 약속 API는 약속 예약 애플리케이션과 상호작용하기 위한 엔드포인트를 제공합니다. 이 API를 사용하여 약속을 예약하거나 일정을 조정하고, 사용 가능한 약속 슬롯을 확인하고, 약속 예약 구성 상세 정보를 가져옵니다.

    이 API를 사용하기 전에 약속 예약 구성 및 서비스 구성을 설정해야 합니다. 또한 약속이 예약되고 있는 작업이 이미 존재해야 합니다. 자세한 내용은 Configuring Appointment Booking 문서를 참조하십시오.

    약속 API에는 약속 예약 플러그인(com.snc.appointment_booking)이 필요하며 sn_apptmnt_booking 네임스페이스 내에서 제공됩니다. 이 API에 액세스하려면 snc_internal 역할이 있어야 합니다.

    약속 - GET /sn_apptmnt_booking/약속/달력

    약속을 예약할 수 있는 시간 범위를 반환합니다. 반환 결과는 약속 예약 서비스 구성에 구성된 리드 타임과 향후 예약 가능한 최대 날짜를 적용합니다.

    리드 시간 및 향후 예약 가능한 최대 날짜 구성에 대한 자세한 내용은 문서를 참조하십시오 Create or modify an application configuration for Appointment Booking.

    이 엔드포인트에 액세스하려면 snc_internal 또는 snc_external 역할이 있어야 합니다.

    URL 형식

    버전이 지정된 URL: /api/sn_apptmnt_booking/{api_version}/appointment/calendar

    기본 URL: /api/sn_apptmnt_booking/appointment/calendar

    주:
    사용 가능한 버전은 REST API 탐색기에 지정됩니다. 스크립트 기반 REST API의 경우 스크립트 기반 REST 서비스 양식에 추가 버전 정보가 있습니다.

    지원되는 요청 매개변수

    표 1. 경로 매개변수
    이름 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다.

    데이터 유형: 문자열

    표 2. 쿼리 매개변수
    이름 설명
    catalog_id 필수 약속 예약 서비스 구성으로 구성된 기록 생성자의 Sys_id.

    테이블: 기록 생성자 [sc_cat_item_producer]

    데이터 유형: 문자열

    위치 필수 약속 위치의 Sys_id입니다.

    테이블: 위치 [cmn_location]

    데이터 유형: 문자열

    opened_for 필수 약속이 예약되는 사용자의 Sys_id입니다.

    테이블: 사용자 [sys_user]

    데이터 유형: 문자열

    표 3. 요청 본문 매개변수
    이름 설명
    없음

    헤더

    다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.

    표 4. 요청 헤더
    헤더 설명
    수용 응답 본문의 데이터 형식입니다. application/json만 지원합니다.
    표 5. 응답 헤더
    헤더 설명
    없음

    상태 코드

    다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.

    표 6. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    400 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수

    이름 설명
    결과 엔드포인트 요청의 결과에 대한 정보입니다.

    데이터 유형: 객체

    "result": {
      "range_end": "String",
      "range_start": "String"
    }
    result.range_end 약속을 예약할 수 있는 범위의 끝입니다.

    범위 종료 = 오늘 + 향후 예약 가능한 최대 일

    데이터 유형: 문자열

    형식: 내부 날짜/시간 형식의 약속 시간대입니다.

    result.range_start 약속을 예약할 수 있는 범위의 시작입니다.

    범위 시작 = 오늘 + 리드 타임

    데이터 유형: 문자열

    형식: 내부 날짜/시간 형식의 약속 시간대입니다.

    cURL 요청

    다음 코드 예제에서는 이 끝점을 호출하는 방법을 보여 줍니다.

    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'

    결과:

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

    약속 - GET /sn_apptmnt_booking/약속/구성

    지정된 약속 예약 서비스 구성에 정의된 구성을 반환합니다.

    또한 약속 예약 위젯에서 슬롯을 렌더링하는 데 필요한 번역과 사용자 날짜 및 시간 기본 설정을 반환합니다.

    이 엔드포인트에 액세스하려면 snc_internal 또는 snc_external 역할이 있어야 합니다.

    URL 형식

    버전이 지정된 URL: /api/sn_apptmnt_booking/{api_version}/appointment/configuration

    기본 URL: /api/sn_apptmnt_booking/appointment/configuration

    주:
    사용 가능한 버전은 REST API 탐색기에 지정됩니다. 스크립트 기반 REST API의 경우 스크립트 기반 REST 서비스 양식에 추가 버전 정보가 있습니다.

    지원되는 요청 매개변수

    표 7. 경로 매개변수
    이름 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다.

    데이터 유형: 문자열

    표 8. 쿼리 매개변수
    이름 설명
    catalog_id 필수 약속 예약 서비스 구성으로 구성된 기록 생성자의 Sys_id입니다.

    데이터 유형: 문자열

    테이블: 기록 생성자 [sc_cat_item_producer]

    표 9. 요청 본문 매개변수
    이름 설명
    없음

    헤더

    다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.

    표 10. 요청 헤더
    헤더 설명
    수용 응답 본문의 데이터 형식입니다. application/json만 지원합니다.
    표 11. 응답 헤더
    헤더 설명
    없음

    상태 코드

    다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.

    표 12. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    400 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수

    이름 설명
    결과 엔드포인트 요청의 결과입니다.

    데이터 유형: 객체

    "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"
    }
    결과.활성 연결된 카탈로그 ID에 대한 서비스 구성 설정이 활성 상태인지 여부를 나타내는 플래그입니다.
    가능한 값:
    • true: 카탈로그 ID에 대한 서비스 구성 설정이 활성 상태입니다.
    • false: 카탈로그 ID에 대한 서비스 구성 설정이 활성화되지 않았습니다.

    데이터 유형: 부울

    result.active_string 관련 카탈로그 ID에 대한 서비스 구성 설정의 상태에 대한 텍스트 표현입니다.

    데이터 유형: 문자열

    result.advanced_calendar_view_portal 고급 달력 뷰가 포털에 표시되는지 또는 기본 뷰를 표시할지를 나타내는 플래그입니다. 고급 달력 뷰에 대한 자세한 내용은 다음 문서를 참조하십시오 Create or modify an application configuration for Appointment Booking.
    가능한 값:
    • true: 고급 달력 뷰가 포털에 표시됩니다.
    • false: 포털에 기본 뷰가 표시됩니다.

    데이터 유형: 부울

    result.auto_acceptance 약속이 수락됨 상태로 자동 전환되는지 여부를 나타내는 플래그입니다.
    가능한 값:
    • true: 약속이 자동으로 수락됨 상태로 전환됩니다.
    • false: 에이전트가 수동으로 약속을 수락해야 합니다.

    데이터 유형: 부울

    result.locale_language 사용자의 언어 설정입니다.

    데이터 유형: 문자열

    형식: ISO 639.1 언어 코드

    result.service_config 서비스 구성에 대한 상세 정보입니다.

    데이터 유형: 객체

    "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 약속 예약 서비스 구성의 활성 상태를 나타내는 플래그입니다.
    가능한 값:
    • true: 활성
    • false: 비활성

    데이터 유형: 부울

    result.service_config.active_string 약속 예약 서비스 구성의 상태를 나타내는 텍스트 표현입니다.

    데이터 유형: 문자열

    result.service_config.appointment_booking_config 관련 카탈로그 ID에 대한 약속 예약 서비스 구성 설정의 Sys_id.

    데이터 유형: 문자열

    테이블: 약속 예약 서비스 구성 [sn_apptmnt_booking_service_config]

    result.service_config.appointment_duration 약속의 길이입니다.

    데이터 유형: 문자열

    단위: 분

    result.service_config.appointments_per_bookable_slot 관련 슬롯에 예약할 수 있는 약속 수입니다.

    데이터 유형: 문자열

    result.service_config.bookable_days 약속을 예약할 수 있는 요일을 나타내는 쉼표로 구분된 값입니다.

    일은 월요일 = 1, 일요일 = 7인 정수로 표시됩니다.

    데이터 유형: 문자열

    result.service_config.cancel_by_time 약속 시작 전에 사용자가 약속을 취소할 수 있는 최소 시간입니다. 예를 들어 오후 1:00에 예약되어 있고 시간별로 2시간 취소가 있는 경우 오전 10:59까지 약속을 취소해야 합니다.

    형식: 이 값은 "1970-01-01 00:00:00"의 날짜 및 시간 차이입니다. 따라서 반환된 값이 "1970-01-01 04:00:00"이면 모임이 시작되기 4시간 전에 회의실을 취소해야 함을 의미합니다.

    데이터 유형: 문자열

    result.service_config.default_timezone 약속이 예약된 시간대 구성입니다.
    가능한 값:
    • 위치: 약속 위치의 표준 시간대를 사용합니다.
    • 사용자: 약속이 예약된 사람의 시간대를 사용합니다.

    데이터 유형: 문자열

    result.service_config.enable_advanced_config 약속을 예약할 때 약속 예약 구성 및 약속 예약 규칙을 고려하는지 여부를 나타내는 플래그입니다. 자세한 내용은 Create appointment booking advanced configuration 문서를 참조하십시오.
    가능한 값:
    • true: 약속을 예약할 때 약속 예약 구성 및 약속 예약 규칙이 고려됩니다.
    • false: 약속을 예약할 때 약속 예약 구성 및 약속 예약 규칙을 고려하지 않습니다.

    데이터 유형: 부울

    result.service_config.field_mapping 약속 예약에 사용되는 위치 및 연락처 값에 매핑된 카탈로그 변수에 대한 상세 정보입니다.

    데이터 유형: 객체

    "field_mapping": {
      "contact": "String",
      "contactRPVariable": {Object},
      "location": "String",
      "locationRPVariable": {Object}
    }
    result.service_config.field_mapping.문의 연락처 값을 포함하는 카탈로그 변수의 이름입니다.

    데이터 유형: 문자열

    result.service_config.field_mapping 입니다.contactRPVariable 위치 카탈로그 변수 데이터에 대한 상세 정보입니다.

    데이터 유형: 객체

    "contactRPVariable": {
      "displayName": "String",
      "label": "String",
      "name": "String"
    }
    result.service_config.field_mapping 입니다.contactRPVariable.displayName 연락처 카탈로그 변수의 표시 이름입니다.

    데이터 유형: 문자열

    result.service_config.field_mapping 입니다.contactRPVariable.label 연락처 카탈로그 변수의 레이블입니다.

    데이터 유형: 문자열

    result.service_config.field_mapping 입니다.contactRPVariable.name 연락처 카탈로그 변수의 이름입니다.

    데이터 유형: 문자열

    result.service_config.field_mapping.위치 위치 값을 포함하는 카탈로그 변수의 이름입니다.

    데이터 유형: 문자열

    result.service_config.field_mapping 입니다.위치RPVariable 위치 카탈로그 변수 데이터에 대한 상세 정보입니다.

    데이터 유형: 객체

    "locationRPVariable": {
      "displayName": "String",
      "label": "String",
      "name": "String"
    }
    result.service_config.field_mapping 입니다.locationRPVariable.displayName 위치 카탈로그 변수의 표시 이름입니다.

    데이터 유형: 문자열

    result.service_config.field_mapping 입니다.locationRPVariable.label 위치 카탈로그 변수의 레이블입니다.

    데이터 유형: 문자열

    result.service_config.field_mapping 입니다.locationRPVariable.name 위치 카탈로그 변수의 이름입니다.

    데이터 유형: 문자열

    result.service_config. future_bookable_max_days 약속을 예약할 수 있는 미래의 최대 일수입니다.

    데이터 유형: 문자열

    result.service_config.리드_타임 약속 시작 전에 사용자가 약속을 예약할 수 있는 최소 시간입니다. 예를 들어, 오후 1:00에 약속을 예약하고 싶은데 리드 타임이 2시간인 경우 오전 10:59까지 약속을 예약해야 합니다.

    형식: 이 값은 "1970-01-01 00:00:00"의 날짜 및 시간 차이입니다. 따라서 반환된 값이 "1970-01-01 04:00:00"이면 회의가 시작되기 4시간 전에 회의실을 예약해야 함을 의미합니다.

    데이터 유형: 문자열

    result.service_config.필수 약속이 필수인지 여부를 나타내는 표시기입니다.
    가능한 값:
    • 0: 예약이 필수가 아닙니다.
    • 1: 예약은 필수입니다.

    데이터 유형: 문자열

    result.service_config.use_slot_end_time_as 관련 약속에 대해 에이전트가 언제 도착하거나 예약된 작업을 완료할 것인지에 대한 표시기입니다.
    가능한 값:
    • arrive_by: 에이전트가 지정된 시간 슬롯 내에 약속 위치에 도착합니다.
    • complete_by: 에이전트가 지정된 시간 슬롯 내에 약속에 대한 작업을 완료합니다.
    • 비어 있음: completed_by와 동일합니다.

    데이터 유형: 문자열

    result.service_config.작업_기간 약속을 처리하는 데 걸리는 시간입니다. 작업 기간은 약속 예약 서비스 구성에서 구성됩니다. 자세한 내용은 Create or modify service configuration for Appointment Booking 문서를 참조하십시오.

    데이터 유형: 문자열

    단위: 분

    result.task_table 약속을 예약할 수 있는 테이블의 이름입니다. 약속 예약 서비스 구성에서 구성됩니다.

    데이터 유형: 문자열

    result.translations 약속 예약 위젯에서 사용하는 텍스트 번역의 이름-값 쌍입니다. 작업, 메시지, 요일, 월에 대해 번역된 값을 포함합니다.

    데이터 유형: 객체

    result.userDateFormatOptions JS 날짜 객체를 렌더링하는 데 필요한 날짜 형식 옵션에 대해 설명합니다. 이러한 값은 약속 예약 상수에서 설정되며 수정할 수 없습니다.
    데이터 유형: 객체
    "userDateFormatOptions": {
      "day": "String",
      "month": "String",
      "week": "String",
      "weekday": "String"
    }
    result.userDateFormatOptions.day 일 날짜 형식입니다.

    데이터 유형: 문자열

    형식: 숫자(값 또는 1-31)

    result.userDateFormatOptions.month 월 날짜 형식입니다.

    데이터 유형: 문자열

    형식: 짧음(1월, 2월, 3월 등의 값)

    result.userDateFormatOptions.주 주 날짜 형식입니다.

    데이터 유형: 문자열

    형식: 숫자(1-5 값)

    result.userDateFormatOptions.weekday 평일 날짜 형식입니다.

    데이터 유형: 문자열

    형식: Short(월, 화, 수 등의 값)

    결과.useRR sn_apptmnt_booking.use_read_replica_from_ui 속성의 값입니다. 이 값은 UI에서 쿼리가 수행될 때 읽기 복제본 데이터베이스를 사용하여 약속 슬롯을 가져올지 여부를 정의합니다.
    가능한 값:
    • true: 읽기 복제본 데이터베이스를 사용하여 슬롯을 가져옵니다.
    • false: 읽기 복제본 데이터베이스를 사용하여 슬롯을 가져오지 않습니다.

    데이터 유형: 부울

    result.userTimeFormat 사용자의 시간 형식을 설명합니다.

    사용자는 엔드포인트 요청을 하는 사람입니다. 플랫폼을 통해 이루어지면 에이전트입니다. 포털을 통해 만든 경우 고객입니다.

    데이터 유형: 객체
    "userTimeFormat": {
      "type": "String",
      "value": "String"
    }
    결과.userTimeFormat.type 시간 형식의 유형입니다.
    가능한 값:
    • 12hr
    • 24hr

    데이터 유형: 문자열

    result.userTimeFormat.value 기본 시간 형식(예: "HH:mm:ss")입니다.

    데이터 유형: 문자열

    result.userTimeFormatOptions JS 시간 객체를 렌더링하는 데 필요한 시간 형식 옵션에 대해 설명합니다. 이러한 값은 약속 예약 상수에서 설정되며 수정할 수 없습니다.
    데이터 유형: 객체
    "userTimeFormatOptions": {
      "hour": "String",
      "hourCycle": "String",
      "minute": "String"
    }
    result.userTimeFormatOptions.hour 시간 형식입니다.

    형식: 숫자(값 1-12)

    result.userTimeFormatOptions.hourCycle 시간 주기의 형식입니다.

    h23만 가능한 값입니다.

    result.userTimeFormatOptions.minute 분 형식으로 지정합니다.

    형식: 숫자(1-60 값)

    result.view_scale 서비스 구성에서 구성된 뷰입니다.
    가능한 값:

    데이터 유형: 문자열

    cURL 요청

    다음 코드 예제에서는 이 끝점을 호출하는 방법을 보여 줍니다.

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

    응답:

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

    약속 - GET /sn_apptmnt_booking/약속/execute_rule_conditions

    지정된 작업 sys_id 또는 지정된 카탈로그 항목 데이터 세트와 일치하는 약속 예약 서비스 구성 규칙의 sys_id 반환합니다.

    전달된 작업 ID 또는 카탈로그 항목 데이터는 서비스 구성에 대해 정의된 규칙에 따라 평가됩니다. 이러한 조건이 일치하는 첫 번째 규칙의 sys_id 반환됩니다. 그런 다음 이 규칙을 후속 가용성 요청에 sys_id 전달하여 규칙에 정의된 올바른 슬롯을 가져와야 합니다.

    이 엔드포인트에 액세스하려면 snc_internal 또는 snc_external 역할이 있어야 합니다.

    URL 형식

    버전이 지정된 URL: /api/sn_apptmnt_booking/{api_version}/appointment/execute_rule_conditions

    기본 URL: /api/sn_apptmnt_booking/appointment/execute_rule_conditions

    주:
    사용 가능한 버전은 REST API 탐색기에 지정됩니다. 스크립트 기반 REST API의 경우 스크립트 기반 REST 서비스 양식에 추가 버전 정보가 있습니다.

    지원되는 요청 매개변수

    표 13. 경로 매개변수
    이름 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다.

    데이터 유형: 문자열

    표 14. 쿼리 매개변수
    이름 설명
    없음
    표 15. 요청 본문 매개변수
    이름 설명
    카탈로그 ID 필수 약속 예약 서비스 구성으로 구성된 기록 생성자의 Sys_id입니다.

    데이터 유형: 문자열

    테이블: 기록 생성자 [sc_cat_item_producer]

    기타 입력 매개 변수를 지정하지 않은 경우 taskId 필요합니다.

    서비스 구성에 대해 정의된 규칙과 비교하기 위한 카탈로그 항목 변수의 이름-값 쌍입니다.

    예:
    "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"
    }

    데이터 유형: 객체

    taskId 매개 변수를 지정하지 않은 경우 otherInputs 필요합니다.

    약속이 예약되는 작업 기록의 Sys_id입니다. 약속이 예약되는 작업 테이블에 있습니다. 는 catalogId 특정 약속 예약 구성에 해당하며 모든 구성에는 약속이 예약된 작업 테이블이 있습니다.

    데이터 유형: 문자열

    헤더

    다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.

    표 16. 요청 헤더
    헤더 설명
    수용 응답 본문의 데이터 형식입니다. application/json만 지원합니다.
    컨텐츠-형식 요청 본문의 데이터 형식입니다. application/json만 지원합니다.
    표 17. 응답 헤더
    헤더 설명
    없음

    상태 코드

    다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.

    표 18. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    400 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수

    이름 설명
    결과 엔드포인트에서 반환하는 정보에 대한 설명입니다.

    데이터 유형: 객체

    “result": {
      "dedicatedCapacity": Boolean,
      "futureMaxBookableDays": "String",
      "ruleId": "String",
      "ruleName": "String"
    }
    result.dedicatedCapacity 연결된 규칙에 전용 용량이 있는지 여부를 나타내는 플래그입니다. 전용 용량에 대한 자세한 내용은 다음 문서를 참조하십시오 Create service configuration rules for a service configuration.
    가능한 값:
    • true: 규칙에 전용 용량이 있습니다.
    • false: 연결된 규칙과 기본 구성 간에 용량이 공유됩니다. 또한 전용 용량이 없는 다른 규칙과도 공유됩니다.

    데이터 유형: 부울

    결과.futureMaxBookableDays 일치 규칙이 있는 약속을 예약할 수 있는 미래의 최대 일수입니다.

    데이터 유형: 문자열

    result.ruleId 요청에 전달된 OR otherInputs 매개변수와 taskId 일치하는 약속 예약 서비스 구성 규칙의 Sys_id.

    데이터 유형: 문자열

    테이블: 서비스 구성 규칙 [sn_apptmnt_booking_config_rule]

    result.ruleName 전달된 매개변수와 일치하는 규칙의 이름입니다.

    데이터 유형: 문자열

    cURL 요청

    다음 코드 예제에서는 매개 변수를 사용하여 taskId 규칙 비교 요청을 수행하는 방법을 보여 줍니다.

    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'

    응답:

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

    cURL 요청

    다음 코드 예제에서는 매개 변수를 사용하여 otherInputs 규칙 비교 요청을 수행하는 방법을 보여 줍니다.

    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'

    응답:

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

    약속 - POST /sn_apptmnt_booking/약속/약속

    작업을 위해 약속을 예약하고 일정을 조정할 수 있습니다 현장 서비스 관리 .

    주:
    이 엔드포인트를 사용하면 관련 약속 예약 서비스 구성에 정의된 시작 시간과 종료 시간과 사용 가능한 슬롯이 있는 약속만 예약하고 예약할 수 있습니다.

    작업에 대한 현장 서비스 관리 자세한 내용은 다음 문서를 참조하십시오 Configuring Appointment Booking.

    URL 형식

    버전이 지정된 URL: /api/sn_apptmnt_booking/{api_version}/appointment/appointment

    기본 URL: /api/sn_apptmnt_booking/appointment/appointment

    주:
    사용 가능한 버전은 REST API 탐색기에 지정됩니다. 스크립트 기반 REST API의 경우 스크립트 기반 REST 서비스 양식에 추가 버전 정보가 있습니다.

    지원되는 요청 매개변수

    표 19. 경로 매개변수
    이름 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다.

    데이터 유형: 문자열

    표 20. 쿼리 매개변수
    이름 설명
    없음
    표 21. 요청 본문 매개변수
    이름 설명
    실제 종료 날짜 필수 약속의 시간대에 있는 약속 슬롯의 종료 날짜 및 시간입니다.

    날짜 유형: 문자열

    형식: YYYY-MM-dd HH:mm:ss

    실제 시작 날짜 필수 약속의 시간대에 있는 약속 슬롯의 시작 날짜 및 시간입니다.

    날짜 유형: 문자열

    형식: YYYY-MM-dd HH:mm:ss

    카탈로그 ID 약속 예약 서비스 구성에 대해 구성된 기록 생성자의 Sys_id입니다.

    이 매개 변수를 전달하지 않으면 엔드포인트는 and taskTable 매개 변수에서 taskId 이 정보를 식별하려고 시도합니다. 할 수 없는 경우 엔드포인트가 실패하고 오류가 반환됩니다.

    날짜 유형: 문자열

    테이블: 약속 예약 서비스 구성 [sn_apptmnt_booking_service_config] 테이블의 카탈로그 항목 필드입니다.

    종료 날짜UTC 필수 약속 슬롯의 종료 날짜 및 시간(UTC 시간대)입니다.

    날짜 유형: 문자열

    형식: YYYY-MM-dd HH:mm:ss

    위치 필수 약속과 관련된 위치 기록의 Sys_id입니다.

    날짜 유형: 문자열

    테이블: 위치 [cmn_location]

    openedFor 필수 약속이 예약되는 사용자의 Sys_id입니다.

    날짜 유형: 문자열

    테이블: 사용자 [sys_user]

    reschedule 필수 약속 일정이 조정되고 있는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 약속이 현재 존재하며 일정을 조정하는 중입니다.
    • false: 새 약속.

    데이터 유형: 부울

    service_cofig_rule 규칙에 따라 약속이 예약되는 경우 서비스 구성 규칙의 sys_id입니다.

    날짜 유형: 문자열

    테이블: 서비스 구성 규칙 [sn_apptmnt_booking_config_rule]

    시작 날짜UTC 필수 약속 슬롯의 시작 날짜 및 시간(UTC 시간대)입니다.

    날짜 유형: 문자열

    형식: YYYY-MM-dd HH:mm:ss

    taskId 필수 약속이 예약되는 작업 기록의 Sys_id입니다.

    날짜 유형: 문자열

    테이블: 매개변수에 정의되어 있습니다 taskTable .

    taskTable 필수 약속이 예약되는 작업 기록이 포함된 테이블의 이름입니다.

    날짜 유형: 문자열

    시간대 필수 지정된 약속 슬롯을 예약하거나 업데이트할 때 사용할 시간대입니다.

    형식: 국가/도시 또는 지역 형식(예: 미국/동부)

    날짜 유형: 문자열

    validate_request 약속 요청을 확인할지 여부를 나타내는 플래그입니다. 유효성 검사 중 하나라도 실패하면 엔드포인트가 실패하고 문제를 설명하는 오류 메시지를 반환합니다.
    다음과 같은 유효성 검사가 수행됩니다.
    • 카탈로그 ID 확인: 전달된 catalogId 매개변수가 유효한 sys_id인지 확인합니다.
    • 시간대 유효성 검사: 전달된 timezone 매개변수가 유효한 시간대인지 확인합니다.
    • 작업 ID 확인: 전달된 taskId 매개변수가 유효한 sys_id이고 작업이 디스패치 보류 중 상태인지 확인합니다.
    • 중복 슬롯 확인: 일정 조정의 경우 원래 약속과 동일한 슬롯을 전달하면 슬롯이 기술적으로 이미 예약되어 있으므로 슬롯이 유효하지 않습니다.
    • 슬롯 확인: 전달된 슬롯 정보가 구성된 정보와 일치하고 슬롯의 시간 범위가 동일한지 확인합니다. 예를 들어, 구성에서 2시간 슬롯이 구성되었지만 3시간 슬롯을 전달하는 경우 슬롯이 유효하지 않습니다. 마찬가지로 오전 9:00부터 오전 11:00까지 슬롯을 사용할 수 있지만 전달된 슬롯이 오전 9:30에서 오전 11:30까지인 경우 전달된 슬롯은 유효하지 않습니다.
    유효한 값은 다음과 같습니다.
    • true: 약속 정보를 확인합니다.
    • false: 약속 정보의 유효성을 검사하지 않습니다.

    데이터 유형: 부울

    기본값: false

    헤더

    다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.

    표 22. 요청 헤더
    헤더 설명
    수용 응답 본문의 데이터 형식입니다. application/json만 지원합니다.
    컨텐츠-형식 요청 본문의 데이터 형식입니다. application/json만 지원합니다.
    표 23. 응답 헤더
    헤더 설명
    없음

    상태 코드

    다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.

    표 24. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수

    이름 설명
    결과 엔드포인트 요청의 결과에 대한 정보입니다.

    데이터 유형: 객체

    "result": {
      "data": "String",
      "message": "String",
      "reason": "String",
      "success": Boolean
    }
    결과.데이터 새로 생기거나 일정이 조정된 약속 기록의 Sys_id입니다.

    데이터 유형: 문자열

    결과.메시지 약속 요청이 예약되었는지 또는 실패했는지를 설명하는 메시지입니다. 예를 들어 오류 응답에는 다음이 포함될 수 있습니다.
    • 약속을 예약할 수 없습니다.
    • 약속 일정을 조정할 수 없습니다.
    작업이 성공하면 다음과 유사한 메시지가 반환됩니다. 약속이 성공적으로 예약되었습니다.

    데이터 유형: 문자열

    결과.이유 약속 요청 결과에 대한 추가 정보입니다.

    데이터 유형: 문자열

    결과.성공 요청이 성공했는지 여부를 나타내는 플래그입니다.
    가능한 값:
    • true: 요청 성공함
    • false: 요청 실패

    데이터 유형: 부울

    cURL 요청

    다음 예는 작업 주문 [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'

    응답:

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

    약속 - POST /sn_apptmnt_booking/약속/가용성

    약속 예약 서비스 구성에서 구성된 슬롯을 해당 가용성과 함께 반환합니다.

    서비스 구성에 고급 구성이 활성화된 경우 엔드포인트는 이러한 구성을 적용하고 규칙 및 고급 구성에 따라 데이터를 반환합니다. 이 엔드포인트를 사용하여 요청 본문의 매개변수 또는 get_next_available_day_data 매개변수를 true로 전달 get_next_available_slot 하여 사용 가능한 첫 번째 슬롯을 찾을 수도 있습니다.

    이 엔드포인트에 액세스하려면 snc_internal 또는 snc_external 역할이 있어야 합니다.

    URL 형식

    버전이 지정된 URL: /api/sn_apptmnt_booking/{api_version}/appointment/availability

    기본 URL: /api/sn_apptmnt_booking/appointment/availability

    주:
    사용 가능한 버전은 REST API 탐색기에 지정됩니다. 스크립트 기반 REST API의 경우 스크립트 기반 REST 서비스 양식에 추가 버전 정보가 있습니다.

    지원되는 요청 매개변수

    표 25. 경로 매개변수
    이름 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다.

    데이터 유형: 문자열

    표 26. 쿼리 매개변수
    이름 설명
    없음
    표 27. 요청 본문 매개변수
    이름 설명
    catalog_id 약속 예약 서비스 구성에 대해 구성된 기록 생성자의 Sys_id입니다.

    이 매개 변수를 전달하지 않으면 엔드포인트는 and task_table 매개 변수에서 taskId 이 정보를 식별하려고 시도합니다. 할 수 없는 경우 엔드포인트가 실패하고 오류가 반환됩니다.

    데이터 유형: 문자열

    테이블: 약속 예약 서비스 구성 [sn_apptmnt_booking_service_config] 테이블의 관련 기록에 있는 카탈로그 항목 필드

    end_date 필수 약속을 가져올 종료 날짜 및 시간입니다.

    데이터 유형: 문자열

    형식: UTC 시간대 및 YYYY-MM-dd HH:mm:ss 형식

    fetch_days_slot 요청된 날짜 범위에 대해 매일 사용 가능한 첫 번째 슬롯을 반환할지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 매일 사용 가능한 첫 번째 슬롯을 반환합니다.
    • false: 매일 사용 가능한 첫 번째 슬롯을 반환하지 않습니다.

    데이터 유형: 부울

    기본값: false

    full_day 필수 시작 및 종료 날짜의 시간 값에 관계없이 전달된 지정된 날짜 범위에 대한 모든 약속을 반환할지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 지정된 시간에 관계없이 모든 약속을 반환합니다.
    • false: 지정된 날짜 및 시간에 해당하는 약속만 반환합니다.

    데이터 유형: 부울

    get_next_available_slot 통과 start_date 된 약속 슬롯 및 end_date 매개변수의 일부가 아니더라도, 응답과 함께 사용 가능한 첫 번째 약속 슬롯을 반환할지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 사용 가능한 첫 번째 약속 슬롯을 반환합니다.
    • false: 사용 가능한 첫 번째 약속 슬롯을 반환하지 않습니다.

    데이터 유형: 부울

    기본값: false

    제한 반환할 최대 약속 수입니다.

    데이터 유형: 숫자

    기본값: sn_apptmnt_booking .max_appointments_ 반환된 속성에 지정된 값 또는 속성이 비어 있는 경우 1000.

    위치 필수 약속과 연결된 위치 기록의 Sys_id입니다.

    데이터 유형: 문자열

    테이블: 위치 [cmn_location]

    opened_for 필수 약속이 예약되는 사용자의 Sys_id입니다.

    데이터 유형: 문자열

    테이블: 사용자 [sys_user]

    기타 입력 스크립팅된 메서드에서 가용성을 계산하는 데 필요한 다른 값의 이름-값 쌍입니다. 일반적으로 이러한 값은 카탈로그 항목 변수이지만 예약 애플리케이션을 사용자 지정하는 경우 구현에 필요한 모든 값을 전달할 수 있습니다.
    예:
    "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"
    }

    데이터 유형: 객체

    service_config_rule 약속 슬롯 및 가용성을 계산하는 데 사용할 서비스 구성 규칙의 Sys_id입니다.

    데이터 유형: 문자열

    테이블: 서비스 구성 규칙 [sn_apptmnt_booking_config_rule]

    start_date 필수 약속을 가져올 시작 날짜 및 시간입니다.

    데이터 유형: 문자열

    형식: UTC 시간대 및 YYYY-MM-dd HH:mm:ss 형식

    taskId 약속이 예약되는 작업 기록의 Sys_id입니다.

    날짜 유형: 문자열

    테이블: 매개변수에 정의되어 있습니다 taskTable .

    task_table 필수 약속이 예약되는 작업 기록이 포함된 테이블의 이름입니다.

    데이터 유형: 문자열

    use_read_replica 약속 슬롯과 가용성을 가져올 때 데이터베이스의 읽기 복제본을 사용할지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 데이터베이스의 읽기 복제본을 사용합니다.
    • false: 데이터베이스의 읽기 전용 복제본을 사용하지 않습니다.

    기본값: false

    필수 요청의 시작 지점입니다.
    유효한 값: (대/소문자 구분)
    • 플랫폼
    • 포털

    데이터 유형: 문자열

    헤더

    다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.

    표 28. 요청 헤더
    헤더 설명
    수용 응답 본문의 데이터 형식입니다. application/json만 지원합니다.
    컨텐츠-형식 요청 본문의 데이터 형식입니다. application/json만 지원합니다.
    표 29. 응답 헤더
    헤더 설명
    없음

    상태 코드

    다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.

    표 30. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    400 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수

    이름 설명
    결과 요청과 일치하는 약속에 대한 상세 정보입니다.

    데이터 유형: 객체

    "result": {
     "availability": [Array], 
     "has_more": Boolean,
     "next_available_slot": {Object},
     "no_appt_available": Boolean,
     "success": Boolean,
     "time_zone": "String",
     "time_zone_display_value": "String"
    }
    result.availability 지정된 요청을 충족하는 약속 슬롯 목록입니다.

    데이터 유형: 객체 배열

    "availability": [{
      "available": Boolean,
      "end_date": "String",
      "end_date_display": "String",
      "end_dateUTC": "String",
      "start_date": "String", 
      "start_date_display": "String",
      "start_dateUTC": "String"
    }]
    결과.가용성.사용 가능 연결된 시간 슬롯을 사용할 수 있는지 여부를 나타내는 플래그입니다.
    가능한 값:
    • true: 시간 슬롯을 사용할 수 있습니다.
    • false: 시간 슬롯을 사용할 수 없습니다.

    데이터 유형: 부울

    result.availability.end_date 관련 약속의 종료 날짜 및 시간입니다. 시간대는 매개변수의 값을 기반으로 합니다 time_zone .

    데이터 유형: 문자열

    형식: YYYY-MM-DD hh:mm:ss

    result.availability.end_date_display 관련 약속의 종료 날짜 및 시간을 표시합니다. 시간대는 매개변수의 값을 기반으로 합니다 time_zone_display_value .

    데이터 유형: 문자열

    형식: 요청 사용자의 날짜 시간 형식입니다.

    result.availability.end_dateUTC 관련 약속의 종료 날짜 및 시간(UTC 시간)입니다.

    데이터 유형: 문자열

    형식: YYYY-MM-DD hh:mm:ss

    result.availability.start_date 관련 약속의 시작 날짜 및 시간입니다. 시간대는 매개변수의 값을 기반으로 합니다 time_zone .

    데이터 유형: 문자열

    형식: YYYY-MM-DD hh:mm:ss

    result.availability.start_date_display 연결된 약속의 시작 날짜 및 시간을 표시합니다. 시간대는 매개변수의 값을 기반으로 합니다 time_zone_display_value .

    데이터 유형: 문자열

    형식: 요청 사용자의 날짜 시간 형식입니다.

    result.availability.start_dateUTC 관련 약속의 시작 날짜 및 시간(UTC 시간)입니다.

    데이터 유형: 문자열

    형식: YYYY-MM-DD hh:mm:ss

    result.has_more 한도를 반환한 후 가져올 약속 슬롯이 더 있는지 여부를 나타내는 플래그입니다.
    가능한 값:
    • true: 더 많은 약속 슬롯을 사용할 수 있습니다.
    • false: 더 이상 사용할 수 있는 슬롯이 없습니다.

    데이터 유형: 부울

    result.next_available_slot 매개변수가 get_next_available_slot true로 전달된 경우 전달된 시작 및 종료 날짜와 관계없이 사용 가능한 첫 번째 슬롯에 대한 세부 정보입니다.

    데이터 유형: 객체

    "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"
    }
    result.next_available_slot.사용 가능 연결된 시간 슬롯을 사용할 수 있는지 여부를 나타내는 플래그입니다.
    가능한 값:
    • true: 시간 슬롯을 사용할 수 있습니다.
    • false: 시간 슬롯을 사용할 수 없습니다.

    데이터 유형: 부울

    result.next_available_slot.end_date 관련 약속의 종료 날짜 및 시간입니다. 시간대는 매개변수의 값을 기반으로 합니다 time_zone .

    데이터 유형: 문자열

    형식: YYYY-MM-DD hh:mm:ss

    result.next_available_slot.end_date_display 관련 약속의 종료 날짜 및 시간을 표시합니다. 시간대는 매개변수의 값을 기반으로 합니다 time_zone_display_value .

    데이터 유형: 문자열

    result.next_available_slot.종료_날짜UTC 관련 약속의 종료 날짜 및 시간(UTC 시간)입니다.

    데이터 유형: 문자열

    형식: YYYY-MM-DD hh:mm:ss

    result.next_available_slot.start_date 관련 약속의 시작 날짜 및 시간입니다. 시간대는 매개변수의 값을 기반으로 합니다 time_zone .

    데이터 유형: 문자열

    형식: YYYY-MM-DD hh:mm:ss

    result.next_available_slot.시작_날짜_표시 연결된 약속의 시작 날짜 및 시간을 표시합니다. 시간대는 매개변수의 값을 기반으로 합니다 time_zone_display_value .

    데이터 유형: 문자열

    result.next_available_slot.시작_날짜UTC 관련 약속의 시작 날짜 및 시간(UTC 시간)입니다.

    데이터 유형: 문자열

    형식: YYYY-MM-DD hh:mm:ss

    result.no_appt_available 지정된 날짜 및 시간에 사용할 수 있는 약속 슬롯이 더 있는지 여부를 나타내는 플래그입니다.
    가능한 값:
    • true: 더 많은 약속 시간 슬롯을 사용할 수 있습니다.
    • false: 더 이상 사용할 수 있는 약속 시간이 없습니다.

    데이터 유형: 부울

    결과.성공 엔드포인트 호출이 성공했는지 여부를 나타내는 플래그입니다.
    가능한 값:
    • true: 엔드포인트 호출이 성공했습니다.
    • false: 엔드포인트 호출에 실패했습니다.

    데이터 유형: 부울

    result.time_zone 약속 슬롯이 렌더링된 시간대입니다. 약속 예약 서비스 구성의 값을 기준으로 합니다.

    데이터 유형: 문자열

    result.time_zone_display_value 약속 슬롯이 렌더링된 시간대를 표시합니다. 약속 예약 서비스 구성의 값을 기준으로 합니다.

    데이터 유형: 문자열

    cURL 요청

    다음 코드 예제에서는 이 끝점을 호출하는 방법을 보여 줍니다.

    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

    응답:

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