fragment lineageNodeProperties on EntityWithRelationships { urn type ... on DataJob { urn type exists dataFlow { ...nonRecursiveDataFlowFields } jobId ownership { ...ownershipFields } properties { name description externalUrl customProperties { key value } } globalTags { ...globalTagsFields } glossaryTerms { ...glossaryTerms } domain { ...entityDomain } ...entityDataProduct deprecation { ...deprecationFields } dataPlatformInstance { ...dataPlatformInstanceFields } subTypes { typeNames } editableProperties { description } status { removed } inputOutput { fineGrainedLineages { upstreams { urn path } downstreams { urn path } query transformOperation } } health { ...entityHealth } structuredProperties { properties { ...structuredPropertiesFields } } browsePathV2 { ...browsePathV2Fields } } ... on DataFlow { exists orchestrator flowId cluster properties { name description project } ownership { ...ownershipFields } globalTags { ...globalTagsFields } glossaryTerms { ...glossaryTerms } editableProperties { description } platform { ...platformFields } domain { ...entityDomain } ...entityDataProduct status { removed } health { ...entityHealth } structuredProperties { properties { ...structuredPropertiesFields } } browsePathV2 { ...browsePathV2Fields } } ... on Dashboard { exists urn type tool dashboardId properties { name description externalUrl lastRefreshed created { time } lastModified { time } } ownership { ...ownershipFields } globalTags { ...globalTagsFields } glossaryTerms { ...glossaryTerms } platform { ...platformFields } domain { ...entityDomain } ...entityDataProduct parentContainers { ...parentContainersFields } browsePathV2 { ...browsePathV2Fields } status { removed } deprecation { ...deprecationFields } dataPlatformInstance { ...dataPlatformInstanceFields } editableProperties { description } status { removed } subTypes { typeNames } health { ...entityHealth } structuredProperties { properties { ...structuredPropertiesFields } } } ... on Chart { exists tool chartId properties { name description } editableProperties { description } ownership { ...ownershipFields } platform { ...platformFields } domain { ...entityDomain } parentContainers { ...parentContainersFields } browsePathV2 { ...browsePathV2Fields } ...entityDataProduct status { removed } subTypes { typeNames } health { ...entityHealth } structuredProperties { properties { ...structuredPropertiesFields } } } ... on Dataset { exists name properties { name description qualifiedName } editableProperties { description } platform { ...platformFields } ownership { ...ownershipFields } parentContainers { ...parentContainersFields } browsePathV2 { ...browsePathV2Fields } subTypes { typeNames } status { removed } fineGrainedLineages { upstreams { urn path } downstreams { urn path } query transformOperation } health { ...entityHealth } structuredProperties { properties { ...structuredPropertiesFields } } } ... on MLModelGroup { exists urn type name description origin tags { ...globalTagsFields } platform { ...platformFields } ownership { ...ownershipFields } status { removed } browsePathV2 { ...browsePathV2Fields } properties { propertiesName: name createdTS: created { time actor } customProperties { key value } } editableProperties { description } structuredProperties { properties { ...structuredPropertiesFields } } browsePathV2 { ...browsePathV2Fields } } ... on MLModel { exists urn type name description origin tags { ...globalTagsFields } platform { ...platformFields } ownership { ...ownershipFields } status { removed } versionProperties { versionSet { urn type } version { versionTag } aliases { versionTag } comment } properties { propertiesName: name createdTS: created { time actor } tags customProperties { key value } } editableProperties { description } structuredProperties { properties { ...structuredPropertiesFields } } browsePathV2 { ...browsePathV2Fields } } ... on MLFeatureTable { ...nonRecursiveMLFeatureTable } ... on MLFeature { ...nonRecursiveMLFeature } ... on MLPrimaryKey { ...nonRecursiveMLPrimaryKey } ... on ERModelRelationship { urn type id properties { ...ermodelrelationPropertiesFields } editableProperties { ...ermodelrelationEditablePropertiesFields } ownership { ...ownershipFields } tags { ...globalTagsFields } glossaryTerms { ...glossaryTerms } } ... on Restricted { urn type } ... on DataProcessInstance { ...dataProcessInstanceFields } } fragment lineageFields on EntityWithRelationships { ...lineageNodeProperties ...canEditLineageFragment ... on Dataset { siblings { isPrimary siblings { urn type ... on Dataset { exists } ...lineageNodeProperties } } siblingsSearch(input: { query: "*", count: 5 }) { count total searchResults { entity { urn type ... on Dataset { exists } ...lineageNodeProperties } } } } upstream: lineage(input: { direction: UPSTREAM, start: 0, count: 100, separateSiblings: $separateSiblings }) { ...leafLineageResults } downstream: lineage(input: { direction: DOWNSTREAM, start: 0, count: 100, separateSiblings: $separateSiblings }) { ...leafLineageResults } } fragment lineageRelationshipFields on LineageRelationship { type createdOn createdActor { urn type ... on CorpUser { username info { displayName } properties { displayName } editableProperties { displayName } } } updatedOn updatedActor { urn type ... on CorpUser { username info { displayName } properties { displayName } editableProperties { displayName } } } isManual } fragment fullLineageResults on EntityLineageResult { start count total filtered relationships { ...lineageRelationshipFields entity { ...lineageFields ... on Dataset { schemaMetadata(version: 0) @include(if: $showColumns) { ...schemaMetadataFields } } ... on Chart { inputFields @include(if: $showColumns) { ...inputFieldsFields } } } } } fragment leafLineageResults on EntityLineageResult { start count total filtered relationships { ...lineageRelationshipFields entity { urn type } } } fragment partialLineageResults on EntityLineageResult { start count total filtered } fragment entityLineage on Entity { urn type ...lineageNodeProperties ...canEditLineageFragment ... on Dataset { schemaMetadata(version: 0) @include(if: $showColumns) { ...schemaMetadataFields } siblings { isPrimary siblings { urn type ... on Dataset { exists } ...lineageNodeProperties } } siblingsSearch(input: { query: "*", count: 5 }) { count total searchResults { entity { urn type ... on Dataset { exists } ...lineageNodeProperties } } } } ... on Chart { inputFields @include(if: $showColumns) { ...inputFieldsFields } } ... on EntityWithRelationships { upstream: lineage( input: { direction: UPSTREAM start: 0 count: 100 separateSiblings: $separateSiblings startTimeMillis: $startTimeMillis endTimeMillis: $endTimeMillis } ) @skip(if: $excludeUpstream) { ...fullLineageResults } downstream: lineage( input: { direction: DOWNSTREAM start: 0 count: 100 separateSiblings: $separateSiblings startTimeMillis: $startTimeMillis endTimeMillis: $endTimeMillis } ) @skip(if: $excludeDownstream) { ...fullLineageResults } } } fragment lineageV2Result on EntityLineageResult { filtered total relationships { ...lineageRelationshipFields paths { path { urn type } } entity { urn type } } } fragment lineageSchemaField on SchemaField { fieldPath type nativeDataType } fragment entityLineageV2 on Entity { urn type ...lineageNodeProperties ...canEditLineageFragment ... on Dataset { schemaMetadata(version: 0) @include(if: $showColumns) { fields { ...lineageSchemaField } } siblingsSearch(input: { query: "*", count: 1 }) { count total searchResults { entity { urn type ... on Dataset { exists subTypes { typeNames } platform { ...platformFields } } } } } } ... on Chart { inputFields @include(if: $showColumns) { fields { schemaFieldUrn schemaField { ...lineageSchemaField } } } } ... on EntityWithRelationships { upstream: lineage( input: { direction: UPSTREAM start: 0 count: 1000 separateSiblings: $separateSiblings startTimeMillis: $startTimeMillis endTimeMillis: $endTimeMillis includeGhostEntities: $includeGhostEntities } ) @skip(if: $excludeUpstream) { ...lineageV2Result } downstream: lineage( input: { direction: DOWNSTREAM start: 0 count: 1000 separateSiblings: $separateSiblings startTimeMillis: $startTimeMillis endTimeMillis: $endTimeMillis includeGhostEntities: $includeGhostEntities } ) @skip(if: $excludeDownstream) { ...lineageV2Result } } ... on SupportsVersions { versionProperties { ...versionProperties } } ... on SchemaFieldEntity { fieldPath parent { urn type ...lineageNodeProperties } status { removed } } ... on QueryEntity { properties { origin { urn type } } queryPlatform: platform { ...platformFields } } ... on DataProcessInstance { ...dataProcessInstanceFields } ... on Domain { id properties { name description } parentDomains { ...parentDomainsFields } displayProperties { ...displayPropertiesFields } dataProducts: entities( input: { start: 0, count: 0, filters: [{ field: "_entityType", value: "DATA_PRODUCT" }] } ) { total searchResults { entity { ... on DataProduct { urn type properties { name description } domain { ...entityDomain } entities(input: { start: 0, count: 0, query: "*" }) { total } } } } } } ... on DataProduct { properties { name description } domain { ...entityDomain } entities(input: { start: 0, count: 0, query: "*" }) { total } } } query getEntityLineage( $urn: String! $separateSiblings: Boolean $showColumns: Boolean! $startTimeMillis: Long $endTimeMillis: Long $excludeUpstream: Boolean = false $excludeDownstream: Boolean = false ) { entity(urn: $urn) { ...entityLineage } } query getEntityLineageV2( $urn: String! $separateSiblings: Boolean $showColumns: Boolean! $startTimeMillis: Long $endTimeMillis: Long $excludeUpstream: Boolean = false $excludeDownstream: Boolean = false $includeGhostEntities: Boolean = false ) { entity(urn: $urn) { ...entityLineageV2 } } query getBulkEntityLineageV2( $urns: [String!]! $separateSiblings: Boolean $showColumns: Boolean! $startTimeMillis: Long $endTimeMillis: Long $excludeUpstream: Boolean = false $excludeDownstream: Boolean = false $includeGhostEntities: Boolean = false ) { entities(urns: $urns) { ...entityLineageV2 } } fragment canEditLineageFragment on EntityWithRelationships { ... on Dataset { privileges { canEditLineage } } ... on Chart { privileges { canEditLineage } } ... on Dashboard { privileges { canEditLineage } } ... on DataJob { privileges { canEditLineage } } } query getLineageCounts( $urn: String! $separateSiblings: Boolean $startTimeMillis: Long $endTimeMillis: Long $excludeUpstream: Boolean = false $excludeDownstream: Boolean = false $includeGhostEntities: Boolean = false ) { entity(urn: $urn) { urn type ... on EntityWithRelationships { upstream: lineage( input: { direction: UPSTREAM start: 0 count: 100 separateSiblings: $separateSiblings startTimeMillis: $startTimeMillis endTimeMillis: $endTimeMillis includeGhostEntities: $includeGhostEntities } ) @skip(if: $excludeUpstream) { filtered total } downstream: lineage( input: { direction: DOWNSTREAM start: 0 count: 100 separateSiblings: $separateSiblings startTimeMillis: $startTimeMillis endTimeMillis: $endTimeMillis includeGhostEntities: $includeGhostEntities } ) @skip(if: $excludeDownstream) { filtered total } } } } query getSearchAcrossLineageCounts( $urn: String! $startTimeMillis: Long $endTimeMillis: Long $excludeUpstream: Boolean = false $excludeDownstream: Boolean = false ) { upstreams: searchAcrossLineage( input: { urn: $urn query: "*" start: 0 count: 2000 filters: [{ field: "degree", value: "1", values: ["1"] }] direction: UPSTREAM lineageFlags: { startTimeMillis: $startTimeMillis, endTimeMillis: $endTimeMillis } } ) @skip(if: $excludeUpstream) { start count total facets { ...facetFields } } downstreams: searchAcrossLineage( input: { urn: $urn query: "*" start: 0 count: 2000 filters: [{ field: "degree", value: "1", values: ["1"] }] direction: DOWNSTREAM lineageFlags: { startTimeMillis: $startTimeMillis, endTimeMillis: $endTimeMillis } } ) @skip(if: $excludeDownstream) { start count total facets { ...facetFields } } } query searchAcrossLineageNames($input: SearchAcrossLineageInput!) { searchAcrossLineage(input: $input) { start count total searchResults { entity { urn type ...entityDisplayNameFields } } } }