---
sourceDocument: Xanadu 대화형 인터페이스
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ko-KR/xanadu/conversational-interfaces

 Release :

    - xanadu

ft:locale :

    - ko-KR

ft:publication_title :

    - Xanadu 대화형 인터페이스

ft:clusterId :

    - convint

bundleId :

    - convint

workflow :

    - Platform


---

# 사용자 지정 채팅 통합을 위해 스크립트된 REST API를 만들고 구성합니다

# 사용자 지정 채팅 통합을 위해 스크립트된 REST API를 만들고 구성합니다 {#ariaid-title1}

* 릴리스 버전: Xanadu
* 
* 업데이트 날짜 2024년 08월 01일
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 소요 시간: 4분

스크립팅된 REST API를 작성하고, 스크립팅된 REST 자원을 추가하고, 보안 및 컨텐츠 협상을 설정하고, REST API 속도 제한을 설정합니다.

## 시작하기 전에

[사용자 지정 채팅 통합의 채널에 다양한 통제 매핑](https://servicenow-prod.fluidtopics.net/f3XCrIVhwlBWEYY9SHp8XQ "사용자 지정 어댑터 구성 [sys_cs_custom_adapter_config] 테이블에서 다양한 통제에 대한 기록을 생성합니다. 리치 컨트롤에 아웃바운드 변환기 구현이 누락된 경우 최종 사용자에게 응답이 제공되지 않으며 해당 사용자는 만족스럽지 못한 채팅 환경을 얻을 수 있습니다.").

필요한 역할: admin

## 프로시저

1. REST API를 만듭니다.
   1. 다음으로 이동 모두시스템 웹 서비스스크립트 기반 웹 서비스스크립트 기반 REST API.
   2. 새로 만들기를 클릭합니다.
   3. 양식의 필드에 내용을 입력합니다.  
      {#configure-rest-api-va-cccif__table_syk_xhl_1mb__entry__2}

      | 필드 | 설명 |
      |-|-|
      | 이름 | API의 이름입니다. 예: <kbd class="ph userinput">ACME 모바일 앱 채팅 어댑터</kbd>. |
      | API ID | API 식별자입니다. 예: <kbd class="ph userinput">acme_chat</kbd>. |
      | 보호 정책 | 스크립트에 대한 보호 정책입니다. * 읽기 전용: 스크립트를 볼 수만 있습니다. * 보호됨: 암호 권한이 있는 사용자가 스크립트를 편집할 수 있습니다. {#configure-rest-api-va-cccif__ul_jmv_hgx_ktb} |
      | 애플리케이션 | 스크립트 기록을 포함하는 애플리케이션입니다. 기본적으로 전역 이 선택됩니다. |
      | API 네임스페이스 | API가 속한 네임스페이스입니다. 이 값은 현재 애플리케이션 범위에 따라 달라집니다. |
      [ ]

      {#configure-rest-api-va-cccif__table_syk_xhl_1mb}
   4. 제출을 클릭합니다.
   5. **옵션:** 새 레코드를 열고 Related Links(관련 링크 )로 이동하여 Enable Versioning(버전 관리 사용)을 클릭한 다음 OK(확인)를 클릭합니다.  
      변경 사항을 저장하려면 업데이트를 클릭합니다.
   {#configure-rest-api-va-cccif__substeps_bfp_gc5_wlb}
2. 새 REST API에 스크립팅된 REST 자원을 추가합니다.  
   스크립팅된 REST 자원은 사용자가 만든 스크립팅된 REST API 정의를 정의합니다.
   1. 생성한 REST API 기록을 연 다음 관련 링크 아래의 자원 탭으로 이동합니다.
   2. 새로 만들기를 클릭합니다.  
      요청에서 페이로드를 검색한 다음 하이브리드 큐에 씁니다.
   3. 양식의 필드에 내용을 입력합니다.  
      {#configure-rest-api-va-cccif__table_dyh_d3l_1mb__entry__2}

      | 필드 | 설명 |
      |-|-|
      | API 정의 | 상위 API의 이름입니다. |
      | 애플리케이션 | 스크립트 기록을 포함하는 애플리케이션입니다. |
      | 이름 | API REST 자원의 이름입니다. ACME 채팅을 예로 들 수 있습니다. |
      | API 버전 | API 버전입니다. 예: v1. 이 필드는 REST API에 대해 버전 관리를 사용하도록 설정한 경우에만 표시됩니다. |
      | 활성 | REST 자원을 활성화하는 옵션입니다. |
      | HTTP 메서드 | HTTP 메서드(예: POST, GET 등) |
      | 상대 경로 | 자원에 대한 상대 경로입니다. |
      | 스크립트 | REST 자원에 대한 스크립트입니다. |
      | 보호 정책 | 스크립트에 대한 보호 정책입니다. * 읽기 전용: 스크립트를 볼 수만 있습니다. * 보호됨: 암호 권한이 있는 사용자가 스크립트를 편집할 수 있습니다. {#configure-rest-api-va-cccif__ul_kh4_13x_ktb} |
      [ ]

      {#configure-rest-api-va-cccif__table_dyh_d3l_1mb}  
      스크립팅된 REST 자원의 예:

          (function process(/*RESTAPIRequest*/ request, /*RESTAPIResponse*/ response) {
              var body = request.body;
              var queryParams = request.queryParams; // incoming content is application/x-www-form-urlencoded in this example    
              // get the provider application sys id. this can be done via a glide query using incoming data such as where the original message is being sent to. or it can be hard-coded such as this example.
              var providerAppId = "a5f8b75b7377001042281188caf6a73a";    
              // the time of receipt is recorded for analytics purposes
              var d = new Date();
              var logTime = d.getTime();    
              // add this message to the VA Server queue for processing
              var queued = sn_cs.VASystemObject.enqueueCustomAdapterMessage(providerAppId, JSON.stringify(queryParams), JSON.stringify(request.headers), logTime);
              if (queued == false) {
          	response.setError(new sn_ws_err.BadRequestError('Failed to process the request.'));
              }
          })(request, response);
          ​

   {#configure-rest-api-va-cccif__substeps_mp5_xkp_xlb}
3. 스크립트된 REST 자원에 대한 보안 및 컨텐츠 협상을 설정합니다.  
   인증 및 요청 형식을 설정하려면 선택합니다. 사용자 지정 통합이 인증에 의존하지 않는 경우 다음과 같이 제거할 수 있습니다.
   1. 스크립트된 REST 자원에 대한 새 기록에서 보안 탭으로 이동합니다.
   2. 인증 필요의 선택을 취소합니다.
   3. 콘텐츠 협상 탭을 클릭한 다음 지원되는 요청 형식 재정의를 선택합니다.
   4. 제출을 클릭합니다.
   {#configure-rest-api-va-cccif__substeps_es1_v2h_zlb}
4. REST API 속도 제한을 설정하여 수신 요청의 속도를 정의합니다.
   1. 다음으로 이동 모두시스템 웹 서비스REST요율 제한 규칙.
   2. 새로 만들기를 클릭합니다.
   3. 양식의 필드에 내용을 입력합니다.  
      {#configure-rest-api-va-cccif__table_jk5_vdy_ktb__entry__2}

      | 필드 | 설명 |
      |-|-|
      | 이름 | 요율 제한 규칙의 고유한 이름입니다. |
      | REST API | 이전 단계에서 생성한 REST API입니다. |
      | 버전 | REST API의 버전입니다. 나열된 값은 선택한 REST API에 따라 다릅니다. |
      | 자원 | 지정된 버전의 자원입니다. 나열된 값은 선택한 버전에 따라 다릅니다. |
      | 활성 | 요율 제한 규칙이 활성 상태임을 나타내는 확인란입니다. 요율 제한 규칙은 생성하자마자 기본적으로 활성화됩니다. 요율 제한 규칙을 비활성화하여 요율 제한 적용을 중지하거나 요율 제한 규칙을 활성화하여 요율 제한 적용을 재개할 수 있습니다. |
      | 시간당 요청 제한 | 시간당 허용되는 최대 요청 수입니다. 주: 이 필드의 값을 업데이트할 때마다 Now Platform이 요청 수를 0으로 재설정하고 현재 시간의 모든 위반을 삭제합니다. |
      | 적용 대상 | 이 규칙에 의해 제한된 사용자입니다. 모든 사용자를 선택합니다. |
      [ ]

      {#configure-rest-api-va-cccif__table_jk5_vdy_ktb}
   4. 제출을 클릭합니다.
   {#configure-rest-api-va-cccif__substeps_q3r_cyx_ktb}

## 다음에 수행할 작업

[사용자 지정 채팅 통합을 위한 작업 스크립트 생성](https://servicenow-prod.fluidtopics.net/6JoMipbNPLxu~hDjuGr_qA "사용자 지정 채팅 통합이 채팅 프로세스를 통해 통신하는 데 필요한 변환을 설정합니다.")

