다음을 통해 공유


GraphQL 정의용 API

이 문서에서는 GraphQLApi 항목에 대한 정의 구조의 분석을 제공합니다.

정의 부분

이 표에는 GraphQLApi 정의 부분이 나열됩니다.

정의 파트 경로 유형 필수 설명
.platform PlatformDetails(JSON) 거짓 항목의 일반적인 세부 정보를 설명합니다.
graphql-definition.json GraphQLDefinition(JSON) 맞다 GraphQL용 API의 일반 및 데이터 원본 구성에 대해 설명합니다.

GraphQLDefinition

이름 유형 설명
$schema 문자열 스키마 사양에 대한 URL
데이터 원본 Source[] GraphQL용 API와 연결된 데이터 원본 목록

출처

이름 유형 설명
sourceItemId 가이드 원본 항목의 ID
sourceWorkspaceId 가이드 원본 항목이 포함된 작업 영역의 ID
connectionId 가이드 원본 항목에 사용되는 연결의 ID
소스 유형 소스 유형 원본 항목의 유형
객체 SourceObject[] GraphQL API를 사용하여 노출되는 원본 항목의 개체 목록

SourceType(열거형)

이름 설명
SqlAnalyticsEndpoint SQL Analytics 엔드포인트
창고 창고
SqlDbNative SQL 데이터베이스
AzureSql Azure SQL 데이터베이스

SourceObject

이름 유형 설명
graphqlType 문자열 원본 항목의 개체에 사용할 GraphQL 형식 이름
sourceObject 문자열 GraphQL API에 의해 노출되는 원본 항목의 개체 이름
소스오브젝트타입 (sourceObjectType) SourceObjectType 원본 항목의 개체 형식
행동 <ActionType, ActionValue> 활성화 상태의 쿼리 및 변형을 나타내는 작업 유형과 작업 값의 사전
필드 매핑 <String, String> GraphQL 필드에 대한 원본 개체의 필드 사전
관계 Relationship[] 원본 개체에서 구성된 관계 목록
IsStoredProcedureQueryNode 불리언 (Boolean) 저장 프로시저를 노출하기 위한 GraphQL 작업 유형입니다. True - 쿼리, False - 변경.

SourceObjectType(열거형)

이름 설명
테이블 / 표 데이터베이스 테이블
보기 데이터베이스 뷰
저장 프로시저 데이터베이스 저장 프로시저

ActionType(열거형)

이름 설명
쿼리 원본 개체에 대한 쿼리
Query_by_pk 원본 개체의 기본 키로 쿼리
창조하다 원본 개체에 변형 만들기
업데이트 원본 개체의 변경 내용 업데이트
삭제 원본 개체에 대한 변경 삭제
실행 저장 프로시저에서 쿼리 또는 변경 실행

ActionValue(열거형)

이름 설명
활성화됨 쿼리 또는 변형 사용
비활성화 쿼리 또는 변형 사용 안 함

관계

이름 유형 설명
분야 문자열 GraphQL 형식의 관계에 사용할 GraphQL 필드 이름
카디널리티 RelationshipCardinality 관계의 카디널리티
targetObject 문자열 관계의 대상 개체
sourceFields String[] 관계에 사용되는 원본 개체의 필드 목록
targetFields String[] 관계에 사용되는 대상 개체의 필드 목록
linkingObject 문자열 원본 개체와 대상 개체 간의 다 대 다 관계에 대한 개체 연결
linkingSourceFields String[] 원본 개체의 관계에 대한 연결 개체의 필드 목록
linkingTargetFields String[] 대상 개체와의 관계에 대한 연결 개체의 필드 목록

RelationshipCardinality(열거형)

이름 설명
ManyToOne 다 대 일 관계
OneToMany 일대다 관계
OneToOne 일대일 관계
ManyToMany 다대다 관계

GraphQLDefinition 예제

{
  "$schema": "https://developer.microsoft.com/json-schemas/fabric/item/graphqlApi/definition/1.0.0/schema.json",
  "datasources": [
    {
      "objects": [
        {
          "actions": {
            "Query": "Enabled"
          },
          "fieldMappings": {
            "LastName": "LastName",
            "Name": "Name"
          },
          "graphqlType": "Customers",
          "relationships": [],
          "sourceObject": "model.Customers",
          "sourceObjectType": "View"
        }
      ],
      "sourceItemId": "c54cd4ce-cbaa-4fc5-bcc8-121f2a3e0c4c",
      "sourceType": "Warehouse",
      "sourceWorkspaceId": "c2231263-b81e-4dd2-a69b-41eca8c93584"
    },
    {
      "connectionId": "daa5dc10-6eae-4b19-af5f-da8db84c51c1",
      "objects": [
        {
          "actions": {
            "Query": "Enabled"
          },
          "fieldMappings": {
            "id": "id",
            "publisher_id": "publisher_id",
            "title": "title"
          },
          "graphqlType": "publishers",
          "relationships": [],
          "sourceObject": "dbo.publishers_view",
          "sourceObjectType": "View"
        },
        {
          "actions": {
            "Query": "Enabled",
            "Query_by_pk": "Enabled",
            "Create": "Enabled",
            "Update": "Enabled",
            "Delete": "Disabled"
          },
          "fieldMappings": {
            "id": "id",
            "title": "title"
          },
          "graphqlType": "books",
          "relationships": [],
          "sourceObject": "dbo.books",
          "sourceObjectType": "Table"
        }
      ],
      "sourceItemId": "daa5dc10-6eae-4b19-af5f-da8db84c51c1",
      "sourceType": "AzureSql",
      "sourceWorkspaceId": "00000000-0000-0000-0000-000000000000"
    }
  ]
}