약속 오픈 API
Appointment Open API는 약속 예약 애플리케이션과 상호작용할 수 있는 통신 API입니다. 이 API를 사용하여 약속을 예약하고 사용 가능한 시간 슬롯을 검색합니다.
Appointment Open API는 Open API TMForum TMForum TMF646 Appointment REST API 사양의 구현이며 ServiceNow® TM Forum의 적합성 인증을 받았습니다. 이 구현은 TMF646 약속 API REST 사양 R16.0.1을 기반으로 합니다.
- 약속 예약(com.snc.appointment_booking)
- Field Service Management(com.snc.work_management)
- 통신용 Field Service Management(com.sn_fsmt)
- 통신 오픈 API(com.sn_tmf_api)
이 API를 사용하기 전에 약속 예약 구성 및 서비스 구성을 설정해야 합니다. 또한 약속이 예약되는 작업이 존재해야 합니다.
이 API는 sn_tmf_api 네임스페이스 내에서 제공됩니다. 호출하는 사용자에게 sn_tmf_api.appointment_integrator 역할이 있어야 합니다.
약속 오픈 - GET /api/sn_tmf_api/appointment/searchTimeSlot
약속 예약 서비스 구성에서 구성된 시간 슬롯을 가용성과 함께 반환합니다.
URL 형식
/api/sn_tmf_api/약속/searchTimeSlot
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| 없음 |
| 이름 | 설명 |
|---|---|
| catalog_id | 필수 약속 예약 서비스 구성으로 구성된 기록 생성자의 Sys_id. 데이터 유형: 문자열 테이블: 기록 생성자 [sc_cat_item_producer] |
| end_date | 필수 약속을 검색할 기간의 종료 날짜 및 시간입니다. 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: |
| 위치 | 약속 위치의 Sys_id입니다. 테이블: 위치 [cmn_location] 데이터 유형: 문자열 기본값: 지정하지 않으면 모든 위치를 반환합니다. |
| opened_for | 필수 약속이 예약되는 사용자의 Sys_id입니다. 테이블: 연락처 [customer_contact] 데이터 유형: 문자열 |
| start_date | 필수 약속을 검색할 기간의 시작 날짜 및 시간입니다. 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: |
| 이름 | 설명 |
|---|---|
| 없음 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.
| 헤더 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 헤더 | 설명 |
|---|---|
| 없음 |
상태 코드
다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| availableTime슬롯 | 지정된 요청 시간 블록 내의 약속 슬롯 목록입니다. 데이터 유형: 객체 배열 |
| availableTimeSlot.available | 연결된 시간 슬롯을 사용할 수 있는지 여부를 나타내는 플래그입니다. 가능한 값:
데이터 유형: 부울 |
| availableTimeSlot.end_date | 관련 약속의 종료 날짜 및 시간입니다. 시간대는 매개변수의 값을 기반으로 합니다 timeZone . 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2025-01-31 09:35:43. |
| availableTimeSlot.end_date_display | 관련 약속의 종료 날짜 및 시간을 표시합니다. 시간대는 매개변수의 값을 기반으로 합니다 timeZone . 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2025-01-31 09:35:43. |
| availableTimeSlot.end_dateUTC | 관련 약속의 종료 날짜 및 시간입니다. 데이터 유형: 문자열 형식: UTC |
| availableTimeSlot.start_date | 관련 약속의 시작 날짜 및 시간입니다. 매개변수 값을 반영합니다 timeZone . 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2025-01-31 09:35:43. |
| availableTimeSlot.start_date_display | 연결된 약속의 시작 날짜 및 시간을 표시합니다. 매개변수 값을 반영합니다 timeZone . 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2025-01-31 09:35:43. |
| availableTimeSlot.start_dateUTC | 관련 약속의 시작 날짜 및 시간입니다. 데이터 유형: 문자열 형식: UTC |
| hasMore | 한도를 반환한 후 가져올 약속 슬롯이 더 있는지 여부를 나타내는 플래그입니다. 이 제한은 약속 예약 속성 sn_apptmnt_booking.max_약속_반환됨(기본값: 100)에 지정됩니다. 이 숙박 시설에 대한 자세한 내용은 을 참조하십시오 Appointment booking components . 가능한 값:
데이터 유형: 부울 |
| noApptAvailable | 지정된 날짜 및 시간에 사용할 수 있는 약속 슬롯이 더 있는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 |
| 검색 결과 | 지정된 검색 시간 슬롯 내의 약속 가용성에 대한 결과입니다. 가능한 값:
데이터 유형: 문자열 |
| 상태 | 사용 가능한 시간 슬롯 검색의 완료 상태입니다. 예를 들어, 완료입니다. 데이터 유형: 문자열 |
| 시간대 | 지정된 약속 슬롯을 예약하거나 업데이트할 때 사용되는 시간대입니다. 날짜 유형: 문자열 형식: 국가/도시 또는 지역 형식(예: 미국/동부) |
cURL 요청
다음 코드 예제에서는 이 끝점을 호출하는 방법을 보여 줍니다.
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'
결과:
{
"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"
}
약속 오픈 - POST /api/sn_tmf_api/약속/약속
작업 주문에 대한 약속을 예약할 수 있습니다.
URL 형식
/api/sn_tmf_api/약속/약속
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| 없음 |
| 이름 | 설명 |
|---|---|
| 없음 |
| 이름 | 설명 |
|---|---|
| 범주 | 필수 약속 예약 서비스 구성에 대해 구성된 기록 생성자의 Sys_id입니다. 데이터 유형: 문자열 테이블: 약속 예약 서비스 구성 [sn_apptmnt_booking_service_config] 테이블의 카탈로그 항목 필드 |
| 관련 엔터티 | 필수 약속과 연결할 영향을 받는 작업 주문의 목록입니다. 데이터 유형: 객체 배열 |
| relatedEntity.@referredType | 필수 항목 또는 서비스의 유형입니다. 유효한 값: WorkOrder 데이터 유형: 문자열 테이블: 작업 주문 [wm_order] |
| relatedEntity.id | 필수 관련 엔터티의 Sys_id입니다. 데이터 유형: 문자열 테이블: workOrder [wm_order] 기본값: sys_id 제공되지 않은 경우 모두 반환합니다. |
| relatedEntity.role | 필수 관련 엔터티의 역할 설명입니다. 유효한 값: 작업 주문 데이터 유형: 문자열 테이블: 작업 주문 [wm_order] |
| 관련당사자 | 필수 약속의 연락처 목록입니다. 각 접점은 배열의 객체입니다. 요청에는 고객 계정 정보가 포함된 항목이 하나 이상 나열되어야 합니다. 데이터 유형: 객체 배열 |
| relatedParty.@referredType | 고객의 유형입니다. 유효한 값: Individual 데이터 유형: 문자열 |
| relatedParty.id | 필수 작업 주문과 연결된 연락처의 Sys_id 또는 external_id입니다. 데이터 유형: 문자열 테이블: 연락처 [customer_contact] |
| relatedParty.name | 연락처의 이름입니다. 데이터 유형: 문자열 테이블: 연락처 [customer_contact] |
| relatedParty.role | 필수 접촉 창구의 역할입니다. 가능한 값:
데이터 유형: 문자열 테이블: 연락처 [customer_contact] |
| 관련장소 | 필수 약속과 관련된 위치 목록입니다. 데이터 유형: 객체 배열 |
| relatedPlace.@referredType | 필수 위치 유형입니다. 예: 구/군/시. 데이터 유형: 문자열 테이블: 위치 [cmn_location] |
| relatedPlace.id | 필수 관련 위치의 Sys_id입니다. 데이터 유형: 문자열 테이블: 위치 [cmn_location] |
| relatedPlace.name | 접촉 창구와 관련된 위치의 이름입니다. 예를 들어, 251 Reddy St, Darwin, CA 93522입니다. 데이터 유형: 문자열 테이블: 위치 [cmn_location] |
| relatedPlace.role | 필수 위치 역할에 대한 설명입니다. 예를 들면 작업 주문입니다. 데이터 유형: 문자열 |
| 시간대 | 필수 지정된 약속 슬롯을 예약할 때 사용할 시간대입니다. 날짜 유형: 문자열 형식: 국가/도시 또는 지역 형식(예: 미국/동부) |
| 유효한대상 | 필수 약속이 유효한 날짜 범위입니다. 데이터 유형: 객체 |
| validFor.endDateTime | 필수 시간 슬롯의 종료 날짜 및 시간입니다. 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2025-01-31 09:35:43. |
| validFor.startDateTime | 필수 시간 슬롯의 시작 날짜 및 시간입니다. 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2025-01-31 09:35:43. |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.
| 헤더 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 헤더 | 설명 |
|---|---|
| 컨텐츠-형식 | 요청 본문의 데이터 형식입니다. application/json만 지원합니다. |
상태 코드
다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| 범주 | 약속 예약 서비스 구성에 대해 구성된 기록 생성자의 Sys_id입니다. 데이터 유형: 문자열 저장 위치: 약속 예약 서비스 구성 [sn_apptmnt_booking_service_config] 테이블의 카탈로그 항목 필드. |
| creationDate | 약속이 생성된 날짜 및 시간입니다. 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2025-01-31 09:35:43. |
| href | 약속 기록에 대한 하이퍼링크입니다. 다른 약속 열기 API 요청에서 이 링크를 사용하여 약속의 일정을 조정하거나 삭제합니다. 데이터 유형: 문자열 |
| ID | 약속의 Sys_id입니다. 데이터 유형: 문자열 저장 위치: 약속 예약 서비스 구성 [sn_apptmnt_booking_service_config] 테이블 |
| lastUpdate | 약속이 마지막으로 업데이트된 날짜 및 시간입니다. 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2025-01-31 09:35:43. |
| 관련 엔터티 | 약속의 관련 엔터티에 대한 상세 정보입니다. 데이터 유형: 객체 배열 |
| relatedEntity.@referredType | 항목 또는 서비스의 유형입니다. 데이터 유형: 문자열 저장 위치: workOrder [wm_order] 테이블 |
| relatedEntity.id | 관련 엔터티의 Sys_id입니다. 데이터 유형: 문자열 저장 위치: workOrder [wm_order] 테이블 |
| relatedEntity.role | 관련 엔터티의 역할 설명입니다. 가능한 값: 작업 주문 데이터 유형: 문자열 저장 위치: workOrder [wm_order] 테이블 |
| 관련당사자 | 약속의 연락처 목록입니다. 각 접점은 배열의 객체입니다. 데이터 유형: 객체 배열 |
| relatedParty.@referredType | 고객의 유형입니다. 데이터 유형: 문자열 저장 위치: 연락처 [customer_contact] 테이블 |
| relatedParty.id | 작업 주문과 연결된 고객 연락처의 Sys_id입니다. 데이터 유형: 문자열 저장 위치: 연락처 [customer_contact] 테이블 |
| relatedParty.name | 고객 접촉 창구의 이름입니다. 데이터 유형: 문자열 저장 위치: 연락처 [customer_contact] 테이블 |
| relatedParty.role | 고객 접촉 창구의 역할입니다. 가능한 값:
데이터 유형: 문자열 저장 위치: 연락처 [customer_contact] 테이블 |
| 관련장소 | 관련 약속의 위치 상세 정보입니다. 데이터 유형: 객체 |
| relatedPlace.@referredType | 약속의 지리적 주소입니다. 가능한 값: GeographicLocation. 데이터 유형: 문자열 저장 위치: 위치 [cmn_location] 테이블 |
| relatedPlace.id | 위치의 Sys_id입니다. 데이터 유형: 문자열 저장 위치: 위치 [cmn_location] 테이블 |
| relatedPlace.name | 접촉 창구와 관련된 위치의 이름입니다. 예: 100 South Charles Street, Baltimore, MD. 데이터 유형: 문자열 저장 위치: 위치 [cmn_location] 테이블 |
| relatedPlace.role | 개입 주소로서 약속 위치의 역할입니다. 가능한 값: InterventionAddress 데이터 유형: 문자열 저장 위치: 위치 [cmn_location] 테이블 |
| 성공 | 요청이 성공했는지 여부를 나타내는 플래그입니다. 가능한 값:
데이터 유형: 부울 |
| 시간대 | 지정된 약속 슬롯을 예약하거나 업데이트할 때 사용되는 시간대입니다. 날짜 유형: 문자열 형식: 국가/도시 또는 지역 형식(예: 미국/동부) |
| 유효한대상 | 약속이 유효한 날짜 범위입니다. 데이터 유형: 객체 |
| validFor.endDateTime | 약속의 종료 날짜 및 시간입니다. 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2025-01-31 09:35:43. |
| validFor.startDateTime | 약속의 시작 날짜 및 시간입니다. 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2025-01-31 09:35:43. |
cURL 요청
다음 예제에서는 새 약속 예약을 만드는 방법을 보여줍니다.
curl "https://instance.servicenow.com/api/sn_tmf_api/appointment/appointment" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
\"validFor\": {
\"startDateTime\": \"2024-08-19 09:00:00\",
\"endDateTime\": \"2024-08-19 11:00:00\"
},
\"category\": \"e4c1116b3b810300ce8a4d72f3efc40f\",
\"relatedParty\": [
{
\"id\": \"eaf68911c35420105252716b7d40ddde\",
\"name\": \"Sally Thomas\",
\"role\": \"customer\",
\"@referredType\": \"Individual\"
}
],
\"relatedPlace\": {
\"id\": \"25ab9c4d0a0a0bb300f7dabdc0ca7c1c\",
\"name\": \"100 South Charles Street, Baltimore,MD\",
\"role\": \"interventionAddress\",
\"@referredType\": \"GeographicAddress\"
},
\"relatedEntity\": [
{
\"id\": \"48dbfbf9201f0250f877303e8a020dcd\",
\"role\": \"work order\",
\"@referredType\": \"WorkOrder\"
}
],
\"timeZone\": \"US/Arizona\"
}" \
--user 'username':'password'
응답:
{
"validFor": {
"startDateTime": "2024-07-19 09:00:00",
"endDateTime": "2024-07-19 11:00:00"
},
"category": "e4c1116b3b810300ce8a4d72f3efc40f",
"relatedParty": [
{
"id": "eaf68911c35420105252716b7d40ddde",
"name": "Sally Thomas",
"role": "customer",
"@referredType": "Individual"
}
],
"relatedPlace": {
"id": "25ab9c4d0a0a0bb300f7dabdc0ca7c1c",
"name": "100 South Charles Street, Baltimore,MD",
"role": "interventionAddress",
"@referredType": "GeographicAddress"
},
"relatedEntity": [
{
"id": "48dbfbf9201f0250f877303e8a020dcd",
"role": "work order",
"@referredType": "WorkOrder"
}
],
"timeZone": "US/Arizona",
"success": true,
"id": "feacb7f9201f0250f877303e8a020d38",
"href": "api/sn_tmf_api/appointment/appointment/feacb7f9201f0250f877303e8a020d38",
"creationDate": "2024-07-10 22:45:01",
"lastUpdate": "2024-07-10 22:45:01"
}
약속 오픈 - DELETE /api/sn_tmf_api/appointment/appointment/{id}
지정된 ID로 약속 기록을 삭제합니다.
URL 형식
기본 URL: /api/sn_tmf_api/appointment/appointment/{id}
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| ID | 삭제할 약속 기록의 Sys_id입니다. 데이터 유형: 문자열 테이블: 약속 예약 [sn_apptmnt_booking_appointment_booking] |
| 이름 | 설명 |
|---|---|
| 없음 |
| 이름 | 설명 |
|---|---|
| 없음 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.
| 헤더 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 헤더 | 설명 |
|---|---|
| 컨텐츠-형식 | 요청 본문의 데이터 형식입니다. application/json만 지원합니다. |
상태 코드
다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다. |
| 404 | 찾을 수 없습니다. 요청한 항목을 찾을 수 없습니다. |
응답 본문 매개변수(JSON)
| 이름 | 설명 |
|---|---|
| 메시지 | 성공적으로 삭제되었음을 확인하는 응답 메시지입니다. 성공: "약속(<id>)이 성공적으로 취소되었습니다." 오류:
데이터 유형: 문자열 |
cURL 요청
다음 예에서는 특정 ID의 약속을 삭제합니다.
curl "http://instance.servicenow.com/api/sn_tmf_api/appointment/appointment/68cc0a5a9314521060320dd548373" \
--request GET\
--user 'username':'password'
응답 본문:
"The appointment (68cc0a5a9314521060320dd548373cbd) is successfully cancelled."
약속 오픈 - GET /api/sn_tmf_api/appointment/appointment/{id}
지정된 ID와 연결된 약속 기록을 조회합니다.
URL 형식
기본 URL: /api/sn_tmf_api/appointment/appointment/{id}
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| ID | 검색할 약속의 Sys_id입니다. 데이터 유형: 문자열 테이블: 약속 예약 [sn_apptmnt_booking_appointment_booking] |
| 이름 | 설명 |
|---|---|
| 범주 | 범주 sys_id별로 약속을 필터링합니다. 데이터 유형: 문자열 테이블: 위치 [cmn_location] 기본값: 범주 sys_id이 제공되지 않은 경우 모든 약속을 반환합니다. |
| 관련 엔터티 | 작업 주문과 연결된 관련 엔터티에 대한 상세 정보입니다. 데이터 유형: 객체 |
| relatedEntity.id | 필수 관련 엔터티의 Sys_id입니다. 데이터 유형: 문자열 테이블: workOrder [wm_order] 기본값: sys_id 제공되지 않은 경우 모두 반환합니다. |
| 관련당사자 | 약속과 연결된 관련 당사자의 sys_id 기준으로 약속을 필터링합니다. 데이터 유형: 객체 기본값: 입력하지 않은 경우 relatedParty 모든 약속을 반환합니다. |
| relatedParty.id | 관련 당사자의 Sys_id입니다. 데이터 유형: 문자열 테이블: 사용자 [sys_user] |
| relatedParty.name | 관련 당사자의 이름입니다. 데이터 유형: 문자열 |
| 관련장소 | 서비스나 수리가 발생할 장소별로 약속을 필터링합니다. 데이터 유형: 객체 기본값: 입력하지 않은 경우 relatedPlace 모든 약속을 반환합니다. |
| relatedPlace.id | 관련 장소의 Sys_id입니다. 데이터 유형: 문자열 테이블: 위치 [cmn_location] |
| 유효한대상 | 약속이 유효한 날짜 범위를 기준으로 약속을 필터링합니다. 데이터 유형: 객체 기본값: 입력하지 않은 경우 validFor 모든 약속을 반환합니다. |
| validFor.endDateTime | 약속의 종료 날짜 및 시간입니다. 지정된 종료 날짜 및 시간이 있는 약속만 응답에 반환됩니다. 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2025-01-31 09:35:43. 테이블: 위치 [cmn_location] |
| validFor.startDateTime | 약속의 시작 날짜 및 시간입니다. 지정된 시작 날짜 및 시간이 있는 약속만 응답에 반환됩니다. 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2025-01-31 09:35:43. 테이블: 위치 [cmn_location] |
| 이름 | 설명 |
|---|---|
| 없음 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.
| 헤더 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 헤더 | 설명 |
|---|---|
| 컨텐츠-형식 | 요청 본문의 데이터 형식입니다. application/json만 지원합니다. |
상태 코드
다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다. |
| 404 | 찾을 수 없습니다. 요청한 항목을 찾을 수 없습니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| 범주 | 약속 예약 서비스 구성에 대해 구성된 기록 생성자의 Sys_id입니다. 데이터 유형: 문자열 저장 위치: 약속 예약 서비스 구성 [sn_apptmnt_booking_service_config] 테이블의 카탈로그 항목 필드. |
| creationDate | 약속이 생성된 날짜 및 시간입니다. 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2025-01-31 09:35:43. |
| href | 약속 기록에 대한 하이퍼링크입니다. 다른 약속 열기 API 요청에서 이 링크를 사용하여 약속의 일정을 조정하거나 삭제합니다. 데이터 유형: 문자열 |
| ID | 약속의 Sys_id입니다. 데이터 유형: 문자열 저장 위치: 약속 예약 서비스 구성 [sn_apptmnt_booking_service_config] 테이블 |
| lastUpdate | 약속이 마지막으로 업데이트된 날짜 및 시간입니다. 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2025-01-31 09:35:43. |
| 관련 엔터티 | 약속의 관련 엔터티에 대한 상세 정보입니다. 데이터 유형: 객체 배열 |
| relatedEntity.@referredType | 항목 또는 서비스의 유형입니다. 데이터 유형: 문자열 저장 위치: workOrder [wm_order] 테이블 |
| relatedEntity.id | 관련 엔터티의 Sys_id입니다. 데이터 유형: 문자열 저장 위치: workOrder [wm_order] 테이블 |
| relatedEntity.role | 관련 엔터티의 역할 설명입니다. 가능한 값: 작업 주문 데이터 유형: 문자열 저장 위치: workOrder [wm_order] 테이블 |
| 관련당사자 | 약속의 연락처 목록입니다. 각 접점은 배열의 객체입니다. 데이터 유형: 객체 배열 |
| relatedParty.@referredType | 고객의 유형입니다. 데이터 유형: 문자열 저장 위치: 연락처 [customer_contact] 테이블 |
| relatedParty.id | 작업 주문과 연결된 고객 연락처의 Sys_id입니다. 데이터 유형: 문자열 저장 위치: 연락처 [customer_contact] 테이블 |
| relatedParty.name | 고객 접촉 창구의 이름입니다. 데이터 유형: 문자열 저장 위치: 연락처 [customer_contact] 테이블 |
| relatedParty.role | 고객 접촉 창구의 역할입니다. 가능한 값:
데이터 유형: 문자열 저장 위치: 연락처 [customer_contact] 테이블 |
| 관련장소 | 관련 약속의 위치 상세 정보입니다. 데이터 유형: 객체 |
| relatedPlace.@referredType | 약속의 지리적 주소입니다. 가능한 값: GeographicLocation. 데이터 유형: 문자열 저장 위치: 위치 [cmn_location] 테이블 |
| relatedPlace.id | 위치의 Sys_id입니다. 데이터 유형: 문자열 저장 위치: 위치 [cmn_location] 테이블 |
| relatedPlace.name | 접촉 창구와 관련된 위치의 이름입니다. 예: 100 South Charles Street, Baltimore, MD. 데이터 유형: 문자열 저장 위치: 위치 [cmn_location] 테이블 |
| relatedPlace.role | 개입 주소로서 약속 위치의 역할입니다. 가능한 값: InterventionAddress 데이터 유형: 문자열 저장 위치: 위치 [cmn_location] 테이블 |
| 유효한대상 | 약속이 유효한 날짜 범위입니다. 데이터 유형: 객체 |
| validFor.endDateTime | 약속의 종료 날짜 및 시간입니다. 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2025-01-31 09:35:43. |
| validFor.startDateTime | 약속의 시작 날짜 및 시간입니다. 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2025-01-31 09:35:43. |
cURL 요청
다음 예에서는 지정된 약속 기록 ID에 따라 약속 세부 정보를 반환합니다.
curl "http://instance.servicenow.com/api/sn_tmf_api/appointment/appointment/201071ad4f80d210f8992fec52ce0ba9" \
--request GET\
--user 'username':'password'
응답 본문:
[
{
"id": "201071ad4f80d210f8992fec52ce0ba9",
"href": "api/sn_tmf_api/appointment/appointment/201071ad4f80d210f8992fec52ce0ba9",
"validFor": {
"startDateTime": "2024-08-16 17:00:00",
"endDateTime": "2024-08-16 19:00:00"
},
"category": "4a34a64d4f4c1210f8992fec52ce0b63",
"relatedParty": [
{
"id": "eaf68911c35420105252716b7d40ddde",
"name": " null",
"role": "customer",
"@referredType": "Individual"
}
],
"relatedPlace": {
"id": "25ab9c4d0a0a0bb300f7dabdc0ca7c1c",
"name": "100 South Charles Street, Baltimore,MD",
"role": "interventionAddress",
"@referredType": "Individual"
},
"relatedEntity": [
{
"id": "b440a5694f40d210f8992fec52ce0ba3",
"role": "work order",
"@referredType": "WorkOrder"
}
],
"creationDate": "2024-08-16 00:39:22",
"lastUpdate": "2024-08-16 00:39:22"
}
]
약속 오픈 - GET /api/sn_tmf_api/appointment/appointment
약속 기록 목록을 검색합니다.
URL 형식
기본 URL: /api/sn_tmf_api/appointment/appointment
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| 없음 |
| 이름 | 설명 |
|---|---|
| 범주 | 범주 sys_id별로 약속을 필터링합니다. 데이터 유형: 문자열 테이블: 위치 [cmn_location] 기본값: 범주 sys_id이 제공되지 않은 경우 모든 약속을 반환합니다. |
| 관련 엔터티 | 작업 주문과 연결된 관련 엔터티에 대한 상세 정보입니다. 데이터 유형: 객체 |
| relatedEntity.id | 필수 관련 엔터티의 Sys_id입니다. 데이터 유형: 문자열 테이블: workOrder [wm_order] 기본값: sys_id 제공되지 않은 경우 모두 반환합니다. |
| 관련당사자 | 약속과 연결된 관련 당사자의 sys_id 기준으로 약속을 필터링합니다. 데이터 유형: 객체 기본값: 입력하지 않은 경우 relatedParty 모든 약속을 반환합니다. |
| relatedParty.id | 관련 당사자의 Sys_id입니다. 데이터 유형: 문자열 테이블: 사용자 [sys_user] |
| relatedParty.name | 관련 당사자의 이름입니다. 데이터 유형: 문자열 |
| 관련장소 | 서비스나 수리가 발생할 장소별로 약속을 필터링합니다. 데이터 유형: 객체 기본값: 입력하지 않은 경우 relatedPlace 모든 약속을 반환합니다. |
| relatedPlace.id | 관련 장소의 Sys_id입니다. 데이터 유형: 문자열 테이블: 위치 [cmn_location] |
| 유효한대상 | 약속이 유효한 날짜 범위를 기준으로 약속을 필터링합니다. 데이터 유형: 객체 기본값: 입력하지 않은 경우 validFor 모든 약속을 반환합니다. |
| validFor.endDateTime | 약속의 종료 날짜 및 시간입니다. 지정된 종료 날짜 및 시간이 있는 약속만 응답에 반환됩니다. 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2025-01-31 09:35:43. 테이블: 위치 [cmn_location] |
| validFor.startDateTime | 약속의 시작 날짜 및 시간입니다. 지정된 시작 날짜 및 시간이 있는 약속만 응답에 반환됩니다. 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2025-01-31 09:35:43. 테이블: 위치 [cmn_location] |
| 이름 | 설명 |
|---|---|
| 없음 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.
| 헤더 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. 지원되는 유형은 application/json 또는 application/xml입니다. 기본값: application/json |
| 헤더 | 설명 |
|---|---|
| 컨텐츠-형식 | 요청 본문의 데이터 형식입니다. application/json만 지원합니다. |
상태 코드
다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다. |
| 404 | 찾을 수 없습니다. 요청한 항목을 찾을 수 없습니다. |
응답 본문 매개변수(JSON 또는 XML)
| 이름 | 설명 |
|---|---|
| 범주 | 약속 예약 서비스 구성에 대해 구성된 기록 생성자의 Sys_id입니다. 데이터 유형: 문자열 저장 위치: 약속 예약 서비스 구성 [sn_apptmnt_booking_service_config] 테이블의 카탈로그 항목 필드. |
| creationDate | 약속이 생성된 날짜 및 시간입니다. 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2025-01-31 09:35:43. |
| href | 약속 기록에 대한 하이퍼링크입니다. 다른 약속 열기 API 요청에서 이 링크를 사용하여 약속의 일정을 조정하거나 삭제합니다. 데이터 유형: 문자열 |
| ID | 약속의 Sys_id입니다. 데이터 유형: 문자열 저장 위치: 약속 예약 서비스 구성 [sn_apptmnt_booking_service_config] 테이블 |
| lastUpdate | 약속이 마지막으로 업데이트된 날짜 및 시간입니다. 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2025-01-31 09:35:43. |
| 관련 엔터티 | 약속의 관련 엔터티에 대한 상세 정보입니다. 데이터 유형: 객체 배열 |
| relatedEntity.@referredType | 항목 또는 서비스의 유형입니다. 데이터 유형: 문자열 저장 위치: workOrder [wm_order] 테이블 |
| relatedEntity.id | 관련 엔터티의 Sys_id입니다. 데이터 유형: 문자열 저장 위치: workOrder [wm_order] 테이블 |
| relatedEntity.role | 관련 엔터티의 역할 설명입니다. 가능한 값: 작업 주문 데이터 유형: 문자열 저장 위치: workOrder [wm_order] 테이블 |
| 관련당사자 | 약속의 연락처 목록입니다. 각 접점은 배열의 객체입니다. 데이터 유형: 객체 배열 |
| relatedParty.@referredType | 고객의 유형입니다. 데이터 유형: 문자열 저장 위치: 연락처 [customer_contact] 테이블 |
| relatedParty.id | 작업 주문과 연결된 고객 연락처의 Sys_id입니다. 데이터 유형: 문자열 저장 위치: 연락처 [customer_contact] 테이블 |
| relatedParty.name | 고객 접촉 창구의 이름입니다. 데이터 유형: 문자열 저장 위치: 연락처 [customer_contact] 테이블 |
| relatedParty.role | 고객 접촉 창구의 역할입니다. 가능한 값:
데이터 유형: 문자열 저장 위치: 연락처 [customer_contact] 테이블 |
| 관련장소 | 관련 약속의 위치 상세 정보입니다. 데이터 유형: 객체 |
| relatedPlace.@referredType | 약속의 지리적 주소입니다. 가능한 값: GeographicLocation. 데이터 유형: 문자열 저장 위치: 위치 [cmn_location] 테이블 |
| relatedPlace.id | 위치의 Sys_id입니다. 데이터 유형: 문자열 저장 위치: 위치 [cmn_location] 테이블 |
| relatedPlace.name | 접촉 창구와 관련된 위치의 이름입니다. 예: 100 South Charles Street, Baltimore, MD. 데이터 유형: 문자열 저장 위치: 위치 [cmn_location] 테이블 |
| relatedPlace.role | 개입 주소로서 약속 위치의 역할입니다. 가능한 값: InterventionAddress 데이터 유형: 문자열 저장 위치: 위치 [cmn_location] 테이블 |
| 유효한대상 | 약속이 유효한 날짜 범위입니다. 데이터 유형: 객체 |
| validFor.endDateTime | 약속의 종료 날짜 및 시간입니다. 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2025-01-31 09:35:43. |
| validFor.startDateTime | 약속의 시작 날짜 및 시간입니다. 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2025-01-31 09:35:43. |
cURL 요청
다음 예제에서는 GET 약속 메서드를 사용하여 약속 목록을 반환하는 방법을 보여 줍니다.
curl "http://instance.servicenow.com/api/sn_tmf_api/appointment/appointment" \
--request GET\
--user 'username':'password'
응답 본문에는 약속 예약 서비스 구성에 구성된 두 가지 약속의 세부 정보가 포함되어 있습니다.
[
{
"id": "201071ad4f80d210f8992fec52ce0ba9",
"href": "api/sn_tmf_api/appointment/appointment/201071ad4f80d210f8992fec52ce0ba9",
"validFor": {
"startDateTime": "2024-08-16 17:00:00",
"endDateTime": "2024-08-16 19:00:00"
},
"category": "4a34a64d4f4c1210f8992fec52ce0b63",
"relatedParty": [
{
"id": "eaf68911c35420105252716b7d40ddde",
"name": " null",
"role": "customer",
"@referredType": "Individual"
}
],
"relatedPlace": {
"id": "25ab9c4d0a0a0bb300f7dabdc0ca7c1c",
"name": "100 South Charles Street, Baltimore,MD",
"role": "interventionAddress",
"@referredType": "Individual"
},
"relatedEntity": [
{
"id": "b440a5694f40d210f8992fec52ce0ba3",
"role": "work order",
"@referredType": "WorkOrder"
}
],
"creationDate": "2024-08-16 00:39:22",
"lastUpdate": "2024-08-16 00:39:22"
},
{
"id": "25c012c07f5c5610f8994fa63c866523",
"href": "api/sn_tmf_api/appointment/appointment/25c012c07f5c5610f8994fa63c866523",
"validFor": {
"startDateTime": "2024-08-26 17:00:00",
"endDateTime": "2024-08-26 19:00:00"
},
"category": "4a34a64d4f4c1210f8992fec52ce0b63",
"relatedParty": [
{
"id": "eaf68911c35420105252716b7d40ddde",
"name": " null",
"role": "customer",
"@referredType": "Individual"
}
],
"relatedPlace": {
"id": "f48b21850a0a0ba7004182b18099696d",
"name": "11251 Rancho Carmel Drive, San Diego,CA",
"role": "interventionAddress",
"@referredType": "Individual"
},
"relatedEntity": [
{
"id": "c0b09a047f109610f8994fa63c8665b4",
"role": "work order",
"@referredType": "WorkOrder"
}
],
"creationDate": "2024-08-23 22:18:43",
"lastUpdate": "2024-08-23 22:18:43"
}
]
약속 오픈 - PATCH /api/sn_tmf_api/appointment/appointment/{id}
작업 주문에 대해 지정된 ID로 약속 일정을 조정합니다.
URL 형식
기본 URL: PATCH /api/sn_tmf_api/appointment/appointment/{id}
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| ID | 일정을 조정할 약속의 Sys_id입니다. 데이터 유형: 문자열 테이블: 약속 예약 [sn_apptmnt_booking_appointment_booking] |
| 이름 | 설명 |
|---|---|
| 없음 |
| 이름 | 설명 |
|---|---|
| 참고 | 약속을 취소하는 경우 여기에서 작업 메모를 추가할 수 있습니다. 작업 주문의 작업 메모와 약속 메시지를 업데이트합니다. 데이터 유형: 객체 배열 저장 위치: 약속 예약 [sn_apptmnt_booking_appointment_booking] 테이블 |
| 메모.작성자 | 메모를 작성한 사람의 이름입니다. 데이터 유형: 문자열 |
| note.date | 메모가 게시된 날짜 및 시간입니다. 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2018-02-04T11:00:18.071Z. |
| note.text | 약속에 첨부된 작업 주문에 대한 설명 텍스트입니다. 예를 들어, 작업 주문의 진행 상황에 대한 업데이트가 있습니다. 데이터 유형: 문자열 |
| 상태 | 약속 상태입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 문자열 |
| 유효한대상 | 약속이 유효한 날짜 범위를 기준으로 약속을 필터링합니다. 데이터 유형: 객체 기본값: 입력하지 않은 경우 validFor 모든 약속을 반환합니다. |
| validFor.endDateTime | 약속의 종료 날짜 및 시간입니다. 지정된 종료 날짜 및 시간이 있는 약속만 응답에 반환됩니다. 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2025-01-31 09:35:43. 테이블: 위치 [cmn_location] |
| validFor.startDateTime | 약속의 시작 날짜 및 시간입니다. 지정된 시작 날짜 및 시간이 있는 약속만 응답에 반환됩니다. 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2025-01-31 09:35:43. 테이블: 위치 [cmn_location] |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.
| 헤더 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 헤더 | 설명 |
|---|---|
| 컨텐츠-형식 | 요청 본문의 데이터 형식입니다. application/json만 지원합니다. |
상태 코드
다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수(JSON)
| 이름 | 설명 |
|---|---|
| creationDate | 약속이 생성된 날짜 및 시간입니다. 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2025-01-31 09:35:43. |
| href | 약속의 고유 참조 링크입니다. 다른 요청에서 이 링크를 사용하여 약속을 잡을 수 있습니다. 데이터 유형: 문자열 |
| ID | 일정이 조정된 약속의 Sys_id입니다. 데이터 유형: 문자열 저장 위치: 약속 예약 [sn_apptmnt_booking_appointment_booking] 테이블 |
| lastUpdate | 약속이 마지막으로 업데이트된 날짜 및 시간입니다. 데이터 유형: 문자열 형식: YYYY-MM-DD 00:00:00. 예: 2025-01-31 09:35:43. |
| 이유 | 약속을 업데이트하기 위한 목적입니다. 가능한 값:
데이터 유형: 문자열 |
| 관련당사자 | 관련 약속에 대한 고객 상세 정보입니다. 데이터 유형: 객체 배열 |
| relatedParty.id | 고객 접촉 창구의 Sys_id입니다. 데이터 유형: 문자열 저장 위치: 연락처 [customer_contact] 테이블 |
| relatedParty.name | 고객 접촉 창구의 이름입니다. 데이터 유형: 문자열 |
| relatedPlace.@referredType | 고객의 유형입니다. 데이터 유형: 문자열 가능한 값: 개별 |
| relatedParty.role | 접촉 창구의 역할입니다. 데이터 유형: 문자열 가능한 값: 연락처 |
| 성공 | 요청이 성공했는지 여부를 나타내는 플래그입니다. 가능한 값:
데이터 유형: 부울 |
cURL 요청
다음 예제에서는 PATCH 메서드를 사용하여 지정된 ID로 약속 일정을 조정하는 방법을 보여 줍니다.
curl -X POST 'https://instance.service-now.com/api/sn_tmf_api/appointment/appointment/68cc0a5a9314521060320dd548373cbd ' \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-u "username":"password" \
-data {
"validFor": {
"startDateTime": "2024-07-30 00:0:00",
"endDateTime": "2024-08-30 00:00:00"
}
"note": {
"date": "85388c25b71011104eed4643ae11a993",
"author": "Sarah Johnson",
"text": "customer"
}
"state": "active"
}
]
}
응답 본문에는 약속 일정이 변경되었다는 성공 메시지가 표시됩니다.
{
"relatedParty": [
{
"id": "85388c25b71011104eed4643ae11a993",
"name": "Sarah Johnson",
"role": "customer",
"@referredType": "Individual"
}
],
"success": true,
"reason": "Appointment rescheduled!",
"id": "68cc0a5a9314521060320dd548373cbd",
"href": "api/sn_tmf_api/appointment/appointment/68cc0a5a9314521060320dd548373cbd",
"creationDate": "2024-08-30 20:56:54",
"lastUpdate": "2024-08-30 20:56:54"
}