Rest Api

Rest Api Action icon

RESTful API 호출을 동기식으로 처리합니다. 이 작업을 사용하면 시스템이 더 높은 부하를 처리할 수 있습니다. 이 작업은 API 호출에 대한 본문과 헤더를 모두 반환합니다. 이렇게 하면 스크립트를 더 쉽게 테스트하고 디버그할 수 있습니다.

REST API 작업이 포함된 스크립트를 테스트하고 응답 정보를 볼 수 있습니다. 이를 수행하려면 추적 옵션으로 시작을 사용하여 스크립트를 실행합니다.

SNIPPET 작업에서 GetRestProxy() 함수를 사용하여 동기식으로 RESTful API 호출을 수행할 수 있습니다. 이 옵션은 REST API 작업 및 높은 부하를 처리하지 못하며, 권장하는 방식이 아닙니다.

이 작업은 Studio 스크립트에서 웹 서비스에 연결하는 지원되는 방법 중 하나입니다.

종속성

이 작업의 사용에는 사업부닫힘 고급 조직 그룹화는 CXone 환경을 위해 기술 지원, 청구 및 글로벌 설정을 관리하는 데 사용됩니다. 수준에서 적용되는 제한 사항이 있습니다. 서로 영향을 주지 않도록 수행합니다. 플랫폼 내의 제한 사항은 다음과 같습니다.

  • 응답 형식: JSON 응답 형식만 지원됩니다.
  • 실패 시 재시도: 응답을 반환하기 전에 실패 메시지가 수신되면 작업 처리기가 자동으로 2번 시도합니다.
  • 시간 초과: 요청의 시간 초과 값을 지정합니다. 값은 90초를 초과할 수 없습니다.
  • 최대 응답 크기: 최대 응답 크기는 32KB입니다. 이는 기존 Snippet 기능과 일치합니다. 이 한도에 도달한 경우에는 반환되는 데이터의 크기를 줄여야 합니다.
  • 조절 한도: 조절 한도는 2개의 매개 변수로 정의됩니다.
    • 최대 동시 요청: 기본적으로 최대 100개의 동시 요청이 허용됩니다. 이 제한은 모든 CXone 고객에 동일합니다. 즉, 100개의 동시 요청 결과는 Snippet 작업에서 API 통화를 걸 때보다 처리량이 훨씬 높다는 의미입니다. 100개 이상의 동시 요청이 필요한 경우 CXone 계정 담당자에게 사업부에 대한 한도를 늘리도록 요청하십시오. 이는 특별 승인이 필요합니다.
    • 대기열 수: 요청이 이 한도를 초과하면 그 이상의 요청은 처리 대기열에 들어갑니다. 요청 수가 한도 미만으로 감소하면 대기열에 있는 요청이 처리됩니다.
  • 회로 차단기: 지정된 URL이 다운되었거나 연결할 수 없는 경우 요청에 많은 실패가 발생할 수 있습니다. 이 경우, CXone은(는) 일정 기간 동안 REST API 작업에서 모든 URL의 요청 실행을 줄입니다. 이를 통해 지정된 URL이 실패에서 복구될 수 있습니다. 제한 사항은 다음과 같습니다.
    • 백오프 시간 또는 휴식: 실패율에 도달하면 REST API 작업에서 보내는 요청이 30초 동안 실행되지 않습니다.
    • 최소 처리량: 1초당 요청 100개. 사업부가 최소 요청 수를 실행하지 않는 경우 요청이 실패해도 사용자의 요청을 계속 실행합니다.
    • 실패율: 30초 동안 요청의 50%가 실패한 경우 다음 30초 동안 요청이 실행되지 않습니다. 30초는 롤링 윈도우입니다.

이 작업의 다른 종속성은 다음과 같습니다.

  • 지원되는 응답 형식은 JSON뿐입니다. 이 작업을 위해서는 모든 JSON이 한 줄에 있어야 합니다. 이 작업에서 JSON을 사용하는 경우에는 다음을 수행할 수 있습니다.

    • JSON이 포함된 문자열에서 변수 대체를 수행합니다.
    • asjson() 함수를 사용하여 동적 데이터 객체를 JSON으로 변환하는 기능이 지원됩니다. asjson()은(는) 모든 것을 문자열로 처리합니다. 즉, 부울 또는 숫자 값으로 작업할 때는 약간의 조작이 필요하다는 의미입니다.
    • 이전 REST API 작업의 출력 변수 resultSet(out)도 이 속성으로 전달합니다.
  • 응답은 JToken 개체로 반환됩니다. 스크립트에서 동적 데이터 개체로 작업하는 것처럼 작업할 수 있습니다.
  • 응답에는 헤더와 응답 본문이 포함됩니다. 여기에는 HTTP 상태 코드도 포함될 수 있습니다. 일부 응답에는 상태 코드가 포함되지 않습니다. 오류가 없는 경우, REST API 작업이 유효한 응답을 생성하지 못하거나 반환된 오류가 유효한 응답으로 구문 분석할 수 없는 경우에는 어떠한 상태도 포함되지 않습니다.
  • 응답에는 헤더와 응답 본문이 포함됩니다. 두 개의 변수 __httpstatuscode__httpstatusdescription에 HTTP 상태 코드를 포함시킵다. 이들 변수는 서버에서 반환된 정보로 채워집니다. 그러나 오류, 시간 초과, 오버플로, 회로 끊김 또는 서버가 응답을 반환하지 않는 다른 상황 등이 있는 경우에는 채워지지 않습니다.
  • 스크립트에 두 개 이상의 REST API 작업을 사용할 수 있지만, 동일한 개체에 두 가지를 모두 참조할 수 없습니다.

입력 속성

이러한 속성은 실행할 때 작업이 사용하는 데이터를 정의합니다.

속성

설명

Caption

스크립트에서 이 작업을 고유하게 식별하는 짧은 문구를 입력합니다. 캡션은 스크립트 캔버스의 작업 아이콘 아래에 표시됩니다. The default is the action name.

Verb

GET, PUT, POST, DELETE 및 PATCH와 같은 기본 REST 작업을 지원합니다.

Parameters

포함할 매개변수 또는 키 값 쌍의 JSON 개체로 게시할 데이터를 지정합니다. Jobject , Jarray, Jtoken 등 다양한 종류의 JSON을 사용할 수 있습니다.

Headers

전달자 토큰과 같은 고객 인증을 허용하는 사용자 정의 헤더를 추가할 수 있습니다. 이 필드에서는 JSON을 사용할 수 있습니다.

중요 사용자 정의 URL 엔드포인트에 다른 헤더가 필요한 경우 해당 헤더를 이 속성에 지정해야 합니다. 기존 Snippet 작업과 기능을 동일하게 유지하기 위해 CXone은(는) 기본으로 다음 헤더를 추가합니다.

{"Accept":"application/json", "Content-Type" :"application/x-www-form-urlencoded"}

Command

현재 유일한 옵션은 MakeRestRequest입니다. 이 함수는 Snippet 작업에서 REST API 호출을 수행할 때 사용되는 MakeRestRequest()함수와 동일합니다.

TimeOutInMilliSeconds

REST 호출의 시간 초과를 지정하고 적용할 수 있습니다. 90초(90000밀리초) 미만이어야 합니다. 시간제한을 지정하지 않으면 기본값은 10초(10000밀리초)입니다.

Service Address

작업에서 호출하려는 REST API의 URL입니다. 이 속성으로 변수 대체를 사용할 수 있습니다. Parameters 속성을 사용하여 포함할 쿼리 매개변수를 지정합니다.

출력 속성

이러한 속성에는 작업 실행에서 반환되는 데이터를 보유하는 변수가 포함됩니다. 작업이 완료될 때 참조 및 사용할 수 있습니다.

속성

설명

resultSet(out)

서비스 주소에 지정된 API에서 반환된 모든 정보를 저장하는 변수입니다. 필요한 경우 이 변수의 내용을 헤더와 매개 변수에 그대로 전달할 수 있습니다. 응답은 Jtoken 개체로 반환되지만 스크립트에서 다른 동적 개체와 마찬가지로 동적 개체로 선언하고 작업할 수 있습니다.

errorArgList(out)

발생하는 모든 오류에 대한 정보를 보유한 동적 데이터 개체입니다. 오류가 발생하면 개체는 HTTP 상태 코드, 상태 설명, 메시지를 보유합니다. 오류가 없으면 개체가 비어 있는 것입니다.

HTTP 상태 코드와 설명은 오류에서만 반환되며 유효한 응답으로 올바르게 구문 분석될 수 있습니다. 즉, 일부 오류에는 HTTP 응답 코드가 포함되지 않습니다.

결과 브랜치 조건

결과 브랜치 조건을 사용하면 작업이 실행될 때 여러 결과를 처리하기 위해 스크립트에 브랜치를 생성할 수 있습니다.

조건

설명

Throttle

짧은 시간 내에 너무 많은 요청이 실행될 때 사용한 경로. 자세한 내용은 아래 제한 사항을 참조하십시오.

InvalidInput

유효하지 않은 입력이 발견되거나 시간초과 오류가 발생한 경우 사용한 경로. 모든 매개변수는 스크립트가 저장될 때 검증됩니다.

Failure

요청을 실행하는 동안 NICE CXone애플리케이션에서 오류 또는 예외가 발생할 때 사용되는 경로.

Error

원격 고객 엔드포인트가 http 오류 코드를 반환할 때 사용한 경로입니다.

Default

90초 이내에 응답이 수신되지 않을 때 사용하는 경로.

Success

작업이 오류 없이 완료되고 API 호출 또는 데이터 반환이 성공한 경우 사용되는 경로(2xx 응답 코드).