Skip to main content
The API supports GraphQL introspection, so you can dynamically discover types, fields, and relationships at runtime. This page documents the core GraphQL types that power the Knowledge Graph API, including:
  • Node types such as Activity, Lesson, Course, and StandardsFrameworkItem
  • Relationship property types such as HasPartProperties and SupportsProperties
  • Examples for exploring the schema with GraphQL introspection and API clients

Explore the schema with introspection

You can use standard GraphQL introspection queries to discover available types and fields.

Discover available types

List all types, their kind, and description.
query {
  __schema {
    types {
      name
      kind
      description
    }
  }
}

Explore a specific type

Inspect a single type, including its fields and field types.
query {
  __type(name: "Lesson") {
    name
    fields {
      name
      type {
        name
        kind
      }
      description
    }
  }
}

Discover available queries

List all root query fields and their arguments.
query {
  __schema {
    queryType {
      fields {
        name
        args {
          name
          type {
            name
          }
        }
      }
    }
  }
}

Explore relationship fields on a type

Inspect field types and nested type information for a specific type.
query {
  __type(name: "Lesson") {
    fields {
      name
      type {
        name
        ofType {
          name
        }
      }
    }
  }
}
Look for fields that start with has or that match relationship naming patterns to understand available connections between nodes.

Using cURL for Schema Exploration

# Discover all available types
curl -X POST \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: YOUR_API_KEY' \
  -d '{"query":"{ __schema { types { name kind } } }"}' \
  https://cumtxmqb68.execute-api.us-west-2.amazonaws.com/staging/v1.0.0/graphql
# Explore a specific type (e.g., Lesson)
curl -X POST \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: YOUR_API_KEY' \
  -d '{"query":"{ __type(name: \"Lesson\") { fields { name type { name } } } }"}' \
  https://cumtxmqb68.execute-api.us-west-2.amazonaws.com/staging/v1.0.0/graphql

Using Python for Schema Exploration

from gql import Client, gql

# Get all available types
schema_query = gql("""
    query {
      __schema {
        types {
          name
          kind
          fields {
            name
            type {
              name
            }
          }
        }
      }
    }
""")

result = client.execute(schema_query)
for type_info in result["__schema"]["types"]:
    if not type_info["name"].startswith("__"):  # Skip introspection types
        print(f"Type: {type_info['name']} ({type_info['kind']})")

<Note>
  ← Back to [private beta table of contents](/knowledge-graph/private-beta).
</Note>

Full schema

Core node types

These @node types represent the core entities in the Knowledge Graph.

Activity

Fields
FieldTypeDescription
academicSubjectString!
audience[String]!
authorString!
courseCodeString!
curriculumLabelString!
dateCreatedDate!
educationalUseString!
gradeLevel[String]!
gradingRequiredBoolean!
identifierString!
inLanguageString!
isOptionalBoolean!
licenseString!
lmsLoadingGuidanceString!
nameString!
ordinalNameString!
positionBigInt!
providerString!
studentGroupingTypeString!
submissionRequiredBoolean
timeRequiredString
Relationships
Relationship fieldTarget typeRelationship typeDirectionProperties type
hasEducationalAlignmentStandardsFrameworkItemsStandardsFrameworkItem!hasEducationalAlignmentOUTHasEducationalAlignmentProperties
hasPartMaterialsMaterial!hasPartOUTHasPartProperties
hasReferenceLessonsLesson!hasReferenceOUTHasReferenceProperties
instructionalRoutineshasReferenceInstructionalRoutine!hasReferenceINHasReferenceProperties
lessonshasPartLesson!hasPartINHasPartProperties
lessonshasReferenceLesson!hasReferenceINHasReferenceProperties
usesRoutineInstructionalRoutinesInstructionalRoutine!usesRoutineOUTUsesRoutineProperties

Assessment

Fields
FieldTypeDescription
academicSubjectString!
audience[String]!
authorString!
courseCodeString!
curriculumLabelString!
dateCreatedDate!
educationalUseString!
gradeLevel[String]!
gradingRequiredBoolean!
identifierString!
inLanguageString!
isOptionalBoolean!
licenseString!
lmsLoadingGuidanceString!
nameString!
providerString!
studentGroupingTypeString!
submissionRequiredBoolean!
timeRequiredString
variantString
Relationships
Relationship fieldTarget typeRelationship typeDirectionProperties type
assessmentsmutuallyExclusiveWithAssessment!mutuallyExclusiveWithINMutuallyExclusiveWithProperties
hasEducationalAlignmentStandardsFrameworkItemsStandardsFrameworkItem!hasEducationalAlignmentOUTHasEducationalAlignmentProperties
hasPartMaterialsMaterial!hasPartOUTHasPartProperties
hasReferenceLessonGroupingsLessonGrouping!hasReferenceOUTHasReferenceProperties
hasReferenceLessonsLesson!hasReferenceOUTHasReferenceProperties
lessonGroupingshasPartLessonGrouping!hasPartINHasPartProperties
lessonGroupingshasReferenceLessonGrouping!hasReferenceINHasReferenceProperties
lessonshasPartLesson!hasPartINHasPartProperties
lessonshasReferenceLesson!hasReferenceINHasReferenceProperties
mutuallyExclusiveWithAssessmentsAssessment!mutuallyExclusiveWithOUTMutuallyExclusiveWithProperties

ClassroomMaterial

Fields
FieldTypeDescription
academicSubjectString!
audience[String]!
authorString!
curriculumLabelString!
descriptionString!
educationalUseString!
identifierString!
inLanguageString!
licenseString!
lmsLoadingGuidanceString!
nameString!
providerString!
Relationships
Relationship fieldTarget typeRelationship typeDirectionProperties type
lessonsusesLesson!usesINUsesProperties

Course

Fields
FieldTypeDescription
academicSubjectString!
audience[String]!
authorString!
courseCodeString!
curriculumLabelString!
dateCreatedDate!
descriptionString!
educationalUseString!
gradeLevel[String]!
identifierString!
inLanguageString!
licenseString!
lmsLoadingGuidanceString!
nameString!
providerString!
timeRequiredString
Relationships
Relationship fieldTarget typeRelationship typeDirectionProperties type
hasEducationalAlignmentStandardsFrameworkItemsStandardsFrameworkItem!hasEducationalAlignmentOUTHasEducationalAlignmentProperties
hasPartLessonGroupingsLessonGrouping!hasPartOUTHasPartProperties
hasPartMaterialsMaterial!hasPartOUTHasPartProperties
usesRoutineInstructionalRoutinesInstructionalRoutine!usesRoutineOUTUsesRoutineProperties

Factor

Fields
FieldTypeDescription
academicSubjectString!
attributionStatementString!
authorString!
categoryString!
citations[String]!
contentString!
descriptionString!
gradeLevel[String]!
identifierString!
licenseString!
nameString!
providerString!
providerDateCreatedLocalDateTime!
providerDateModifiedLocalDateTime!
Relationships
Relationship fieldTarget typeRelationship typeDirectionProperties type
factorsinteractsWithFactorFactor!interactsWithFactorINInteractsWithFactorProperties
interactsWithFactorFactorsFactor!interactsWithFactorOUTInteractsWithFactorProperties
learnerModelshasFactorLearnerModel!hasFactorINHasFactorProperties
relevantToStandardStandardsFrameworkItemsStandardsFrameworkItem!relevantToStandardOUTRelevantToStandardProperties
strategiestargetsFactorStrategy!targetsFactorINTargetsFactorProperties

GlossaryTerm

Fields
FieldTypeDescription
academicSubjectString!
audience[String]!
authorString!
curriculumLabelString!
descriptionString!
educationalUseString!
identifierString!
inLanguageString!
licenseString!
lmsLoadingGuidanceString!
nameString!
providerString!
Relationships
Relationship fieldTarget typeRelationship typeDirectionProperties type
lessonGroupingsreferencesLessonGrouping!referencesINReferencesProperties
lessonsreferencesLesson!referencesINReferencesProperties

InstructionalRoutine

Fields
FieldTypeDescription
academicSubjectString!
audience[String]!
authorString!
curriculumLabelString!
dateCreatedDate
descriptionString
educationalUseString!
gradeLevel[String]
identifierString!
inLanguageString!
isOptionalBoolean!
licenseString!
lmsLoadingGuidanceString!
nameString!
ordinalNameString
positionBigInt
providerString!
Relationships
Relationship fieldTarget typeRelationship typeDirectionProperties type
activitiesusesRoutineActivity!usesRoutineINUsesRoutineProperties
coursesusesRoutineCourse!usesRoutineINUsesRoutineProperties
hasPartInstructionalRoutinesInstructionalRoutine!hasPartOUTHasPartProperties
hasPartMaterialsMaterial!hasPartOUTHasPartProperties
hasReferenceActivitiesActivity!hasReferenceOUTHasReferenceProperties
hasReferenceLessonsLesson!hasReferenceOUTHasReferenceProperties
instructionalRoutineshasPartInstructionalRoutine!hasPartINHasPartProperties

LearnerModel

Fields
FieldTypeDescription
academicSubjectString!
attributionStatementString!
authorString!
contentString!
descriptionString!
gradeLevel[String]!
identifierString!
licenseString!
nameString!
providerString!
providerDateCreatedLocalDateTime!
providerDateModifiedLocalDateTime!
Relationships
Relationship fieldTarget typeRelationship typeDirectionProperties type
hasFactorFactorsFactor!hasFactorOUTHasFactorProperties
hasStrategyStrategiesStrategy!hasStrategyOUTHasStrategyProperties

LearningComponent

Fields
FieldTypeDescription
academicSubjectString!
attributionStatementString!
authorString!
dateCreatedDate!
dateModifiedDate!
descriptionString!
identifierString!
inLanguageString!
licenseString!
providerString!
Relationships
Relationship fieldTarget typeRelationship typeDirectionProperties type
supportsStandardsFrameworkItemsStandardsFrameworkItem!supportsOUTSupportsProperties

Lesson

Fields
FieldTypeDescription
academicSubjectString!
audience[String]!
authorString!
courseCodeString!
curriculumLabelString!
dateCreatedDate!
educationalUseString!
gradeLevel[String]!
identifierString!
inLanguageString!
isOptionalBoolean!
licenseString!
lmsLoadingGuidanceString!
nameString!
ordinalNameString!
positionBigInt!
providerString!
timeRequiredString!
Relationships
Relationship fieldTarget typeRelationship typeDirectionProperties type
activitieshasReferenceActivity!hasReferenceINHasReferenceProperties
assessmentshasReferenceAssessment!hasReferenceINHasReferenceProperties
hasEducationalAlignmentStandardsFrameworkItemsStandardsFrameworkItem!hasEducationalAlignmentOUTHasEducationalAlignmentProperties
hasPartActivitiesActivity!hasPartOUTHasPartProperties
hasPartAssessmentsAssessment!hasPartOUTHasPartProperties
hasPartMaterialsMaterial!hasPartOUTHasPartProperties
hasReferenceActivitiesActivity!hasReferenceOUTHasReferenceProperties
hasReferenceAssessmentsAssessment!hasReferenceOUTHasReferenceProperties
hasReferenceLessonGroupingsLessonGrouping!hasReferenceOUTHasReferenceProperties
hasReferenceLessonsLesson!hasReferenceOUTHasReferenceProperties
instructionalRoutineshasReferenceInstructionalRoutine!hasReferenceINHasReferenceProperties
lessonGroupingshasPartLessonGrouping!hasPartINHasPartProperties
lessonGroupingshasReferenceLessonGrouping!hasReferenceINHasReferenceProperties
lessonshasReferenceLesson!hasReferenceINHasReferenceProperties
referencesGlossaryTermsGlossaryTerm!referencesOUTReferencesProperties
usesClassroomMaterialsClassroomMaterial!usesOUTUsesProperties

LessonGrouping

Fields
FieldTypeDescription
academicSubjectString!
audience[String]!
authorString!
courseCodeString!
curriculumLabelString!
dateCreatedDate!
educationalUseString!
gradeLevel[String]!
groupLevelBigInt!
groupNameString!
identifierString!
inLanguageString!
isOptionalBoolean!
licenseString!
lmsLoadingGuidanceString!
nameString!
ordinalNameString!
positionBigInt!
providerString!
timeRequiredString
Relationships
Relationship fieldTarget typeRelationship typeDirectionProperties type
assessmentshasReferenceAssessment!hasReferenceINHasReferenceProperties
courseshasPartCourse!hasPartINHasPartProperties
hasDependencyLessonGroupingsLessonGrouping!hasDependencyOUTHasDependencyProperties
hasEducationalAlignmentStandardsFrameworkItemsStandardsFrameworkItem!hasEducationalAlignmentOUTHasEducationalAlignmentProperties
hasPartAssessmentsAssessment!hasPartOUTHasPartProperties
hasPartLessonGroupingsLessonGrouping!hasPartOUTHasPartProperties
hasPartLessonsLesson!hasPartOUTHasPartProperties
hasPartMaterialsMaterial!hasPartOUTHasPartProperties
hasReferenceAssessmentsAssessment!hasReferenceOUTHasReferenceProperties
hasReferenceLessonsLesson!hasReferenceOUTHasReferenceProperties
lessonGroupingshasDependencyLessonGrouping!hasDependencyINHasDependencyProperties
lessonGroupingshasPartLessonGrouping!hasPartINHasPartProperties
lessonshasReferenceLesson!hasReferenceINHasReferenceProperties
referencesGlossaryTermsGlossaryTerm!referencesOUTReferencesProperties

Material

Fields
FieldTypeDescription
academicSubjectString!
audienceString!
authorString!
contentString!
educationalUseString!
identifierString!
inLanguageString!
licenseString!
materialTypeString!
nameString!
ordinalNameString!
providerString!
Relationships
Relationship fieldTarget typeRelationship typeDirectionProperties type
activitieshasPartActivity!hasPartINHasPartProperties
assessmentshasPartAssessment!hasPartINHasPartProperties
courseshasPartCourse!hasPartINHasPartProperties
instructionalRoutineshasPartInstructionalRoutine!hasPartINHasPartProperties
lessonGroupingshasPartLessonGrouping!hasPartINHasPartProperties
lessonshasPartLesson!hasPartINHasPartProperties

StandardsFramework

Fields
FieldTypeDescription
academicSubjectString!
adoptionStatusString!
attributionStatementString!
authorString!
caseIdentifierURIString!
caseIdentifierUUIDString!
dateModifiedDate!
descriptionString
identifierString!
inLanguageString!
jurisdictionString!
licenseString!
nameString!
notesString
providerString!
Relationships
Relationship fieldTarget typeRelationship typeDirectionProperties type
hasChildStandardsFrameworkItemsStandardsFrameworkItem!hasChildOUTHasChildProperties

StandardsFrameworkItem

Fields
FieldTypeDescription
academicSubjectString!
attributionStatementString!
authorString!
caseIdentifierURIString!
caseIdentifierUUIDString!
dateModifiedDate!
descriptionString!
gradeLevel[String]!
identifierString!
inLanguageString!
jurisdictionString!
licenseString!
normalizedStatementTypeString
notesString
providerString!
statementCodeString
statementTypeString
Relationships
Relationship fieldTarget typeRelationship typeDirectionProperties type
activitieshasEducationalAlignmentActivity!hasEducationalAlignmentINHasEducationalAlignmentProperties
assessmentshasEducationalAlignmentAssessment!hasEducationalAlignmentINHasEducationalAlignmentProperties
buildsTowardsStandardsFrameworkItemsStandardsFrameworkItem!buildsTowardsOUTBuildsTowardsProperties
courseshasEducationalAlignmentCourse!hasEducationalAlignmentINHasEducationalAlignmentProperties
factorsrelevantToStandardFactor!relevantToStandardINRelevantToStandardProperties
hasChildStandardsFrameworkItemsStandardsFrameworkItem!hasChildOUTHasChildProperties
hasStandardAlignmentStandardsFrameworkItemsStandardsFrameworkItem!hasStandardAlignmentOUTHasStandardAlignmentProperties
learningComponentssupportsLearningComponent!supportsINSupportsProperties
lessonGroupingshasEducationalAlignmentLessonGrouping!hasEducationalAlignmentINHasEducationalAlignmentProperties
lessonshasEducationalAlignmentLesson!hasEducationalAlignmentINHasEducationalAlignmentProperties
relatesToStandardsFrameworkItemsStandardsFrameworkItem!relatesToOUTRelatesToProperties
standardsFrameworkItemsbuildsTowardsStandardsFrameworkItem!buildsTowardsINBuildsTowardsProperties
standardsFrameworkItemshasChildStandardsFrameworkItem!hasChildINHasChildProperties
standardsFrameworkItemshasStandardAlignmentStandardsFrameworkItem!hasStandardAlignmentINHasStandardAlignmentProperties
standardsFrameworkItemsrelatesToStandardsFrameworkItem!relatesToINRelatesToProperties
standardsFrameworkshasChildStandardsFramework!hasChildINHasChildProperties

Strategy

Fields
FieldTypeDescription
academicSubjectString!
attributionStatementString!
authorString!
categoryString!
citations[String]!
contentString!
descriptionString!
gradeLevel[String]!
identifierString!
licenseString!
nameString!
providerString!
providerDateCreatedLocalDateTime!
providerDateModifiedLocalDateTime!
Relationships
Relationship fieldTarget typeRelationship typeDirectionProperties type
learnerModelshasStrategyLearnerModel!hasStrategyINHasStrategyProperties
targetsFactorFactorsFactor!targetsFactorOUTTargetsFactorProperties

Relationship property types

These @relationshipProperties types model metadata on edges between nodes in the graph.

BuildsTowardsProperties

Fields
FieldTypeDescription
attributionStatementString!
authorString!
descriptionString!
identifierString!
licenseString!
providerString!
providerDateCreatedLocalDateTime!
providerDateModifiedLocalDateTime!
relationshipTypeString!
sourceEntityString!
sourceEntityKeyString!
targetEntityString!
targetEntityKeyString!

HasChildProperties

Fields
FieldTypeDescription
attributionStatementString!
authorString!
dateModifiedDate!
descriptionString!
identifierString!
licenseString!
providerString!
providerDateCreatedLocalDateTime!
providerDateModifiedLocalDateTime!
relationshipTypeString!
sourceEntityString!
sourceEntityKeyString!
targetEntityString!
targetEntityKeyString!

HasDependencyProperties

Fields
FieldTypeDescription
identifierString!
providerString!
providerDateCreatedLocalDateTime!
providerDateModifiedLocalDateTime!
relationshipTypeString!
sourceEntityString!
sourceEntityKeyString!
targetEntityString!
targetEntityKeyString!

HasEducationalAlignmentProperties

Fields
FieldTypeDescription
alignmentTypeString!
curriculumAlignmentTypeString!
identifierString!
providerString!
providerDateCreatedLocalDateTime!
providerDateModifiedLocalDateTime!
relationshipTypeString!
sourceEntityString!
sourceEntityKeyString!
targetEntityString!
targetEntityKeyString!

HasFactorProperties

Fields
FieldTypeDescription
attributionStatementString!
authorString!
identifierString!
licenseString!
providerString!
providerDateCreatedLocalDateTime!
providerDateModifiedLocalDateTime!
relationshipTypeString!
sourceEntityString!
sourceEntityKeyString!
targetEntityString!
targetEntityKeyString!

HasPartProperties

Fields
FieldTypeDescription
identifierString!
providerString!
providerDateCreatedLocalDateTime!
providerDateModifiedLocalDateTime!
relationshipTypeString!
sourceEntityString!
sourceEntityKeyString!
targetEntityString!
targetEntityKeyString!

HasReferenceProperties

Fields
FieldTypeDescription
curriculumReferenceTypeString!
identifierString!
providerString!
providerDateCreatedLocalDateTime!
providerDateModifiedLocalDateTime!
relationshipTypeString!
sourceEntityString!
sourceEntityKeyString!
targetEntityString!
targetEntityKeyString!

HasStandardAlignmentProperties

Fields
FieldTypeDescription
attributionStatementString!
authorString!
ccssLCCountBigInt!
dateCreatedDate!
dateModifiedDate!
descriptionString!
identifierString!
jaccardFloat!
licenseString!
providerString!
providerDateCreatedLocalDateTime!
providerDateModifiedLocalDateTime!
relationshipTypeString!
sharedLCCountBigInt!
sourceEntityString!
sourceEntityKeyString!
stateLCCountBigInt!
targetEntityString!
targetEntityKeyString!

HasStrategyProperties

Fields
FieldTypeDescription
attributionStatementString!
authorString!
identifierString!
licenseString!
providerString!
providerDateCreatedLocalDateTime!
providerDateModifiedLocalDateTime!
relationshipTypeString!
sourceEntityString!
sourceEntityKeyString!
targetEntityString!
targetEntityKeyString!

InteractsWithFactorProperties

Fields
FieldTypeDescription
attributionStatementString!
authorString!
descriptionString!
identifierString!
licenseString!
providerString!
providerDateCreatedLocalDateTime!
providerDateModifiedLocalDateTime!
relationshipTypeString!
sourceEntityString!
sourceEntityKeyString!
targetEntityString!
targetEntityKeyString!

MutuallyExclusiveWithProperties

Fields
FieldTypeDescription
identifierString!
providerString!
providerDateCreatedLocalDateTime!
providerDateModifiedLocalDateTime!
relationshipTypeString!
sourceEntityString!
sourceEntityKeyString!
targetEntityString!
targetEntityKeyString!

ReferencesProperties

Fields
FieldTypeDescription
identifierString!
providerString!
providerDateCreatedLocalDateTime!
providerDateModifiedLocalDateTime!
relationshipTypeString!
sourceEntityString!
sourceEntityKeyString!
targetEntityString!
targetEntityKeyString!

RelatesToProperties

Fields
FieldTypeDescription
attributionStatementString!
authorString!
descriptionString!
identifierString!
licenseString!
providerString!
providerDateCreatedLocalDateTime!
providerDateModifiedLocalDateTime!
relationshipTypeString!
sourceEntityString!
sourceEntityKeyString!
targetEntityString!
targetEntityKeyString!

RelevantToStandardProperties

Fields
FieldTypeDescription
attributionStatementString!
authorString!
identifierString!
licenseString!
providerString!
providerDateCreatedLocalDateTime!
providerDateModifiedLocalDateTime!
relationshipTypeString!
sourceEntityString!
sourceEntityKeyString!
targetEntityString!
targetEntityKeyString!

SupportsProperties

Fields
FieldTypeDescription
attributionStatementString!
authorString!
dateCreatedDate!
dateModifiedDate!
descriptionString!
humanReviewedString
identifierString!
licenseString!
methodString
providerString!
providerDateCreatedLocalDateTime!
providerDateModifiedLocalDateTime!
relationshipTypeString!
sourceEntityString!
sourceEntityKeyString!
statusString
targetEntityString!
targetEntityKeyString!

TargetsFactorProperties

Fields
FieldTypeDescription
attributionStatementString!
authorString!
connectionTypeString!
factorCategoryString
identifierString!
licenseString!
providerString!
providerDateCreatedLocalDateTime!
providerDateModifiedLocalDateTime!
relationshipTypeString!
sourceEntityString!
sourceEntityKeyString!
targetEntityString!
targetEntityKeyString!

UsesProperties

Fields
FieldTypeDescription
identifierString!
providerString!
providerDateCreatedLocalDateTime!
providerDateModifiedLocalDateTime!
relationshipTypeString!
sourceEntityString!
sourceEntityKeyString!
targetEntityString!
targetEntityKeyString!

UsesRoutineProperties

Fields
FieldTypeDescription
identifierString!
providerString!
providerDateCreatedLocalDateTime!
providerDateModifiedLocalDateTime!
relationshipTypeString!
sourceEntityString!
sourceEntityKeyString!
targetEntityString!
targetEntityKeyString!

Programmatic schema exploration

You can also explore the schema programmatically using HTTP clients or GraphQL libraries.

Using cURL to list all types

Run a POST request with an introspection query.
curl -X POST \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: YOUR_API_KEY' \
  -d '{"query":"{ __schema { types { name kind } } }"}' \
  https://cumtxmqb68.execute-api.us-west-2.amazonaws.com/staging/v1.0.0/graphql

Using cURL to inspect the Lesson type

curl -X POST \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: YOUR_API_KEY' \
  -d '{"query":"{ __type(name: \"Lesson\") { fields { name type { name } } } }"}' \
  https://cumtxmqb68.execute-api.us-west-2.amazonaws.com/staging/v1.0.0/graphql

Using Python (gql) to explore the schema

from gql import Client, gql

schema_query = gql("""
    query {
      __schema {
        types {
          name
          kind
          fields {
            name
            type {
              name
            }
          }
        }
      }
    }
""")

result = client.execute(schema_query)

for type_info in result["__schema"]["types"]:
    if not type_info["name"].startswith("__"):
        print(f"Type: {type_info['name']} ({type_info['kind']})")