---
sourceDocument: 호주 API 참조
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ko-KR/api-reference

 Release :

    - australia

ft:locale :

    - ko-KR

ft:publication_title :

    - 호주 API 참조

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# GraphQL API 프레임워크를 사용하여 기록 데이터 쿼리

# GraphQL API 프레임워크를 사용하여 기록 데이터 쿼리 {#ariaid-title1}

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

사용자 지정 GraphQL API를 생성하여 구성요소 또는 타사 시스템의 기록 데이터를 쿼리합니다.

예를 들어 SLA와 연관된 케이스를 표시하는 구성요소를 만들 수 있습니다. 을 사용하여 넥스트 경험 UI 프레임워크 필요한 구성요소를 개발하고 케이스 테이블의 데이터를 정의하는 GraphQL 스키마를 만들어 플랫폼에서 케이스 데이터에 액세스할 수 있습니다.

구성요소 개발에 대한 자세한 내용은 [Workspace용 구성요소 개발](https://www.servicenow.com/docs/access?context=custom-components&version=australia&pubname=australia-application-development&ft:locale=en-US)을 참조하십시오.

## GraphQL의 이점 {#scripted-graph-ql__section_ztd_cf1_dlb}

GraphQL은 클라이언트 측 개발에 최적화된 웹 쿼리 언어입니다. 스크립팅된 GraphQL을 사용하여 다음을 수행할 수 있습니다.  
* 인트로스펙션을 통해 쿼리할 수 있는 필드와 객체를 검색합니다.
* 구성요소에서 필요한 정확한 데이터를 쿼리합니다.
* REST 요청에 대한 여러 엔드포인트가 아니라 단일 API에서 가능한 여러 쿼리를 관리합니다.
* 스키마를 공개하여 외부 공급업체 시스템과 통합합니다.
* 구성요소에서 GraphQL 쿼리를 생성하고 응답을 처리합니다.
{#scripted-graph-ql__ul_pp2_myf_dlb}

## 시작하기 전에 알아야 할 사항 {#scripted-graph-ql__section_yrj_nh1_dlb}

사용자 지정 GraphQL API 만들기를 시작하기 전에 다음이 있어야 합니다.  
* 스키마를 작성하기 위한 GraphQL 지식입니다.
* API 동작을 정의하는 데 필요한 JavaScript 지식.
* 웹 구성요소 개념에 대한 일반적인 지식.
* 기록 데이터를 사용하는 사용자 지정 작업 공간 구성요소입니다.
* 스키마에서 노출할 데이터 모델에 대한 ServiceNow 이해입니다.
* GlideRecord 지식을 사용하여 필드를 해결자 스크립트의 기록 데이터에 매핑합니다.
{#scripted-graph-ql__ul_zj1_qh1_dlb}

## GraphQL 개요 {#scripted-graph-ql__section_wqr_bf1_dlb}

스크립팅된 GraphQL API를 만드는 데는 다음 부분이 포함됩니다.  

GraphQL 스키마 정의 언어(SDL)
:   GraphQL 쿼리에서 사용할 수 있는 필드의 구조와 데이터 유형을 정의합니다. GraphQL 스크립팅된 스키마 \[sys_graphql_schema\] 테이블의 스키마 스크립트 필드를 사용하여 SDL을 정의할 수 있습니다. SDL은 쿼리 및 변형 작업만 지원합니다.

해결자
:   각 필드에서 반환하는 데이터를 정의합니다. GraphQL 스크립트 스키마 양식의 GraphQL 스크립트 해결 프로그램 관련 목록에서 각 필드에 대한 확인자를 정의할 수 있습니다.

유형 해결 프로그램
:   인터페이스와 공용 구조체를 구체적인 GraphQL 유형으로 해결합니다. 예를 들어 `인시던` 트 유형과 `문제` 유형 간의 조합을 정의할 수 있습니다. typeresolver 스크립트를 사용하여 반환할 시기를 정의합니다. GraphQL 스크립트 스키마 양식의 GraphQL 스크립트 유형 해결 프로그램 관련 목록에서 유형 해결 프로그램을 정의할 수 있습니다.

해결자 매핑
:   해결자를 스키마의 필드에 매핑합니다. GraphQL 스크립팅된 스키마 양식의 GraphQL 스크립팅된 확인자 매핑 관련 목록에서 확인자 매핑을 정의할 수 있습니다.

GraphQL 쿼리 언어에 대한 자세한 내용은 [GraphQL 웹 사이트를](https://graphql.org/) 참조하세요.

GraphQL API에 대한 쿼리를 테스트하려면 통합 GraphQL 테스트 도구인 GraphQL 탐색기를 사용할 수 있습니다. 자세한 내용은 [GraphQL 탐색기를 사용하여 GraphQL API 테스트](https://servicenow-prod.fluidtopics.net/bgMppBT_pimaKdnoSN6I5Q "통합 GraphQL 테스트 도구를 사용하여 GraphQL API를 쿼리합니다.") 문서를 참조하십시오.

## 제한 {#scripted-graph-ql__section_ymn_b2j_dlb}

다음 GraphQL 기능은 지원되지 않습니다.  
* 구독 운영
* 사용자 지정 스칼라 유형
{#scripted-graph-ql__ul_fns_g3v_flb}

## 성찰 {#scripted-graph-ql__section_vxz_rw5_flb}

기본적으로 사용자 지정 스키마에 대한 내성적 쿼리는 사용할 수 없습니다. 인트로스펙션을 켜려면 문서를 참조하십시오 [GraphQL 스키마에 대한 내성적 쿼리 사용](https://servicenow-prod.fluidtopics.net/_5Yon0lISlH2UPT5G5Zdcw "인트로스펙션을 활성화하여 인스턴스의 스키마에서 지원하는 쿼리와 변형을 검색합니다.").

## 네임스페이스 {#scripted-graph-ql__section_frl_yyh_dlb}

GraphQL API에는 두 가지 네임스페이스가 있습니다.  

애플리케이션 네임스페이스
:   사용자 지정 애플리케이션의 네임스페이스입니다. 애플리케이션 네임스페이스에 대한 자세한 내용은 [애플리케이션 범위를](https://www.servicenow.com/docs/access?context=c_ApplicationScope&version=australia&pubname=australia-application-development&ft:locale=en-US) 참조하십시오.

스키마 네임스페이스
:   모든 쿼리가 고유한지 확인하기 위한 스키마의 네임스페이스입니다. 단일 애플리케이션에 여러 스키마 네임스페이스를 사용할 수 있습니다.

데이터를 쿼리할 때 쿼리에 두 네임스페이스를 모두 포함해야 합니다. 예를 들어, 다음 쿼리는 다음 네임스페이스를 사용하여 데이터를 검색합니다.  
* 애플리케이션 네임스페이스: `x_graph_scope`
* 스키마 네임스페이스: `planet`
{#scripted-graph-ql__ul_ihg_pzh_dlb}  

    query {
      x_graph_scope {
        planet {
          findAll {
            name
            mass
            distance
          }
        }
      }
    }

## 지침 및 전역 함수 {#scripted-graph-ql__section_zdw_rnc_glb}

`@source` 스키마 지시문

:   GraphQL 필드를 상위 객체의 속성 값에 매핑합니다. 필드에 별도의 확인자 스크립트가 있는 경우, 시스템은 상위 객체 대신 확인자의 기록을 사용합니다.

    스키마 스크립트에서 `@source` 지시문을 사용합니다.

`@defer` 쿼리 지침
:   쿼리의 나중부까지 GraphQL 조각 처리를 연기합니다. 조각 내에서 응답 속도가 느린 필드에 대한 데이터 반환을 지연하려면 이 쿼리 지시문을 사용합니다. 지연된 조각의 필드 결과를 다중 파트 응답으로 스트리밍합니다.  
    주:  
    `@defer` 지시문을 사용하려면 GraphQL 클라이언트가 멀티파트/혼합 HTTP 헤더를 수락해야 합니다. 예를 들어 HTTP 헤더를 `Accept: multipart/mixed; boundary="-"`로 설정합니다.

    `@defer` 지시문을 사용하여 사용자의 상호작용 시간을 개선합니다. 이 쿼리 지침을 무분별하게 적용하면 성능이 저하될 수 있으므로 적용하지 마십시오. 성능 테스트를 수행하여 성능 향상을 위해 연기할 수 있는 필드를 결정합니다.

해결자 기능

:   이러한 함수는 전역 환경 객체에서 사용할 수 있습니다.

    * getArguments(): 이전 필드의 인수를 반환합니다.
    * getSource(): 상위 객체를 반환합니다.
    {#scripted-graph-ql__ul_t2l_vrx_glb}

    해결자 스크립트에서 사용합니다.

Typeresolver 함수

:   이러한 함수는 전역 환경 객체에서 사용할 수 있습니다.

    * getArguments(): 이전 필드의 인수를 반환합니다.
    * getObject(): 상위 객체를 반환합니다.
    * getTypeName(): 인터페이스 또는 유니언 유형의 이름을 반환합니다.
    {#scripted-graph-ql__ul_e1w_vrx_glb}

    typeresolver 스크립트에서 사용합니다.

## 데모 애플리케이션 {#scripted-graph-ql__section_ubj_21v_flb}

변형 및 쿼리가 있는 데모 GraphQL PTO 달력 스키마를 보려면 GraphQL Framework 데모 애플리케이션 플러그인(com.glide.graphql.framework.demo)을 활성화하십시오.
* **[GraphQL 스키마 생성](https://servicenow-prod.fluidtopics.net/wGKc9roqfcIVlw0RaQtT3w#build-graphql-scripted-schema)**   
  GraphQL 쿼리에 데이터를 사용할 수 있도록 GraphQL 스키마를 생성합니다.
* **[GraphQL 스키마에 대한 내성적 쿼리 사용](https://servicenow-prod.fluidtopics.net/_5Yon0lISlH2UPT5G5Zdcw)**   
  인트로스펙션을 활성화하여 인스턴스의 스키마에서 지원하는 쿼리와 변형을 검색합니다.
* **[GraphQL 탐색기를 사용하여 GraphQL API 테스트](https://servicenow-prod.fluidtopics.net/bgMppBT_pimaKdnoSN6I5Q)**   
  통합 GraphQL 테스트 도구를 사용하여 GraphQL API를 쿼리합니다.
* **[구성요소에서 GraphQL 스키마 쿼리](https://servicenow-prod.fluidtopics.net/lX2CVsGEXDVCQhXkZyPViw)**   
  스크립팅된 GraphQL 스키마를 쿼리하여 구성요소의 기록 데이터에 액세스합니다.
* **[GraphQL 시스템 속성](https://servicenow-prod.fluidtopics.net/nyxzOa9VthfztvlJ4_jT1A)**   
  GraphQL API 프레임워크 동작을 구성합니다. 예를 들어 스키마에 내성적 쿼리를 허용할지 여부를 구성할 수 있습니다.

