집계 API

  • 릴리스 버전: Zurich
  • 업데이트 날짜 2025년 07월 31일
  • 소요 시간: 7분
  • 집계 API는 기존 테이블 및 열 데이터에 대한 집계 통계를 계산할 수 있는 끝점을 제공합니다.

    API 요청 집계의 경우 쿼리하는 테이블의 모든 기록에 대한 읽기 권한이 있어야 합니다. ACL이 요청 사용자가 테이블의 기록에 접근하는 것을 차단하는 경우 요청은 403 금지됨 오류를 반환합니다.

    집계 - GET /now/stats/{tableName}

    지정된 테이블에 대한 기록을 조회하고 반환된 값에 대한 집계 기능을 수행합니다.

    다음 집계 함수 중 하나를 대체 <aggregate> 하여 parameter 또는 sysparm_having=<aggregate>^field^operator^value parameter를 sysparm_<aggregate>_fields 사용하여 수행할 집계 함수를 지정할 수 있습니다.

    • 평균
    • 최대
    • 최소
    • 합계

    URL 형식

    버전이 지정된 URL: /api/now/{api_version}/stats/{tableName}

    기본 URL: /api/now/stats/{tableName}

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

    지원되는 요청 매개변수

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

    데이터 유형: 문자열

    tableName 기록을 검색할 테이블의 이름입니다.

    데이터 유형: 문자열

    표 2. 쿼리 매개변수
    이름 설명
    이름-값 쌍 매개변수 사용에 대한 대안입니다 sysparm_query . 키가 필드의 이름인 키-값 쌍을 사용하여 쿼리를 필터링할 수 있습니다.

    예를 들어 &sysparm_query=active=true 매개변수를 사용하는 대신 &active=true를 사용할 수 있습니다. 필드가 선택 또는 참조 유형 필드인 경우(예: &state=7 대신 &state=closed) 표시 값을 사용할 수 있습니다. 여러 키-값 쌍을 지정하려면 각 쌍을 앰퍼샌드로 구분합니다(예: &active=true&assigned_to=john.smith).

    데이터 유형: 문자열

    sysparm_<집계>_fields 각 집계 작업을 수행할 필드 목록입니다. 각각 쉼표로 구분하여 여러 필드를 지정할 수 있습니다. 예를 들어, 기간 및 우선순위 필드에서 평균 값을 가져오려면 sysparm_avg_fields=duration,priority를 사용합니다.
    주:
    쿼리에 대해 이 매개변수나 매개변수 sysparm_count 또는 둘 다를 지정하여 의미 있는 결과를 반환합니다. 매개 변수를 전달하지 않으면 집계 작업이 수행되지 않습니다.

    데이터 유형: 문자열

    sysparm_count 쿼리가 반환하는 기록 수를 반환할지 여부를 결정하는 플래그입니다.
    주:
    쿼리에 대해 이 매개변수나 매개변수 sysparm_<aggregate>_fields 또는 둘 다를 지정하여 의미 있는 결과를 반환합니다. 매개 변수를 전달하지 않으면 집계 작업이 수행되지 않습니다.

    데이터 유형: 문자열

    sysparm_display_value 참조 또는 선택 필드로 그룹화할 때의 데이터 검색 작업입니다. 이 값에 따라 쿼리는 표시 값, 데이터베이스의 실제 값 또는 둘 다를 반환합니다.
    • true: 모든 필드의 표시 값을 반환합니다.
    • false: 데이터베이스에서 실제 값을 반환합니다. 값을 지정하지 않으면 이 매개변수는 기본적으로 false로 설정됩니다.
    • all: 실제 값과 표시 값을 모두 반환합니다.
    이 매개변수를 설정하는 기본 방법은 없습니다. 그러나 표시 값을 지정하면 데이터베이스에서 읽히지 않고 다른 필드와 기록을 참조할 수 있으므로 성능 문제가 발생할 수 있습니다. 표시 값과 실제 값에 대한 자세한 내용은 테이블 API FAQ(KB0534905)를 참조하십시오.

    데이터 유형: 문자열

    sysparm_group_by 반환된 데이터를 그룹화할 필드입니다. 각 필드를 쉼표로 구분하여 여러 필드를 지정할 수 있습니다(예: sysparm_group_by=priority,state).

    데이터 유형: 문자열

    sysparm_having 집계 작업을 기준으로 데이터를 필터링할 수 있는 추가 쿼리입니다. 이 매개변수의 값은 구문 aggregate^field^operator^value(예: count^priority^>^3 )를 따라야 우선순위가 3보다 큰 쿼리 결과 내의 기록 수를 구할 수 있습니다. 각각 쉼표로 구분하여 여러 쿼리를 지정할 수 있습니다( 예: count^state^=^1,avg^priority^>^3).

    데이터 유형: 문자열

    sysparm_order_by 그룹화된 결과의 순서를 지정할 값 목록입니다. 필드나 집계를 사용하여 순서를 지정할 수 있습니다. 예를 들어, sysparm_order_by=AVG^state를 지정하면 평균 상태 값이 낮은 결과 그룹이 먼저 반환됩니다. COUNT를 기준으로 정렬하여 각 그룹의 기록 수를 기준으로 기록 그룹을 정렬할 수도 있습니다.

    순서를 지정하면 기본적으로 그룹이 오름차순으로 정렬됩니다. ^DESC를 사용하여 내림차순으로 정렬합니다(예: sysparm_order_by=state^DESC).

    데이터 유형: 문자열

    sysparm_query 인코딩된 쿼리입니다.

    예: (sysparm_query=active=true)(sysparm_query=caller_id=javascript:gs.getUserID()^active=true)

    데이터 유형: 문자열

    표 3. 요청 본문 매개변수(XML 또는 JSON)
    이름 설명
    없음

    헤더

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

    표 4. 요청 헤더
    헤더 설명
    수용 응답 본문의 데이터 형식입니다. 지원되는 유형은 application/json 또는 application/xml입니다.

    기본값: application/json

    표 5. 응답 헤더
    헤더 설명
    없음

    상태 코드

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

    표 6. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    401 승인되지 않았습니다. 사용자 자격 증명이 잘못되었거나 전달되지 않았습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수(JSON 또는 XML)

    이름 설명
    지정된 테이블 및 지정된 요청 매개변수에 따라 다릅니다.

    샘플 cURL 요청

    curl "https://instance.servicenow.com/api/now/stats/incident?sysparm_avg_fields=reassignment_count%2Cbusiness_stc&sysparm_group_by=assignment_group" \
    --request GET \
    --header "Accept:application/json" \
    --user "username":"password"
    
    {
      "result": [
        {
          "stats": {
            "avg": {
              "business_stc": "804162.7143",
              "reassignment_count": "1.0000"
            }
          },
          "groupby_fields": [
            {
              "value": "",
              "field": "assignment_group"
            }
          ]
        },
        {
          "stats": {
            "avg": {
              "business_stc": "2037371.0000",
              "reassignment_count": "1.5000"
            }
          },
          "groupby_fields": [
            {
              "value": "287ee6fea9fe198100ada7950d0b1b73",
              "field": "assignment_group"
            }
          ]
        },
        {
          "stats": {
            "avg": {
              "business_stc": "1821488.2857",
              "reassignment_count": "1.1111"
            }
          },
          "groupby_fields": [
            {
              "value": "8a5055c9c61122780043563ef53438e3",
              "field": "assignment_group"
            }
          ]
        },
        {
          "stats": {
            "avg": {
              "business_stc": "1730322.0000",
              "reassignment_count": "1.2500"
            }
          },
          "groupby_fields": [
            {
              "value": "287ebd7da9fe198100f92cc8d1d2154e",
              "field": "assignment_group"
            }
          ]
        },
        {
          "stats": {
            "avg": {
              "business_stc": "1564478.6250",
              "reassignment_count": "1.2500"
            }
          },
          "groupby_fields": [
            {
              "value": "d625dccec0a8016700a222a0f7900d06",
              "field": "assignment_group"
            }
          ]
        },
        {
          "stats": {
            "avg": {
              "business_stc": "1512202.2500",
              "reassignment_count": "1.1111"
            }
          },
          "groupby_fields": [
            {
              "value": "8a4dde73c6112278017a6a4baf547aa7",
              "field": "assignment_group"
            }
          ]
        }
      ]
    }