schema

Snowflake Schema

graph LR
    SnowflakeAccount -- GOVERNED_BY --> SnowflakeNetworkPolicy
    SnowflakeAccount -- RESOURCE --> SnowflakeAccountParameter
    SnowflakeAccount -- RESOURCE --> SnowflakeAlert
    SnowflakeAccount -- RESOURCE --> SnowflakeApiIntegration
    SnowflakeAccount -- RESOURCE --> SnowflakeArtifactRepository
    SnowflakeAccount -- RESOURCE --> SnowflakeAuthenticationPolicy
    SnowflakeAccount -- RESOURCE --> SnowflakeCatalogIntegration
    SnowflakeAccount -- RESOURCE --> SnowflakeComputePool
    SnowflakeAccount -- RESOURCE --> SnowflakeCortexSearchService
    SnowflakeAccount -- RESOURCE --> SnowflakeCredential
    SnowflakeAccount -- RESOURCE --> SnowflakeDataPolicy
    SnowflakeAccount -- RESOURCE --> SnowflakeDatabase
    SnowflakeAccount -- RESOURCE --> SnowflakeDatabaseRole
    SnowflakeAccount -- RESOURCE --> SnowflakeDynamicTable
    SnowflakeAccount -- RESOURCE --> SnowflakeEventTable
    SnowflakeAccount -- RESOURCE --> SnowflakeExternalAccessIntegration
    SnowflakeAccount -- RESOURCE --> SnowflakeExternalTable
    SnowflakeAccount -- RESOURCE --> SnowflakeExternalVolume
    SnowflakeAccount -- RESOURCE --> SnowflakeExternalVolumeStorageLocation
    SnowflakeAccount -- RESOURCE --> SnowflakeFailoverGroup
    SnowflakeAccount -- RESOURCE --> SnowflakeFileFormat
    SnowflakeAccount -- RESOURCE --> SnowflakeFunction
    SnowflakeAccount -- RESOURCE --> SnowflakeIcebergTable
    SnowflakeAccount -- RESOURCE --> SnowflakeImage
    SnowflakeAccount -- RESOURCE --> SnowflakeImageRepository
    SnowflakeAccount -- RESOURCE --> SnowflakeListing
    SnowflakeAccount -- RESOURCE --> SnowflakeManagedAccount
    SnowflakeAccount -- RESOURCE --> SnowflakeMaterializedView
    SnowflakeAccount -- RESOURCE --> SnowflakeNetworkPolicy
    SnowflakeAccount -- RESOURCE --> SnowflakeNetworkRule
    SnowflakeAccount -- RESOURCE --> SnowflakeNotebook
    SnowflakeAccount -- RESOURCE --> SnowflakeNotificationIntegration
    SnowflakeAccount -- RESOURCE --> SnowflakePasswordPolicy
    SnowflakeAccount -- RESOURCE --> SnowflakePipe
    SnowflakeAccount -- RESOURCE --> SnowflakeProcedure
    SnowflakeAccount -- RESOURCE --> SnowflakeProgrammaticAccessToken
    SnowflakeAccount -- RESOURCE --> SnowflakeReplicationGroup
    SnowflakeAccount -- RESOURCE --> SnowflakeResourceMonitor
    SnowflakeAccount -- RESOURCE --> SnowflakeRole
    SnowflakeAccount -- RESOURCE --> SnowflakeSchema
    SnowflakeAccount -- RESOURCE --> SnowflakeSecret
    SnowflakeAccount -- RESOURCE --> SnowflakeSecurityIntegration
    SnowflakeAccount -- RESOURCE --> SnowflakeSequence
    SnowflakeAccount -- RESOURCE --> SnowflakeService
    SnowflakeAccount -- RESOURCE --> SnowflakeServiceContainer
    SnowflakeAccount -- RESOURCE --> SnowflakeServiceEndpoint
    SnowflakeAccount -- RESOURCE --> SnowflakeServiceRole
    SnowflakeAccount -- RESOURCE --> SnowflakeServiceUser
    SnowflakeAccount -- RESOURCE --> SnowflakeSessionPolicy
    SnowflakeAccount -- RESOURCE --> SnowflakeShare
    SnowflakeAccount -- RESOURCE --> SnowflakeStage
    SnowflakeAccount -- RESOURCE --> SnowflakeStorageIntegration
    SnowflakeAccount -- RESOURCE --> SnowflakeStream
    SnowflakeAccount -- RESOURCE --> SnowflakeStreamlit
    SnowflakeAccount -- RESOURCE --> SnowflakeTable
    SnowflakeAccount -- RESOURCE --> SnowflakeTag
    SnowflakeAccount -- RESOURCE --> SnowflakeTask
    SnowflakeAccount -- RESOURCE --> SnowflakeUser
    SnowflakeAccount -- RESOURCE --> SnowflakeView
    SnowflakeAccount -- RESOURCE --> SnowflakeWarehouse
    SnowflakeAlert -- USES_WAREHOUSE --> SnowflakeWarehouse
    SnowflakeArtifactRepository -- USES_INTEGRATION --> SnowflakeApiIntegration
    SnowflakeCortexSearchService -- READS_FROM --> SnowflakeTable
    SnowflakeCortexSearchService -- USES_WAREHOUSE --> SnowflakeWarehouse
    SnowflakeCredential -- OWNED_BY --> SnowflakeServiceUser
    SnowflakeCredential -- OWNED_BY --> SnowflakeUser
    SnowflakeDatabase -- CONTAINS --> SnowflakeDatabaseRole
    SnowflakeDatabase -- CONTAINS --> SnowflakeSchema
    SnowflakeDatabase -- CREATED_FROM_SHARE --> SnowflakeShare
    SnowflakeDatabaseRole -- INCLUDES --> SnowflakeDatabaseRole
    SnowflakeDynamicTable -- USES_WAREHOUSE --> SnowflakeWarehouse
    SnowflakeExternalAccessIntegration -- ALLOWS --> SnowflakeNetworkRule
    SnowflakeExternalAccessIntegration -- ALLOWS_AUTH_INTEGRATION --> SnowflakeSecurityIntegration
    SnowflakeExternalAccessIntegration -- ALLOWS_SECRET --> SnowflakeSecret
    SnowflakeExternalTable -- READS_FROM --> SnowflakeStage
    SnowflakeExternalTable -- USES_FILE_FORMAT --> SnowflakeFileFormat
    SnowflakeExternalVolume -- HAS_STORAGE_LOCATION --> SnowflakeExternalVolumeStorageLocation
    SnowflakeFailoverGroup -- REPLICATES --> SnowflakeDatabase
    SnowflakeFailoverGroup -- REPLICATES_TO --> SnowflakeAccount
    SnowflakeFunction -- USES_INTEGRATION --> SnowflakeApiIntegration
    SnowflakeFunction -- USES_INTEGRATION --> SnowflakeExternalAccessIntegration
    SnowflakeFunction -- USES_SECRET --> SnowflakeSecret
    SnowflakeIcebergTable -- STORED_IN --> SnowflakeExternalVolume
    SnowflakeIcebergTable -- USES_CATALOG --> SnowflakeCatalogIntegration
    SnowflakeImageRepository -- CONTAINS --> SnowflakeImage
    SnowflakeListing -- PUBLISHES --> SnowflakeShare
    SnowflakeNetworkPolicy -- ALLOWS --> SnowflakeNetworkRule
    SnowflakeNetworkPolicy -- BLOCKS --> SnowflakeNetworkRule
    SnowflakeNotebook -- RUNS_ON --> SnowflakeComputePool
    SnowflakeNotebook -- USES_INTEGRATION --> SnowflakeExternalAccessIntegration
    SnowflakeNotebook -- USES_SECRET --> SnowflakeSecret
    SnowflakeNotebook -- USES_WAREHOUSE --> SnowflakeWarehouse
    SnowflakeOrganization -- RESOURCE --> SnowflakeAccount
    SnowflakePipe -- USES_INTEGRATION --> SnowflakeNotificationIntegration
    SnowflakeProcedure -- ASSUMES --> SnowflakeRole
    SnowflakeProcedure -- USES_INTEGRATION --> SnowflakeExternalAccessIntegration
    SnowflakeProcedure -- USES_SECRET --> SnowflakeSecret
    SnowflakeProgrammaticAccessToken -- OWNED_BY --> SnowflakeServiceUser
    SnowflakeProgrammaticAccessToken -- OWNED_BY --> SnowflakeUser
    SnowflakeProgrammaticAccessToken -- RESTRICTED_TO --> SnowflakeRole
    SnowflakeReplicationGroup -- REPLICATES --> SnowflakeDatabase
    SnowflakeReplicationGroup -- REPLICATES_TO --> SnowflakeAccount
    SnowflakeRole -- INCLUDES --> SnowflakeDatabaseRole
    SnowflakeRole -- INCLUDES --> SnowflakeRole
    SnowflakeSchema -- CONTAINS --> SnowflakeAlert
    SnowflakeSchema -- CONTAINS --> SnowflakeArtifactRepository
    SnowflakeSchema -- CONTAINS --> SnowflakeAuthenticationPolicy
    SnowflakeSchema -- CONTAINS --> SnowflakeCortexSearchService
    SnowflakeSchema -- CONTAINS --> SnowflakeDataPolicy
    SnowflakeSchema -- CONTAINS --> SnowflakeDynamicTable
    SnowflakeSchema -- CONTAINS --> SnowflakeEventTable
    SnowflakeSchema -- CONTAINS --> SnowflakeExternalTable
    SnowflakeSchema -- CONTAINS --> SnowflakeFileFormat
    SnowflakeSchema -- CONTAINS --> SnowflakeFunction
    SnowflakeSchema -- CONTAINS --> SnowflakeIcebergTable
    SnowflakeSchema -- CONTAINS --> SnowflakeImageRepository
    SnowflakeSchema -- CONTAINS --> SnowflakeMaterializedView
    SnowflakeSchema -- CONTAINS --> SnowflakeNetworkRule
    SnowflakeSchema -- CONTAINS --> SnowflakeNotebook
    SnowflakeSchema -- CONTAINS --> SnowflakePasswordPolicy
    SnowflakeSchema -- CONTAINS --> SnowflakePipe
    SnowflakeSchema -- CONTAINS --> SnowflakeProcedure
    SnowflakeSchema -- CONTAINS --> SnowflakeSecret
    SnowflakeSchema -- CONTAINS --> SnowflakeSequence
    SnowflakeSchema -- CONTAINS --> SnowflakeService
    SnowflakeSchema -- CONTAINS --> SnowflakeSessionPolicy
    SnowflakeSchema -- CONTAINS --> SnowflakeStage
    SnowflakeSchema -- CONTAINS --> SnowflakeStream
    SnowflakeSchema -- CONTAINS --> SnowflakeStreamlit
    SnowflakeSchema -- CONTAINS --> SnowflakeTable
    SnowflakeSchema -- CONTAINS --> SnowflakeTag
    SnowflakeSchema -- CONTAINS --> SnowflakeTask
    SnowflakeSchema -- CONTAINS --> SnowflakeView
    SnowflakeSchema -- DEFAULT_EXTERNAL_VOLUME --> SnowflakeExternalVolume
    SnowflakeSecret -- USES_INTEGRATION --> SnowflakeSecurityIntegration
    SnowflakeSecurityIntegration -- GOVERNED_BY --> SnowflakeNetworkPolicy
    SnowflakeSecurityIntegration -- RUNS_AS_ROLE --> SnowflakeRole
    SnowflakeService -- HAS_ENDPOINT --> SnowflakeServiceEndpoint
    SnowflakeService -- HAS_SERVICE_ROLE --> SnowflakeServiceRole
    SnowflakeService -- USES_INTEGRATION --> SnowflakeExternalAccessIntegration
    SnowflakeService -- USES_WAREHOUSE --> SnowflakeWarehouse
    SnowflakeService -- WORKLOAD_PARENT --> SnowflakeComputePool
    SnowflakeServiceContainer -- HAS_IMAGE --> SnowflakeImage
    SnowflakeServiceContainer -- WORKLOAD_PARENT --> SnowflakeService
    SnowflakeServiceUser -- GOVERNED_BY --> SnowflakeNetworkPolicy
    SnowflakeServiceUser -- HAS_ROLE --> SnowflakeRole
    SnowflakeShare -- SHARED_WITH --> SnowflakeManagedAccount
    SnowflakeStage -- USES_INTEGRATION --> SnowflakeStorageIntegration
    SnowflakeStream -- READS_FROM --> SnowflakeTable
    SnowflakeStreamlit -- RUNS_ON --> SnowflakeComputePool
    SnowflakeStreamlit -- USES_INTEGRATION --> SnowflakeExternalAccessIntegration
    SnowflakeStreamlit -- USES_WAREHOUSE --> SnowflakeWarehouse
    SnowflakeTask -- ASSUMES --> SnowflakeRole
    SnowflakeTask -- NOTIFIES --> SnowflakeNotificationIntegration
    SnowflakeTask -- PRECEDED_BY --> SnowflakeTask
    SnowflakeTask -- USES_WAREHOUSE --> SnowflakeWarehouse
    SnowflakeUser -- GOVERNED_BY --> SnowflakeNetworkPolicy
    SnowflakeUser -- HAS_ROLE --> SnowflakeRole
    SnowflakeWarehouse -- MONITORED_BY --> SnowflakeResourceMonitor

SnowflakeAccount

Represents a Snowflake account: the tenant that owns every other Snowflake object.

Ontology Mapping: This node uses the ontology label Tenant.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Ontology-generated fields are shown in italics.

Field Index Description
id Yes The account identifier, as ORGANIZATION.ACCOUNT.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
account_locator Yes The account's legacy locator identifier.
account_url The account's preferred URL.
comment Account comment.
created_on When the account was created.
dropped_on When the account was dropped, if it has been.
edition The Snowflake edition, which gates features such as masking policies and failover groups.
is_current Whether this is the account Cartography authenticated against. Only the current account has its objects synced; sibling accounts in the organization are recorded as nodes without resources.
is_org_admin Whether the ORGADMIN role is enabled in this account.
name Yes The account name within the organization.
organization_name Yes The organization that owns the account.
region The cloud region hosting the account.
region_group The region group the account's region belongs to.
retention_time Days the account remains restorable after being dropped.
scheduled_deletion_time When a dropped account is scheduled for permanent deletion.
_ont_domain Yes Normalized field sourced from account_url.
_ont_name Yes Normalized field sourced from name.
_ont_source Module that populated this node's ontology fields.

Relationships

  • (:SnowflakeAccount)-[:GOVERNED_BY]->(:SnowflakeNetworkPolicy): Every connection to the Snowflake account is restricted by this network policy.

Distinct from the RESOURCE edge, which merely records that the policy is defined in the account. This edge means the policy is actually in force account-wide, which is read from the account's NETWORK_POLICY parameter.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeAccountParameter): A Snowflake account contains the parameter as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeAlert): A Snowflake account contains the alert as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeApiIntegration): A Snowflake account contains the API integration as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeArtifactRepository): A Snowflake account contains the artifact repository as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeAuthenticationPolicy): A Snowflake account contains the authentication policy as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeCatalogIntegration): A Snowflake account contains the catalog integration as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeComputePool): A Snowflake account contains the compute pool as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeCortexSearchService): A Snowflake account contains the Cortex Search service as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeCredential): A Snowflake account contains the credential as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeDataPolicy): A Snowflake account contains the data policy as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeDatabase): A Snowflake account contains the database as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeDatabaseRole): A Snowflake account contains the role as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeDynamicTable): A Snowflake account contains the dynamic table as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeEventTable): A Snowflake account contains the event table as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeExternalAccessIntegration): A Snowflake account contains the external access integration as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeExternalTable): A Snowflake account contains the external table as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeExternalVolume): A Snowflake account contains the external volume as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeExternalVolumeStorageLocation): A Snowflake account contains the external volume storage location as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeFailoverGroup): A Snowflake account contains the replication or failover group as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeFileFormat): A Snowflake account contains the file format as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeFunction): A Snowflake account contains the function as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeIcebergTable): A Snowflake account contains the Iceberg table as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeImage): A Snowflake account contains the image as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeImageRepository): A Snowflake account contains the image repository as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeListing): A Snowflake account contains the listing as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeManagedAccount): A Snowflake account owns the managed account it created.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeMaterializedView): A Snowflake account contains the materialized view as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeNetworkPolicy): A Snowflake account contains the network policy as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeNetworkRule): A Snowflake account contains the network rule as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeNotebook): A Snowflake account contains the notebook as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeNotificationIntegration): A Snowflake account contains the notification integration as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakePasswordPolicy): A Snowflake account contains the password policy as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakePipe): A Snowflake account contains the pipe as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeProcedure): A Snowflake account contains the stored procedure as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeProgrammaticAccessToken): A Snowflake account contains the access token as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeReplicationGroup): A Snowflake account contains the replication or failover group as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeResourceMonitor): A Snowflake account contains the resource monitor as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeRole): A Snowflake account contains the role as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeSchema): A Snowflake account contains the schema as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeSecret): A Snowflake account contains the secret as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeSecurityIntegration): A Snowflake account contains the security integration as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeSequence): A Snowflake account contains the sequence as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeService): A Snowflake account contains the service as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeServiceContainer): A Snowflake account contains the service container as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeServiceEndpoint): A Snowflake account contains the service endpoint as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeServiceRole): A Snowflake account contains the service role as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeServiceUser): A Snowflake account contains the user as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeSessionPolicy): A Snowflake account contains the session policy as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeShare): A Snowflake account contains the share as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeStage): A Snowflake account contains the stage as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeStorageIntegration): A Snowflake account contains the storage integration as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeStream): A Snowflake account contains the stream as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeStreamlit): A Snowflake account contains the Streamlit app as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeTable): A Snowflake account contains the table as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeTag): A Snowflake account contains the tag as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeTask): A Snowflake account contains the task as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeUser): A Snowflake account contains the user as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeView): A Snowflake account contains the view as a resource.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeWarehouse): A Snowflake account contains the warehouse as a resource.

  • (:SnowflakeFailoverGroup)-[:REPLICATES_TO]->(:SnowflakeAccount): The group is permitted to place a replica of its objects in this Snowflake account.

  • (:SnowflakeOrganization)-[:RESOURCE]->(:SnowflakeAccount): A Snowflake organization contains the account.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeReplicationGroup)-[:REPLICATES_TO]->(:SnowflakeAccount): The group is permitted to place a replica of its objects in this Snowflake account.

SnowflakeAccountParameter

Represents a security-relevant Snowflake account parameter and its effective value.

Properties

Field Index Description
id Yes Account-scoped identifier for the parameter.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
default_value The value Snowflake applies when the parameter is not set.
description Snowflake's own description of the parameter.
is_default Whether the effective value still equals Snowflake's default, meaning nobody has deliberately set it.
level The object level the value was set at. An empty level means the value was never set anywhere and the default applies.
name Yes The parameter name.
parameter_type The parameter's data type, such as BOOLEAN, NUMBER or STRING.
value The parameter's effective value at the account level. Null when the parameter is unset.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeAccountParameter): A Snowflake account contains the parameter as a resource.

SnowflakeAlert

Represents a Snowflake alert: a scheduled condition query paired with the SQL it triggers.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the alert.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
action SQL the alert executes when the condition is met.
comment Alert comment.
condition SQL query whose result decides whether the action runs.
created_on When the alert was created.
database_name Database containing the alert.
name Yes Alert name.
owner Name of the role that owns the alert.
qualified_name Fully-qualified database.schema.alert name.
schedule How often the condition is evaluated, as a cron expression or an interval.
schema_name Schema containing the alert.
state Whether the alert is started or suspended.
warehouse Name of the virtual warehouse that evaluates the alert's condition.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeAlert): A Snowflake account contains the alert as a resource.

  • (:SnowflakeAlert)-[:USES_WAREHOUSE]->(:SnowflakeWarehouse): A Snowflake alert evaluates its condition on this virtual warehouse.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeAlert): A Snowflake schema holds the alert in its namespace.

SnowflakeApiIntegration

Represents a Snowflake API integration: the outbound HTTPS proxy configuration used by external functions and Git repositories.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the API integration.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
allowed_api_authentication_integrations Security integrations that may supply OAuth tokens for the API calls.
allowed_authentication_secrets Secrets a Git repository integration may authenticate with.
api_allowed_prefixes URL prefixes external functions may call through the integration. A broad prefix lets any function in the account reach the whole endpoint tree.
api_aws_external_id External id the role's trust policy must require, which is what prevents another Snowflake account from assuming it.
api_aws_iam_user_arn ARN of the Snowflake-owned IAM user that must be trusted by the role's trust policy.
api_aws_role_arn Yes ARN of the AWS IAM role Snowflake assumes to invoke the API Gateway.
api_blocked_prefixes URL prefixes denied even when covered by an allowed prefix.
api_hook_type Backing platform of the integration: AWS, AZURE, GCP or GIT.
api_provider Concrete provider, for example aws_api_gateway, azure_api_management or git_https_api.
azure_ad_application_id Yes Application id of the Entra ID app registration fronting the API.
azure_tenant_id Entra ID tenant the integration requests an access token from.
comment API integration comment.
created_on When the API integration was created.
enabled Whether the integration may be used by external functions and Git repositories.
google_audience Audience claim Snowflake requests in its Google-signed token.
name Yes The API integration name.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeApiIntegration): A Snowflake account contains the API integration as a resource.

  • (:SnowflakeApiIntegration)-[:ASSUMES_ROLE]->(:AWSPrincipal): A Snowflake API integration assumes an AWS IAM role to invoke its endpoint.

  • (:SnowflakeArtifactRepository)-[:USES_INTEGRATION]->(:SnowflakeApiIntegration): A Snowflake artifact repository fetches upstream packages through this API integration.

The integration is what decides which external package index Snowflake will pull code from, so it is the control point for a supply-chain risk.

  • (:SnowflakeFunction)-[:USES_INTEGRATION]->(:SnowflakeApiIntegration): An external Snowflake function calls its remote service through this API integration.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.

SnowflakeArtifactRepository

Represents a Snowflake artifact repository: a schema-level proxy to an external package index.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the artifact repository.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
api_integration API integration the repository fetches upstream packages through.
comment Artifact repository comment.
created_on When the artifact repository was created.
database_name Database containing the artifact repository.
name Yes Artifact repository name.
owner Name of the role that owns the artifact repository.
qualified_name Fully-qualified database.schema.repository name.
repository_type Kind of package index the repository proxies, such as PIP.
schema_name Schema containing the artifact repository.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeArtifactRepository): A Snowflake account contains the artifact repository as a resource.

  • (:SnowflakeArtifactRepository)-[:USES_INTEGRATION]->(:SnowflakeApiIntegration): A Snowflake artifact repository fetches upstream packages through this API integration.

The integration is what decides which external package index Snowflake will pull code from, so it is the control point for a supply-chain risk.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeArtifactRepository): A Snowflake schema holds the artifact repository in its namespace.

SnowflakeAuthenticationPolicy

Represents a Snowflake authentication policy: which authentication methods, clients and MFA rules apply.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the authentication policy.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
authentication_methods Authentication methods the policy accepts, such as PASSWORD, SAML, OAUTH, KEYPAIR or PROGRAMMATIC_ACCESS_TOKEN. ALL accepts every method.
client_types Client types allowed to connect, such as SNOWFLAKE_UI, DRIVERS or SNOWSQL. ALL allows every client.
comment Policy comment.
created_on When the policy was created.
database_name Database holding the policy.
mfa_authentication_methods Methods for which MFA is enforced. A method accepted by the policy but absent here can authenticate with a single factor.
mfa_enrollment Whether users under the policy must enroll in MFA. OPTIONAL leaves enrollment to the user.
name Yes The authentication policy name.
owner Name of the role that owns the policy.
owner_role_type Whether the owning role is an account role or a database role.
pat_policy Constraints the policy places on programmatic access tokens, such as the maximum lifetime and whether a network policy is required to use one.
qualified_name Yes Fully qualified name of the policy, as DATABASE.SCHEMA.NAME.
schema_name Schema holding the policy.
security_integrations Security integrations the policy permits for federated or OAuth authentication. ALL permits every integration in the account.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeAuthenticationPolicy): A Snowflake account contains the authentication policy as a resource.

  • (:SnowflakeAuthenticationPolicy)-[:APPLIED_TO]->(:SnowflakeSecurable): A Snowflake authentication policy governs how this object's users may authenticate.

    • Properties:

      Field Description
      policy_status Whether the attachment is active. An inactive attachment leaves the object unprotected despite the policy being set.
      ref_column_name The column the policy protects, for a masking or projection policy. Null when the policy applies to the whole object.
      ref_entity_domain The kind of object the policy is attached to, such as TABLE, VIEW, USER or ACCOUNT.
  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeAuthenticationPolicy): A Snowflake schema holds the authentication policy.

SnowflakeCatalogIntegration

Represents a Snowflake catalog integration: the external table catalog Iceberg tables resolve metadata through.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the catalog integration.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
catalog_namespace Default namespace (Glue database or Iceberg namespace) tables resolve in.
catalog_source Where table metadata is read from: GLUE, OBJECT_STORE or POLARIS.
category Snowflake integration category.
comment Catalog integration comment.
created_on When the catalog integration was created.
enabled Whether Iceberg tables may be created against the catalog.
glue_aws_iam_user_arn ARN of the Snowflake-owned IAM user that must be trusted by the role's trust policy.
glue_aws_role_arn Yes ARN of the AWS IAM role Snowflake assumes to read the Glue Data Catalog.
glue_catalog_id AWS account id owning the Glue Data Catalog being read.
glue_region AWS region of the Glue Data Catalog.
integration_type Snowflake integration type reported for the catalog integration.
name Yes The catalog integration name.
oauth_allowed_scopes OAuth scopes requested when authenticating to the REST catalog.
oauth_client_id OAuth client id used against the REST catalog. The matching client secret is deliberately never stored.
rest_authentication_type How Snowflake authenticates to the REST catalog, for example OAUTH or SIGV4.
rest_catalog_uri Base URI of the Iceberg REST catalog, when the source is a REST catalog.
rest_warehouse Warehouse identifier passed to the Iceberg REST catalog.
table_format Open table format the catalog serves, for example ICEBERG.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeCatalogIntegration): A Snowflake account contains the catalog integration as a resource.

  • (:SnowflakeCatalogIntegration)-[:ASSUMES_ROLE]->(:AWSPrincipal): A Snowflake catalog integration assumes an AWS IAM role to read the Glue Data Catalog.

  • (:SnowflakeIcebergTable)-[:USES_CATALOG]->(:SnowflakeCatalogIntegration): An external catalog integration, rather than Snowflake, tracks this table.

Absent when Snowflake is its own catalog, which is the case for tables Snowflake manages end to end.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.
    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.

SnowflakeComputePool

Represents a Snowflake compute pool: the node pool that runs Snowpark Container Services workloads.

Ontology Mapping: This node uses the ontology label ComputeCluster.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Ontology-generated fields are shown in italics.

Field Index Description
id Yes Account-scoped identifier for the compute pool.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
active_nodes Number of nodes currently running in the pool.
application Name of the Native App the pool is exclusive to, when it is exclusive.
auto_resume Whether the pool restarts automatically when a service needs it.
auto_suspend_secs Seconds of inactivity before the pool suspends its nodes.
comment Compute pool comment.
created_on When the compute pool was created.
instance_family Snowflake instance family that determines each node's CPU, memory and GPUs.
is_exclusive Whether the pool is dedicated to a single Snowflake Native App rather than shared across the account's own services.
max_nodes Maximum number of nodes the pool may scale out to.
min_nodes Minimum number of nodes the pool keeps running.
name Yes The compute pool name.
num_jobs Number of job services currently on the pool.
num_services Number of long-running services on the pool.
owner Name of the role that owns the compute pool.
state Whether the pool is ACTIVE, IDLE, SUSPENDED, STARTING or STOPPING.
_ont_name Yes Normalized field sourced from name.
_ont_source Module that populated this node's ontology fields.
_ont_status Yes Normalized field sourced from state.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeComputePool): A Snowflake account contains the compute pool as a resource.

  • (:SnowflakeNotebook)-[:RUNS_ON]->(:SnowflakeComputePool): A container-runtime Snowflake notebook executes on this compute pool.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeService)-[:WORKLOAD_PARENT]->(:SnowflakeComputePool): A Snowflake service's containers are scheduled on this compute pool.

  • (:SnowflakeStreamlit)-[:RUNS_ON]->(:SnowflakeComputePool): A container-runtime Snowflake Streamlit app executes on this compute pool.

SnowflakeCortexSearchService

Represents a Snowflake Cortex Search service: a managed semantic search index built over account data.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the Cortex Search service.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
attribute_columns Source columns exposed as filterable attributes on search results.
comment Cortex Search service comment.
created_on When the service was created.
database_name Database containing the service.
embedding_model Model used to embed the indexed text for semantic retrieval.
name Yes Cortex Search service name.
qualified_name Fully-qualified database.schema.service name.
schema_name Schema containing the service.
search_column Source column whose text is indexed and searched.
service_query_url Endpoint applications call to query the service.
source Table, view or query the service indexes its documents from.
target_lag How stale the search index is allowed to be against its source.
warehouse Name of the virtual warehouse that refreshes the search index.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeCortexSearchService): A Snowflake account contains the Cortex Search service as a resource.

  • (:SnowflakeCortexSearchService)-[:READS_FROM]->(:SnowflakeTable): A Snowflake Cortex Search service indexes the contents of this table.

Copying source text into a searchable index moves the data out from behind the table's own access controls, so knowing which table feeds a service is what makes that exposure visible.

  • (:SnowflakeCortexSearchService)-[:USES_WAREHOUSE]->(:SnowflakeWarehouse): A Snowflake Cortex Search service refreshes its index on this virtual warehouse.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeCortexSearchService): A Snowflake schema holds the Cortex Search service in its namespace.

SnowflakeCredential

Represents one authentication factor registered against a Snowflake user.

Properties

Field Index Description
id Yes Account-scoped identifier for the credential.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
additional_details Snowflake's per-type detail blob, such as a key-pair fingerprint or a federated issuer. Never contains the secret itself.
comment Credential comment.
created_by Name of the user that created the credential.
created_on When the credential was created.
credential_id Yes Snowflake's internal identifier for the credential.
credential_type The factor kind: PASSWORD, KEYPAIR, PAT, PASSKEY, TOTP, OIDC, or AWS / AZURE / GCP for workload identity federation. PASSWORD on a service identity, or a user whose only factor is PASSWORD, means no MFA.
domain The object domain the credential belongs to, normally USER.
expiration_date When the credential expires. Null means it never expires, so it stays valid until it is explicitly revoked.
last_altered When the credential was last changed.
last_altered_by Name of the user that last changed the credential.
last_used_on When the credential last authenticated. Null means it has never been used, which makes it a candidate for removal.
name Yes The credential name.
status Credential status; only an active credential can authenticate.
user_name Yes Name of the Snowflake user the credential authenticates as.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeCredential): A Snowflake account contains the credential as a resource.

  • (:SnowflakeCredential)-[:OWNED_BY]->(:SnowflakeServiceUser): The credential authenticates as this Snowflake service user.

  • (:SnowflakeCredential)-[:OWNED_BY]->(:SnowflakeUser): The credential authenticates as this human Snowflake user.

SnowflakeDatabase

Represents a Snowflake database, the top container of the data hierarchy.

Ontology Mapping: This node uses the ontology label Database.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Ontology-generated fields are shown in italics.

Field Index Description
id Yes Account-scoped identifier for the database.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
budget Name of the budget the database is attached to.
comment Database comment.
created_on When the database was created.
data_retention_time_in_days Time Travel window in days. A value of 0 disables Time Travel, which removes the ability to recover data after an accidental or malicious change.
dropped_on When the database was dropped, if it is pending purge.
is_current Whether this is the current database for the collecting session.
is_default Whether this is the default database for the collecting user.
is_from_share Whether the database is a read-only mount of an inbound share rather than data this account owns.
kind The database kind reported by Snowflake, for example STANDARD or IMPORTED DATABASE.
name Yes The database name.
options Database options such as TRANSIENT, as reported by Snowflake.
origin Yes The share this database was created from, as PROVIDER_ACCOUNT.SHARE. Empty for a database created locally.
owner Name of the role that owns the database.
owner_role_type Whether the owner is a ROLE or a DATABASE_ROLE.
qualified_name Yes The database name as it appears in a fully-qualified object name.
retention_time Days a dropped database stays recoverable through UNDROP.
_ont_encrypted Yes Property generated by the ontology mapping.
_ont_name Yes Normalized field sourced from name.
_ont_source Module that populated this node's ontology fields.
_ont_type Yes Property generated by the ontology mapping.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeDatabase): A Snowflake account contains the database as a resource.

  • (:SnowflakeDatabase)-[:CONTAINS]->(:SnowflakeDatabaseRole): A Snowflake database contains the database role.

  • (:SnowflakeDatabase)-[:CONTAINS]->(:SnowflakeSchema): A Snowflake database contains the schema.

  • (:SnowflakeDatabase)-[:CREATED_FROM_SHARE]->(:SnowflakeShare): The database is a read-only mount of data another Snowflake account shared in.

Data reachable through this database belongs to the provider account, so a privilege granted here exposes someone else's data rather than this account's.

  • (:SnowflakeFailoverGroup)-[:REPLICATES]->(:SnowflakeDatabase): The group copies this database's contents to every account allowed to hold a replica.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeReplicationGroup)-[:REPLICATES]->(:SnowflakeDatabase): The group copies this database's contents to every account allowed to hold a replica.

SnowflakeDatabaseRole

Represents a Snowflake database role, whose privileges are confined to one database.

Ontology Mapping: This node uses the ontology label PermissionRole.

Additional Labels: This node also uses SnowflakePrincipal, SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakePrincipal: A Snowflake grantee that can hold privileges.
  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Ontology-generated fields are shown in italics.

Field Index Description
id Yes Account-scoped identifier for the database role.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
comment Database role comment.
created_on When the database role was created.
database_name The database that owns the role.
granted_database_roles Number of database roles granted to this database role.
granted_to_database_roles Number of database roles this database role is granted to.
granted_to_roles Number of account roles this database role is granted to.
name Yes The database role name.
owner Name of the role that owns this database role.
qualified_name Yes The database-qualified role name, as DATABASE.ROLE.
_ont_name Yes Normalized field sourced from qualified_name.
_ont_scope Yes Property generated by the ontology mapping.
_ont_source Module that populated this node's ontology fields.
_ont_type Yes Property generated by the ontology mapping.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeDatabaseRole): A Snowflake account contains the role as a resource.

  • (:SnowflakeDatabase)-[:CONTAINS]->(:SnowflakeDatabaseRole): A Snowflake database contains the database role.

  • (:SnowflakeDatabaseRole)-[:INCLUDES]->(:SnowflakeDatabaseRole): A Snowflake database role inherits the privileges of the database role granted to it.

    • Properties:

      Field Description
      created_on When the role was granted.
      granted_by Name of the role that created the grant.
  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeRole)-[:INCLUDES]->(:SnowflakeDatabaseRole): A Snowflake role inherits the privileges of the database role granted to it.

    • Properties:

      Field Description
      created_on When the role was granted.
      granted_by Name of the role that created the grant.

SnowflakeDataPolicy

Represents a Snowflake data governance policy that restricts what a query may read.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the data policy.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
body The SQL expression the policy evaluates. This is where the actual condition lives, for example which roles see unmasked values.
comment Policy comment.
created_on When the policy was created.
database_name Database holding the policy.
kind The object kind Snowflake reports for the policy.
name Yes The data policy name.
owner Name of the role that owns the policy.
owner_role_type Whether the owning role is an account role or a database role.
policy_kind Yes Which governance policy this is: MASKING_POLICY, ROW_ACCESS_POLICY, PROJECTION_POLICY, AGGREGATION_POLICY or JOIN_POLICY.
qualified_name Yes Fully qualified name of the policy, as DATABASE.SCHEMA.NAME.
return_type The type the policy body returns, for masking policies.
schema_name Schema holding the policy.
signature The policy's argument list, which decides the column types it can be attached to.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeDataPolicy): A Snowflake account contains the data policy as a resource.

  • (:SnowflakeDataPolicy)-[:APPLIED_TO]->(:SnowflakeSecurable): A Snowflake data governance policy is attached to this object, restricting reads of it.

    • Properties:

      Field Description
      policy_status Whether the attachment is active. An inactive attachment leaves the object unprotected despite the policy being set.
      ref_column_name The column the policy protects, for a masking or projection policy. Null when the policy applies to the whole object.
      ref_entity_domain The kind of object the policy is attached to, such as TABLE, VIEW, USER or ACCOUNT.
  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeDataPolicy): A Snowflake schema holds the data policy.

SnowflakeDynamicTable

Represents a Snowflake dynamic table: a declarative pipeline Snowflake refreshes on a lag target.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the dynamic table.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
comment Dynamic table comment.
created_on When the dynamic table was created.
database_name Yes Name of the database that contains the dynamic table.
name Yes The dynamic table name.
owner Name of the role that owns the dynamic table.
qualified_name Yes The fully-qualified name, as DATABASE.SCHEMA.DYNAMIC_TABLE.
query The SELECT statement the dynamic table materializes.
refresh_mode Whether refreshes are INCREMENTAL or FULL.
scheduling_state Whether refreshes are RUNNING or SUSPENDED. A suspended dynamic table keeps serving stale data without failing queries.
schema_name Yes Name of the schema that contains the dynamic table.
target_lag How far behind its sources the dynamic table is allowed to fall.
warehouse Yes Name of the warehouse that runs the refresh.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeDynamicTable): A Snowflake account contains the dynamic table as a resource.

  • (:SnowflakeDynamicTable)-[:USES_WAREHOUSE]->(:SnowflakeWarehouse): The dynamic table runs its refreshes on this warehouse.

The refresh executes with the dynamic table owner's privileges, so the warehouse is where that owner's compute is spent.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeDynamicTable): A Snowflake schema contains the dynamic table.

SnowflakeEventTable

Represents a Snowflake event table, the destination for logs, traces and metrics.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the event table.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
comment Event table comment.
created_on When the event table was created.
database_name Yes Name of the database that contains the event table.
name Yes The event table name.
owner Name of the role that owns the event table.
qualified_name Yes The fully-qualified name, as DATABASE.SCHEMA.EVENT_TABLE.
row_count Number of event rows Snowflake reports for the table.
schema_name Yes Name of the schema that contains the event table.
size_bytes Bytes of storage the event table occupies.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeEventTable): A Snowflake account contains the event table as a resource.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeEventTable): A Snowflake schema contains the event table.

SnowflakeExternalAccessIntegration

Represents a Snowflake external access integration: the allow-list that lets UDF and procedure code call out to the internet.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the external access integration.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
allowed_api_authentication_integrations Names of the security integrations that may mint OAuth tokens for the calls.
allowed_authentication_secrets Qualified names of the secrets handler code may read through the integration.
allowed_network_rules Qualified names of the egress network rules the integration permits.
comment External access integration comment.
created_on When the external access integration was created.
enabled Whether UDFs and procedures may make outbound network calls through the integration.
name Yes The external access integration name.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeExternalAccessIntegration): A Snowflake account contains the external access integration as a resource.

  • (:SnowflakeExternalAccessIntegration)-[:ALLOWS]->(:SnowflakeNetworkRule): A Snowflake external access integration permits the egress described by this network rule.

  • (:SnowflakeExternalAccessIntegration)-[:ALLOWS_AUTH_INTEGRATION]->(:SnowflakeSecurityIntegration): A Snowflake external access integration may mint tokens through this security integration.

  • (:SnowflakeExternalAccessIntegration)-[:ALLOWS_SECRET]->(:SnowflakeSecret): A Snowflake external access integration lets handler code read this secret.

  • (:SnowflakeFunction)-[:USES_INTEGRATION]->(:SnowflakeExternalAccessIntegration): A Snowflake function reaches the network through this external access integration.

The integration is what turns a sandboxed handler into one that can talk to the outside world, so it marks a function as a potential egress path.

  • (:SnowflakeNotebook)-[:USES_INTEGRATION]->(:SnowflakeExternalAccessIntegration): A Snowflake notebook reaches the network through this external access integration.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeProcedure)-[:USES_INTEGRATION]->(:SnowflakeExternalAccessIntegration): A Snowflake stored procedure reaches the network through this external access integration.

  • (:SnowflakeService)-[:USES_INTEGRATION]->(:SnowflakeExternalAccessIntegration): A Snowflake service makes outbound network calls through this external access integration.

  • (:SnowflakeStreamlit)-[:USES_INTEGRATION]->(:SnowflakeExternalAccessIntegration): A Snowflake Streamlit app reaches the network through this external access integration.

SnowflakeExternalTable

Represents a Snowflake external table: a table whose files stay in cloud storage.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the external table.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
cloud Cloud provider hosting the underlying files.
comment External table comment.
created_on When the external table was created.
database_name Yes Name of the database that contains the external table.
file_format_name Name of the file format used to parse the files.
file_format_type File format type, for example CSV, JSON or PARQUET.
invalid Whether Snowflake marked the external table invalid, meaning it can no longer read its files.
invalid_reason Why Snowflake invalidated the external table.
last_refreshed_on When the external table metadata was last refreshed.
location Yes Cloud storage prefix the files are read from. The data lives outside Snowflake, so its access controls are the storage provider's.
name Yes The external table name.
notification_channel Cloud messaging channel that triggers automatic metadata refreshes.
owner Name of the role that owns the external table.
owner_role_type Whether the owner is a ROLE or a DATABASE_ROLE.
qualified_name Yes The fully-qualified name, as DATABASE.SCHEMA.EXTERNAL_TABLE.
region Cloud region hosting the underlying files.
schema_name Yes Name of the schema that contains the external table.
stage Name of the stage the external table reads its files through.
table_format Table format layered over the files, for example DELTA.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeExternalTable): A Snowflake account contains the external table as a resource.

  • (:SnowflakeExternalTable)-[:READS_FROM]->(:SnowflakeStage): The external table reads its files through this stage.

The stage holds the credential or storage integration, so it is the hop that turns a query on the external table into access to cloud storage.

  • (:SnowflakeExternalTable)-[:USES_FILE_FORMAT]->(:SnowflakeFileFormat): The external table parses its files with this named file format.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeExternalTable): A Snowflake schema contains the external table.

SnowflakeExternalVolume

Represents a Snowflake external volume: the named set of cloud storage locations Iceberg tables are written to.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the external volume.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
allow_writes Whether Snowflake may write to the volume's storage locations, which is required for Snowflake-managed Iceberg tables.
comment External volume comment.
created_on When the external volume was created.
name Yes The external volume name.
owner Name of the role that owns the external volume.
owner_role_type Whether the owning role is an account ROLE or a DATABASE_ROLE.
storage_location_count Number of storage locations configured on the volume.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeExternalVolume): A Snowflake account contains the external volume as a resource.

  • (:SnowflakeExternalVolume)-[:HAS_STORAGE_LOCATION]->(:SnowflakeExternalVolumeStorageLocation): A Snowflake external volume writes to this storage location.

  • (:SnowflakeIcebergTable)-[:STORED_IN]->(:SnowflakeExternalVolume): The Iceberg table's files live on this external volume.

The volume points at customer-owned cloud storage, so anyone with access to that storage can read the table's data without going through Snowflake.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:DEFAULT_EXTERNAL_VOLUME]->(:SnowflakeExternalVolume): Iceberg tables created in this schema land on this external volume by default.

The volume points at customer-owned cloud storage, so this edge is how schema data reaches an S3, GCS or Azure location.

SnowflakeExternalVolumeStorageLocation

Represents one cloud storage location of a Snowflake external volume.

Ontology Mapping: This node uses the ontology label ObjectStorage.

Properties

Ontology-generated fields are shown in italics.

Field Index Description
id Yes Account-scoped identifier for the external volume storage location.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
azure_storage_account Name of the Azure storage account parsed out of the base URL, when the provider is Azure.
azure_tenant_id Entra ID tenant Snowflake requests an access token from for the location.
encryption_type Server-side encryption applied to the location: NONE, AWS_SSE_S3, AWS_SSE_KMS or GCS_SSE_KMS.
gcs_bucket Name of the GCS bucket parsed out of the base URL, when the provider is GCS.
kms_key_id Yes Identifier of the KMS key used when encryption is customer-managed.
name Yes Name of the storage location within its external volume.
s3_bucket Name of the S3 bucket parsed out of the base URL, when the provider is AWS.
storage_aws_external_id External id the role's trust policy must require, which is what prevents another Snowflake account from assuming it.
storage_aws_iam_user_arn ARN of the Snowflake-owned IAM user that must be trusted by the role's trust policy.
storage_aws_role_arn Yes ARN of the AWS IAM role Snowflake assumes to reach the location.
storage_base_url Yes Base cloud storage URL that Iceberg data and metadata are written under.
storage_provider Cloud storage provider: S3, S3GOV, GCS or AZURE.
volume_name Name of the external volume that owns the location.
_ont_encrypted Yes Normalized field sourced from encryption_type.
_ont_name Yes Normalized field sourced from name.
_ont_source Module that populated this node's ontology fields.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeExternalVolumeStorageLocation): A Snowflake account contains the external volume storage location as a resource.

  • (:SnowflakeExternalVolume)-[:HAS_STORAGE_LOCATION]->(:SnowflakeExternalVolumeStorageLocation): A Snowflake external volume writes to this storage location.

  • (:SnowflakeExternalVolumeStorageLocation)-[:ASSUMES_ROLE]->(:AWSPrincipal): A Snowflake external volume storage location assumes an AWS IAM role to reach its bucket.

  • (:SnowflakeExternalVolumeStorageLocation)-[:BACKED_BY]->(:AWSS3Bucket): A Snowflake external volume storage location is backed by an Amazon S3 bucket.

  • (:SnowflakeExternalVolumeStorageLocation)-[:BACKED_BY]->(:AzureStorageAccount): A Snowflake external volume storage location is backed by an Azure storage account.

  • (:SnowflakeExternalVolumeStorageLocation)-[:BACKED_BY]->(:GCPBucket): A Snowflake external volume storage location is backed by a Google Cloud Storage bucket.

  • (:SnowflakeExternalVolumeStorageLocation)-[:ENCRYPTED_BY]->(:AWSKMSKey): A Snowflake external volume storage location is encrypted with an AWS KMS key.

SnowflakeFailoverGroup

Represents a Snowflake failover group: a replication group whose secondary can be promoted to primary.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the group.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
allowed_accounts Accounts permitted to hold a replica, as organization-qualified identifiers. Kept verbatim because an account outside this organization has no node in the graph.
allowed_databases Databases the group replicates.
allowed_integration_types Integration types the group is permitted to replicate.
allowed_shares Shares the group replicates.
comment Group comment.
created_on When the group was created.
group_type The group type Snowflake reports, distinguishing replication from failover.
is_primary Whether this account holds the primary copy. Only the primary is writable; a secondary is a read-only replica.
name Yes The group name.
next_scheduled_refresh When the next refresh is due.
object_types Kinds of object the group replicates, such as DATABASES, SHARES, USERS or ROLES. Replicating USERS and ROLES copies the account's identities into the target account.
owner Name of the role that owns the group.
primary Fully qualified name of the primary group, including its account.
replication_schedule How often the replica is refreshed. Null means refreshes are triggered manually rather than on a schedule.
secondary_state Whether the secondary replica is started or suspended.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeFailoverGroup): A Snowflake account contains the replication or failover group as a resource.

  • (:SnowflakeFailoverGroup)-[:REPLICATES]->(:SnowflakeDatabase): The group copies this database's contents to every account allowed to hold a replica.

  • (:SnowflakeFailoverGroup)-[:REPLICATES_TO]->(:SnowflakeAccount): The group is permitted to place a replica of its objects in this Snowflake account.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.

SnowflakeFileFormat

Represents a Snowflake named file format, the reusable parsing rules for staged files.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the file format.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
comment File format comment.
created_on When the file format was created.
database_name Yes Name of the database that contains the file format.
format_options The format's parsing options, as reported by Snowflake.
format_type Yes File type the format parses, for example CSV, JSON or PARQUET.
name Yes The file format name.
owner Name of the role that owns the file format.
owner_role_type Whether the owner is a ROLE or a DATABASE_ROLE.
qualified_name Yes The fully-qualified name, as DATABASE.SCHEMA.FILE_FORMAT.
schema_name Yes Name of the schema that contains the file format.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeFileFormat): A Snowflake account contains the file format as a resource.

  • (:SnowflakeExternalTable)-[:USES_FILE_FORMAT]->(:SnowflakeFileFormat): The external table parses its files with this named file format.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeFileFormat): A Snowflake schema contains the file format.

SnowflakeFunction

Represents a Snowflake user-defined function: code that runs inside the account whenever a query calls it.

A function name alone does not identify a function, because the same name can be overloaded with different argument types in one schema, so the identifier carries a normalised argument list as well. Known limitation: SHOW GRANTS renders a function's arguments differently from the object API, so a privilege granted on a specific overload may not attach to this node.

Ontology Mapping: This node uses the ontology label Function.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Ontology-generated fields are shown in italics.

Field Index Description
id Yes Account-scoped identifier for the function.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
api_integration API integration an external function calls its remote service through.
comment Function comment.
created_on When the function was created.
database_name Database containing the function.
external_access_integrations External access integrations that let the handler reach the network.
handler Entry point Snowflake invokes inside the code.
imports Staged files the handler loads its code from.
is_builtin Whether the function ships with Snowflake rather than being user-defined.
is_external_function Whether the function calls out to a remote HTTPS service, which sends query data outside Snowflake.
is_memoizable Whether Snowflake may cache the function's result per session.
is_secure Whether the function is secure, meaning Snowflake hides its definition and keeps the optimizer from leaking underlying data.
language Language the handler is written in, such as SQL, PYTHON or JAVA.
name Yes Function name, without its arguments.
owner Name of the role that owns the function.
packages Third-party packages the handler imports.
qualified_name Fully-qualified database.schema.function name with its normalised argument list, which is what makes an overloaded function unique.
returns Data type the function returns.
runtime_version Language runtime version the handler runs on.
schema_name Schema containing the function.
secrets References to the Snowflake secrets the handler is allowed to read.
signature Normalised argument type list distinguishing this overload.
_ont_deployment_type Yes Property generated by the ontology mapping.
_ont_name Yes Normalized field sourced from name.
_ont_runtime Yes Normalized field sourced from runtime_version.
_ont_source Module that populated this node's ontology fields.

Relationships

  • (:Function)-[:RESOLVED_IMAGE]->(:Image): generated by analysis job Function RESOLVED_IMAGE analysis.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeFunction): A Snowflake account contains the function as a resource.

  • (:SnowflakeFunction)-[:USES_INTEGRATION]->(:SnowflakeApiIntegration): An external Snowflake function calls its remote service through this API integration.

  • (:SnowflakeFunction)-[:USES_INTEGRATION]->(:SnowflakeExternalAccessIntegration): A Snowflake function reaches the network through this external access integration.

The integration is what turns a sandboxed handler into one that can talk to the outside world, so it marks a function as a potential egress path.

  • (:SnowflakeFunction)-[:USES_SECRET]->(:SnowflakeSecret): A Snowflake function is allowed to read this secret at runtime.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeFunction): A Snowflake schema holds the function in its namespace.

SnowflakeIcebergTable

Represents a Snowflake Iceberg table, whose files sit on customer-owned cloud storage.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the Iceberg table.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
base_location Path within the external volume holding the table's files.
can_write_metadata Whether Snowflake may write Iceberg metadata for the table, meaning it needs write access to the external volume rather than read-only.
catalog Name of the catalog tracking the table. The literal SNOWFLAKE means Snowflake itself is the catalog rather than an external integration.
catalog_namespace Namespace of the table in the external catalog.
catalog_sync Name of the catalog integration the table's metadata is synced out to, which makes it readable by engines outside Snowflake.
catalog_table_name Name of the table as the external catalog knows it.
created_on When the Iceberg table was created.
database_name Yes Name of the database that contains the Iceberg table.
external_volume Yes Name of the external volume holding the table's data and metadata files, which sit in customer-owned cloud storage.
iceberg_table_type Whether Snowflake manages the table or only reads a table an external catalog manages.
name Yes The Iceberg table name.
owner Name of the role that owns the Iceberg table.
qualified_name Yes The fully-qualified name, as DATABASE.SCHEMA.ICEBERG_TABLE.
schema_name Yes Name of the schema that contains the Iceberg table.
storage_serialization_policy How Snowflake encodes the Parquet files, which decides whether other Iceberg engines can read them.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeIcebergTable): A Snowflake account contains the Iceberg table as a resource.

  • (:SnowflakeIcebergTable)-[:STORED_IN]->(:SnowflakeExternalVolume): The Iceberg table's files live on this external volume.

The volume points at customer-owned cloud storage, so anyone with access to that storage can read the table's data without going through Snowflake.

  • (:SnowflakeIcebergTable)-[:USES_CATALOG]->(:SnowflakeCatalogIntegration): An external catalog integration, rather than Snowflake, tracks this table.

Absent when Snowflake is its own catalog, which is the case for tables Snowflake manages end to end.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeIcebergTable): A Snowflake schema contains the Iceberg table.

SnowflakeImage

Represents a container image stored in a Snowflake image repository.

Ontology Mapping: This node uses the ontology label Image.

Properties

Ontology-generated fields are shown in italics.

Field Index Description
id Yes Account-scoped identifier for the image.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
digest Yes Content digest of the image manifest, which uniquely pins its contents.
image_path Yes Full registry path a container specification references the image by.
name Yes Image name within its repository.
repository_name Fully qualified name of the image repository holding the image.
size Size of the image in bytes.
tags Tags currently pointing at this image.
untagged_image_path Yes Registry path with the tag removed. A running container is resolved to this plus the digest, so the same image bytes pushed to two repositories stay two distinct images.
uploaded_on When the image was pushed to the repository.
_ont_digest Yes Normalized field sourced from digest.
_ont_source Module that populated this node's ontology fields.
_ont_uri Yes Normalized field sourced from image_path.

Relationships

  • (:ComputeService)-[:HAS_RUNTIME_IMAGE]->(:Image): generated by analysis job Workload HAS_RUNTIME_IMAGE inventory analysis.

    • Properties:

      Field Description
      exposed_internet Property generated by analysis job: Workload HAS_RUNTIME_IMAGE inventory analysis.
  • (:Container)-[:RESOLVED_IMAGE]->(:Image): generated by analysis job Container RESOLVED_IMAGE analysis.

  • (:Function)-[:RESOLVED_IMAGE]->(:Image): generated by analysis job Function RESOLVED_IMAGE analysis.

  • (:PackageVersion)-[:DEPLOYED]->(:Image): A canonical package version is deployed on a container image.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeImage): A Snowflake account contains the image as a resource.

  • (:SnowflakeImageRepository)-[:CONTAINS]->(:SnowflakeImage): A Snowflake image repository holds this image.

  • (:SnowflakeServiceContainer)-[:HAS_IMAGE]->(:SnowflakeImage): A Snowflake service container runs this image from an account image repository.

Matched on the untagged registry path as well as the digest. The digest alone identifies the image bytes, not the image object: the same bytes pushed to two repositories are two SnowflakeImage nodes, and a digest-only matcher would attach the container to every one of them. Pairing the path with the digest picks the single repository the container actually pulled from, while staying tolerant of the container and the repository listing reporting different tags.

SnowflakeImageRepository

Represents a Snowflake image repository: the account-hosted OCI registry that Snowpark Container Services pulls from.

Ontology Mapping: This node uses the ontology label ContainerRegistry.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Ontology-generated fields are shown in italics.

Field Index Description
id Yes Account-scoped identifier for the image repository.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
comment Image repository comment.
created_on When the image repository was created.
database_name Name of the database containing the image repository.
name Yes The image repository name.
owner Name of the role that owns the image repository.
privatelink_repository_url Private-endpoint registry URL, when private connectivity is configured.
qualified_name Yes Fully qualified DATABASE.SCHEMA.NAME of the image repository.
repository_url Yes Registry URL images are pushed to and pulled from.
schema_name Name of the schema containing the image repository.
_ont_created_at Yes Normalized field sourced from created_on.
_ont_name Yes Normalized field sourced from name.
_ont_source Module that populated this node's ontology fields.
_ont_uri Yes Normalized field sourced from repository_url.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeImageRepository): A Snowflake account contains the image repository as a resource.

  • (:SnowflakeImageRepository)-[:CONTAINS]->(:SnowflakeImage): A Snowflake image repository holds this image.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeImageRepository): A Snowflake schema contains the image repository.

SnowflakeListing

Represents a Snowflake listing: the Marketplace or Data Exchange offer that publishes a share.

Properties

Field Index Description
id Yes Account-scoped identifier for the listing.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
comment Listing comment.
created_on When the listing was created.
distribution EXTERNAL for the public Snowflake Marketplace, INTERNAL for the organization's own Data Exchange. EXTERNAL plus a published state means the share behind it is publicly offered.
global_name Yes Snowflake's globally unique name for the listing.
is_application Whether the listing publishes a Native App rather than data alone.
is_limited_trial Whether the listing offers a limited trial of the data.
is_monetized Whether the listing is offered for a price.
is_targeted Whether the listing is offered only to named consumer accounts rather than to everyone who can see it.
name Yes The listing name within the account.
owner Name of the role that owns the listing.
published_on When the listing was published. Null while it is unpublished.
review_state Where the listing stands in Snowflake's publishing review.
share_name Name of the share the listing publishes.
state Lifecycle state of the listing. Only a published listing is discoverable by consumers.
title The title consumers see for the listing.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeListing): A Snowflake account contains the listing as a resource.

  • (:SnowflakeListing)-[:PUBLISHES]->(:SnowflakeShare): A Snowflake listing offers this share to consumers.

SnowflakeManagedAccount

Represents a Snowflake managed account, such as a reader account created to consume a share.

Ontology Mapping: This node uses the ontology label Tenant.

Properties

Ontology-generated fields are shown in italics.

Field Index Description
id Yes Account-scoped identifier for the managed account.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
account_type The managed account type; READER for a reader account.
cloud The cloud hosting the managed account.
comment Managed account comment.
created_on When the managed account was created.
is_reader Whether this is a reader account, which consumes shared data without a Snowflake contract of its own.
locator Yes The managed account's locator.
name Yes The managed account name.
region The region hosting the managed account.
url The managed account's login URL.
_ont_domain Yes Normalized field sourced from url.
_ont_name Yes Normalized field sourced from name.
_ont_source Module that populated this node's ontology fields.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeManagedAccount): A Snowflake account owns the managed account it created.

  • (:SnowflakeShare)-[:SHARED_WITH]->(:SnowflakeManagedAccount): A Snowflake share is readable by this managed consumer account.

SnowflakeMaterializedView

Represents a Snowflake materialized view: a query whose results are stored and kept fresh.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the materialized view.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
automatic_clustering Whether Snowflake reclusters the materialized view automatically.
cluster_by Clustering key expression, if there is one.
comment Materialized view comment.
created_on When the materialized view was created.
database_name Yes Name of the database that contains the materialized view.
invalid Whether the materialized view is suspended and no longer being maintained, in which case queries fall back to the base table.
invalid_reason Why Snowflake invalidated the materialized view.
is_secure Whether the materialized view is secure, which hides its definition and stops the optimizer leaking rows the definition filters out.
name Yes The materialized view name.
owner Name of the role that owns the materialized view.
owner_role_type Whether the owner is a ROLE or a DATABASE_ROLE.
qualified_name Yes The fully-qualified name, as DATABASE.SCHEMA.MATERIALIZED_VIEW.
query The SELECT statement the materialized view keeps precomputed.
refreshed_on When the materialized view was last refreshed.
row_count Number of rows Snowflake reports for the materialized view.
schema_name Yes Name of the schema that contains the materialized view.
size_bytes Bytes of storage the materialized view occupies.
source_database_name Database of the base table the materialized view reads.
source_name Name of the base table the materialized view is defined over.
source_schema_name Schema of the base table the materialized view reads.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeMaterializedView): A Snowflake account contains the materialized view as a resource.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeMaterializedView): A Snowflake schema contains the materialized view.

SnowflakeNetworkPolicy

Represents a Snowflake network policy: the IP and network-rule allow/deny list gating connections.

Ontology Mapping: This node uses the ontology label NetworkAccessControl.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Ontology-generated fields are shown in italics.

Field Index Description
id Yes Account-scoped identifier for the network policy.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
allowed_ip_count Number of entries in the allowed IP list.
allowed_ip_list CIDR ranges permitted to connect. A list containing 0.0.0.0/0 permits the entire internet and satisfies Snowflake's policy requirement without restricting anything.
allows_all_ipv4 Whether the allowed list contains 0.0.0.0/0, meaning the policy places no effective network restriction on IPv4 traffic.
attached_to_account Whether this policy is set as the account-level network policy, which applies it to every user without their own policy.
blocked_ip_count Number of entries in the blocked IP list.
blocked_ip_list CIDR ranges denied even when they appear in the allowed list.
comment Network policy comment.
created_on When the network policy was created.
name Yes The network policy name.
owner Name of the role that owns the network policy.
_ont_direction Yes Property generated by the ontology mapping.
_ont_name Yes Normalized field sourced from name.
_ont_source Module that populated this node's ontology fields.

Relationships

  • (:SnowflakeAccount)-[:GOVERNED_BY]->(:SnowflakeNetworkPolicy): Every connection to the Snowflake account is restricted by this network policy.

Distinct from the RESOURCE edge, which merely records that the policy is defined in the account. This edge means the policy is actually in force account-wide, which is read from the account's NETWORK_POLICY parameter.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeNetworkPolicy): A Snowflake account contains the network policy as a resource.

  • (:SnowflakeNetworkPolicy)-[:ALLOWS]->(:SnowflakeNetworkRule): A Snowflake network policy permits the traffic described by this network rule.

  • (:SnowflakeNetworkPolicy)-[:BLOCKS]->(:SnowflakeNetworkRule): A Snowflake network policy denies the traffic described by this network rule.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSecurityIntegration)-[:GOVERNED_BY]->(:SnowflakeNetworkPolicy): Use of this Snowflake security integration is restricted by a network policy.

  • (:SnowflakeServiceUser)-[:GOVERNED_BY]->(:SnowflakeNetworkPolicy): A Snowflake user's connections are restricted by this network policy.

  • (:SnowflakeUser)-[:GOVERNED_BY]->(:SnowflakeNetworkPolicy): A Snowflake user's connections are restricted by this network policy.

SnowflakeNetworkRule

Represents a Snowflake network rule: a reusable list of network identifiers referenced by policies and integrations.

Ontology Mapping: This node uses the ontology label NetworkAccessControl.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the network rule.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
comment Network rule comment.
created_on When the network rule was created.
database_name Name of the database containing the network rule.
mode Direction the rule governs: INGRESS for inbound connections, EGRESS for outbound calls from UDFs and procedures, INTERNAL_STAGE for stage access.
name Yes The network rule name.
owner Name of the role that owns the network rule.
qualified_name Yes Fully qualified DATABASE.SCHEMA.NAME of the network rule.
rule_type What the value list holds: IPV4, IPV6, AWSVPCEID, AZURELINKID, HOST_PORT or PRIVATE_HOST_PORT.
schema_name Name of the schema containing the network rule.
value_count Number of entries in the rule's value list.
value_list The addresses, endpoint ids or host:port pairs the rule matches.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeNetworkRule): A Snowflake account contains the network rule as a resource.

  • (:SnowflakeExternalAccessIntegration)-[:ALLOWS]->(:SnowflakeNetworkRule): A Snowflake external access integration permits the egress described by this network rule.

  • (:SnowflakeNetworkPolicy)-[:ALLOWS]->(:SnowflakeNetworkRule): A Snowflake network policy permits the traffic described by this network rule.

  • (:SnowflakeNetworkPolicy)-[:BLOCKS]->(:SnowflakeNetworkRule): A Snowflake network policy denies the traffic described by this network rule.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeNetworkRule): A Snowflake schema contains the network rule.

SnowflakeNotebook

Represents a Snowflake notebook: interactive code and SQL stored as an account object.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the notebook.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
comment Notebook comment.
compute_pool Name of the compute pool backing a container-runtime notebook.
created_on When the notebook was created.
database_name Database containing the notebook.
default_version Version of the notebook's files that Snowflake runs by default.
external_access_integrations External access integrations that let the notebook reach the network.
external_access_secrets References to the secrets the notebook may read when calling out.
import_urls Stage locations the notebook's supporting files were imported from.
live_version_location_uri Stage URI holding the currently live version of the notebook's files.
main_file Path of the notebook file that is executed.
name Yes Notebook name.
owner Name of the role that owns the notebook.
qualified_name Fully-qualified database.schema.notebook name.
query_warehouse Name of the virtual warehouse the notebook's SQL cells run on.
runtime_name Container runtime image the notebook executes on.
schema_name Schema containing the notebook.
title Display title shown in Snowsight.
url_id Opaque identifier used in the notebook's Snowsight URL.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeNotebook): A Snowflake account contains the notebook as a resource.

  • (:SnowflakeNotebook)-[:RUNS_ON]->(:SnowflakeComputePool): A container-runtime Snowflake notebook executes on this compute pool.

  • (:SnowflakeNotebook)-[:USES_INTEGRATION]->(:SnowflakeExternalAccessIntegration): A Snowflake notebook reaches the network through this external access integration.

  • (:SnowflakeNotebook)-[:USES_SECRET]->(:SnowflakeSecret): A Snowflake notebook is allowed to read this secret when calling out.

  • (:SnowflakeNotebook)-[:USES_WAREHOUSE]->(:SnowflakeWarehouse): A Snowflake notebook runs its queries on this virtual warehouse.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeNotebook): A Snowflake schema holds the notebook in its namespace.

SnowflakeNotificationIntegration

Represents a Snowflake notification integration: the message queue or email hook Snowflake sends and receives events through.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the notification integration.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
aws_sns_external_id External id the role's trust policy must require, which is what prevents another Snowflake account from assuming it.
aws_sns_role_arn Yes ARN of the AWS IAM role Snowflake assumes to publish to the topic.
aws_sns_topic_arn Yes ARN of the SNS topic Snowflake publishes notifications to.
azure_storage_queue_primary_uri URI of the Azure storage queue that carries Event Grid notifications.
azure_tenant_id Entra ID tenant Snowflake requests an access token from for the queue.
comment Notification integration comment.
created_on When the notification integration was created.
enabled Whether the integration may send or receive notifications.
gcp_pubsub_subscription_name Yes Full name of the Pub/Sub subscription Snowflake reads notifications from.
gcp_pubsub_topic_name Yes Full name of the Pub/Sub topic Snowflake publishes notifications to.
name Yes The notification integration name.
notification_hook_type Transport the integration uses: EMAIL, WEBHOOK, QUEUE_AWS_SNS_OUTBOUND, an Azure Event Grid queue or a GCP Pub/Sub queue.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeNotificationIntegration): A Snowflake account contains the notification integration as a resource.

  • (:SnowflakeNotificationIntegration)-[:ASSUMES_ROLE]->(:AWSPrincipal): A Snowflake notification integration assumes an AWS IAM role to reach its SNS topic.

  • (:SnowflakeNotificationIntegration)-[:NOTIFIES]->(:AWSSNSTopic): A Snowflake notification integration publishes to an Amazon SNS topic.

  • (:SnowflakePipe)-[:USES_INTEGRATION]->(:SnowflakeNotificationIntegration): A Snowflake pipe reads its file-arrival events through this notification integration.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeTask)-[:NOTIFIES]->(:SnowflakeNotificationIntegration): A Snowflake task sends its error notifications through this integration. A Snowflake task sends its success notifications through this integration.

SnowflakeOrganization

Represents a Snowflake organization: the container that owns a set of accounts.

Ontology Mapping: This node uses the ontology label Tenant.

Properties

Ontology-generated fields are shown in italics.

Field Index Description
id Yes The Snowflake organization name.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
name Yes The Snowflake organization name.
_ont_name Yes Normalized field sourced from name.
_ont_source Module that populated this node's ontology fields.

Relationships

  • (:SnowflakeOrganization)-[:RESOURCE]->(:SnowflakeAccount): A Snowflake organization contains the account.

SnowflakePasswordPolicy

Represents a Snowflake password policy: the complexity and rotation rules applied to passwords.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the password policy.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
comment Policy comment.
created_on When the policy was created.
database_name Database holding the policy.
name Yes The password policy name.
owner Name of the role that owns the policy.
owner_role_type Whether the owning role is an account role or a database role.
password_history Number of previous passwords that may not be reused.
password_lockout_time_mins Minutes a user stays locked out after too many failed attempts.
password_max_age_days Days before a password must be rotated. Zero disables expiry, so passwords under this policy never have to change.
password_max_length Maximum number of characters allowed.
password_max_retries Failed attempts allowed before the user is locked out.
password_min_age_days Days a password must be kept before it may be changed again.
password_min_length Minimum number of characters required.
password_min_lower_case_chars Minimum number of lowercase characters required.
password_min_numeric_chars Minimum number of digits required.
password_min_special_chars Minimum number of special characters required.
password_min_upper_case_chars Minimum number of uppercase characters required.
qualified_name Yes Fully qualified name of the policy, as DATABASE.SCHEMA.NAME.
schema_name Schema holding the policy.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakePasswordPolicy): A Snowflake account contains the password policy as a resource.

  • (:SnowflakePasswordPolicy)-[:APPLIED_TO]->(:SnowflakeSecurable): A Snowflake password policy governs the passwords of this object's users.

    • Properties:

      Field Description
      policy_status Whether the attachment is active. An inactive attachment leaves the object unprotected despite the policy being set.
      ref_column_name The column the policy protects, for a masking or projection policy. Null when the policy applies to the whole object.
      ref_entity_domain The kind of object the policy is attached to, such as TABLE, VIEW, USER or ACCOUNT.
  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakePasswordPolicy): A Snowflake schema holds the password policy.

SnowflakePipe

Represents a Snowflake pipe: a continuous COPY that loads staged files into a table.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the pipe.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
auto_ingest Whether the pipe loads files automatically from cloud storage event notifications rather than waiting for an explicit REST call.
aws_sns_topic ARN of the SNS topic that notifies the pipe of new files.
comment Pipe comment.
created_on When the pipe was created.
database_name Database containing the pipe.
definition The COPY INTO statement the pipe runs for each ingested file.
error_integration Notification integration that receives the pipe's error notifications.
integration Notification integration the pipe reads its event queue from.
invalid_reason Why Snowflake considers the pipe unusable, for example a dropped stage or target table. Null while the pipe is healthy.
name Yes Pipe name.
owner Name of the role that owns the pipe.
pattern Regular expression limiting which staged file paths the pipe ingests.
qualified_name Fully-qualified database.schema.pipe name.
schema_name Schema containing the pipe.

Relationships

  • (:AWSSNSTopic)-[:NOTIFIES]->(:SnowflakePipe): A Snowflake pipe is driven by file-arrival notifications from this SNS topic.

Joining the pipe to the topic the aws module already ingested is what makes an ingestion path traceable from the S3 bucket that receives a file all the way to the Snowflake table it lands in.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakePipe): A Snowflake account contains the pipe as a resource.

  • (:SnowflakePipe)-[:USES_INTEGRATION]->(:SnowflakeNotificationIntegration): A Snowflake pipe reads its file-arrival events through this notification integration.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakePipe): A Snowflake schema holds the pipe in its namespace.

SnowflakeProcedure

Represents a Snowflake stored procedure: a callable body of code that can run with its owner's privileges.

A procedure name alone does not identify a procedure, because the same name can be overloaded with different argument types in one schema, so the identifier carries a normalised argument list as well. Known limitation: SHOW GRANTS renders a procedure's arguments differently from the object API, so a privilege granted on a specific overload may not attach to this node.

Ontology Mapping: This node uses the ontology label Function.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Ontology-generated fields are shown in italics.

Field Index Description
id Yes Account-scoped identifier for the stored procedure.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
api_integration API integration the procedure calls a remote service through.
comment Procedure comment.
created_on When the procedure was created.
database_name Database containing the procedure.
execute_as Whether the body runs with the privileges of the procedure owner (OWNER) or of the role that called it (CALLER). An owner-rights procedure lends its owner's privileges to anyone allowed to call it.
external_access_integrations External access integrations that let the handler reach the network.
handler Entry point Snowflake invokes inside the code.
imports Staged files the handler loads its code from.
is_builtin Whether the procedure ships with Snowflake rather than being user-defined.
is_external_function Whether the procedure calls out to a remote HTTPS service.
is_memoizable Whether Snowflake may cache the procedure's result per session.
is_secure Whether Snowflake hides the procedure's definition from non-owners.
language Language the handler is written in, such as SQL, PYTHON or JAVA.
name Yes Procedure name, without its arguments.
owner Name of the role that owns the procedure.
packages Third-party packages the handler imports.
qualified_name Fully-qualified database.schema.procedure name with its normalised argument list, which is what makes an overloaded procedure unique.
returns Data type the procedure returns.
runtime_version Language runtime version the handler runs on.
schema_name Schema containing the procedure.
secrets References to the Snowflake secrets the handler is allowed to read.
signature Normalised argument type list distinguishing this overload.
_ont_deployment_type Yes Property generated by the ontology mapping.
_ont_name Yes Normalized field sourced from name.
_ont_runtime Yes Normalized field sourced from runtime_version.
_ont_source Module that populated this node's ontology fields.

Relationships

  • (:Function)-[:RESOLVED_IMAGE]->(:Image): generated by analysis job Function RESOLVED_IMAGE analysis.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeProcedure): A Snowflake account contains the stored procedure as a resource.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeProcedure)-[:ASSUMES]->(:SnowflakeRole): An owner-rights stored procedure executes with the privileges of its owning role.

This is the Snowflake equivalent of a privilege-escalation stepping stone: any role that may call the procedure gets the owner's privileges for the duration of the body. Absent for a caller-rights procedure, which runs with whatever privileges the caller already had.

  • (:SnowflakeProcedure)-[:USES_INTEGRATION]->(:SnowflakeExternalAccessIntegration): A Snowflake stored procedure reaches the network through this external access integration.

  • (:SnowflakeProcedure)-[:USES_SECRET]->(:SnowflakeSecret): A Snowflake stored procedure is allowed to read this secret at runtime.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeProcedure): A Snowflake schema holds the stored procedure in its namespace.

SnowflakeProgrammaticAccessToken

Represents a Snowflake programmatic access token: a bearer secret that authenticates as a user.

Ontology Mapping: This node uses the ontology label APIKey.

Properties

Ontology-generated fields are shown in italics.

Field Index Description
id Yes Account-scoped identifier for the access token.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
comment Token comment.
created_by Name of the user that created the token.
created_on When the token was created.
expires_at When the token stops being accepted.
mins_to_bypass_required_network_policy Minutes remaining in which this token may be used from outside the network policy that would otherwise gate it. A non-null value is an active exemption from network restrictions, so the token can be replayed from anywhere on the internet until it lapses.
name Yes The token name.
role_restriction The single role the token is limited to. Null when the token is unrestricted, in which case it can activate every role its user holds.
rotated_to Name of the token this one was rotated to. A rotated token stays usable for its grace period, so both it and its successor are live secrets.
status Token status; only an ACTIVE token can authenticate.
user_name Yes Name of the Snowflake user the token authenticates as.
_ont_created_at Yes Normalized field sourced from created_on.
_ont_expires_at Yes Normalized field sourced from expires_at.
_ont_name Yes Normalized field sourced from name.
_ont_source Module that populated this node's ontology fields.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeProgrammaticAccessToken): A Snowflake account contains the access token as a resource.

  • (:SnowflakeProgrammaticAccessToken)-[:OWNED_BY]->(:SnowflakeServiceUser): The access token authenticates as this Snowflake service user.

  • (:SnowflakeProgrammaticAccessToken)-[:OWNED_BY]->(:SnowflakeUser): The access token authenticates as this human Snowflake user.

  • (:SnowflakeProgrammaticAccessToken)-[:RESTRICTED_TO]->(:SnowflakeRole): The access token may only activate this role, whatever else its user holds.

Absent when the token is unrestricted, which means it inherits every role granted to its user.

  • (:User)-[:OWNS]->(:APIKey): generated by analysis job Ontology - User OWNS APIKey linking.

SnowflakeReplicationGroup

Represents a Snowflake replication group: a set of objects copied to other accounts on a schedule.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the group.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
allowed_accounts Accounts permitted to hold a replica, as organization-qualified identifiers. Kept verbatim because an account outside this organization has no node in the graph.
allowed_databases Databases the group replicates.
allowed_integration_types Integration types the group is permitted to replicate.
allowed_shares Shares the group replicates.
comment Group comment.
created_on When the group was created.
group_type The group type Snowflake reports, distinguishing replication from failover.
is_primary Whether this account holds the primary copy. Only the primary is writable; a secondary is a read-only replica.
name Yes The group name.
next_scheduled_refresh When the next refresh is due.
object_types Kinds of object the group replicates, such as DATABASES, SHARES, USERS or ROLES. Replicating USERS and ROLES copies the account's identities into the target account.
owner Name of the role that owns the group.
primary Fully qualified name of the primary group, including its account.
replication_schedule How often the replica is refreshed. Null means refreshes are triggered manually rather than on a schedule.
secondary_state Whether the secondary replica is started or suspended.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeReplicationGroup): A Snowflake account contains the replication or failover group as a resource.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeReplicationGroup)-[:REPLICATES]->(:SnowflakeDatabase): The group copies this database's contents to every account allowed to hold a replica.

  • (:SnowflakeReplicationGroup)-[:REPLICATES_TO]->(:SnowflakeAccount): The group is permitted to place a replica of its objects in this Snowflake account.

SnowflakeResourceMonitor

Represents a Snowflake resource monitor: the credit quota that suspends warehouses when exceeded.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the resource monitor.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
comment Resource monitor comment.
created_on When the resource monitor was created.
credit_quota Credits the monitored objects may consume per interval before actions fire.
end_time When monitoring ends. Null means the monitor runs indefinitely.
frequency How often the credit usage resets: MONTHLY, DAILY, WEEKLY, YEARLY or NEVER.
level Scope the monitor applies to: ACCOUNT for an account-wide cap, WAREHOUSE when it is assigned to specific warehouses.
name Yes The resource monitor name.
notify_at Quota percentages at which the monitor only notifies, without suspending.
owner Name of the role that owns the resource monitor.
remaining_credits Credits left in the current interval before the quota is reached.
start_time When the current monitoring interval started.
suspend_at Quota percentage at which running statements finish but no new ones start. Null means the monitor never suspends.
suspend_immediate_at Quota percentage at which running statements are aborted immediately.
used_credits Credits consumed so far in the current interval.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeResourceMonitor): A Snowflake account contains the resource monitor as a resource.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeWarehouse)-[:MONITORED_BY]->(:SnowflakeResourceMonitor): A resource monitor caps the credits this Snowflake warehouse may consume.

SnowflakeRole

Represents a Snowflake account-level role, the unit privileges are granted to.

Ontology Mapping: This node uses the ontology label PermissionRole.

Additional Labels: This node also uses SnowflakePrincipal, SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakePrincipal: A Snowflake grantee that can hold privileges.
  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Ontology-generated fields are shown in italics.

Field Index Description
id Yes Account-scoped identifier for the role.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
assigned_to_users Number of users this role is granted to.
comment Role comment.
created_on When the role was created.
granted_roles Number of roles granted to this role.
granted_to_roles Number of roles this role is granted to.
name Yes The role name.
owner Name of the role that owns this role.
role_type BUILTIN for a Snowflake system role such as ACCOUNTADMIN or SECURITYADMIN, CUSTOM otherwise.
_ont_name Yes Normalized field sourced from name.
_ont_scope Yes Property generated by the ontology mapping.
_ont_source Module that populated this node's ontology fields.
_ont_type Yes Normalized field sourced from role_type.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeRole): A Snowflake account contains the role as a resource.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeProcedure)-[:ASSUMES]->(:SnowflakeRole): An owner-rights stored procedure executes with the privileges of its owning role.

This is the Snowflake equivalent of a privilege-escalation stepping stone: any role that may call the procedure gets the owner's privileges for the duration of the body. Absent for a caller-rights procedure, which runs with whatever privileges the caller already had.

  • (:SnowflakeProgrammaticAccessToken)-[:RESTRICTED_TO]->(:SnowflakeRole): The access token may only activate this role, whatever else its user holds.

Absent when the token is unrestricted, which means it inherits every role granted to its user.

  • (:SnowflakeRole)-[:INCLUDES]->(:SnowflakeDatabaseRole): A Snowflake role inherits the privileges of the database role granted to it.

    • Properties:

      Field Description
      created_on When the role was granted.
      granted_by Name of the role that created the grant.
  • (:SnowflakeRole)-[:INCLUDES]->(:SnowflakeRole): A Snowflake role inherits the privileges of the role granted to it.

    • Properties:

      Field Description
      created_on When the role was granted.
      granted_by Name of the role that created the grant.
  • (:SnowflakeSecurityIntegration)-[:RUNS_AS_ROLE]->(:SnowflakeRole): A Snowflake security integration acts as this role when provisioning through SCIM.

  • (:SnowflakeServiceUser)-[:HAS_ROLE]->(:SnowflakeRole): A Snowflake service user has been granted this role.

    • Properties:

      Field Description
      created_on When the role was granted.
      granted_by Name of the role that created the grant.
  • (:SnowflakeTask)-[:ASSUMES]->(:SnowflakeRole): A Snowflake task executes with the privileges of its owning role.

Only present for an owner-rights task. A caller-rights task instead runs with the privileges of whichever role resumed it, so no single role can be named.

  • (:SnowflakeUser)-[:HAS_ROLE]->(:SnowflakeRole): A Snowflake user has been granted this role.
    • Properties:

      Field Description
      created_on When the role was granted.
      granted_by Name of the role that created the grant.

SnowflakeSchema

Represents a Snowflake schema, the namespace tables and views live in.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the schema.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
catalog Name of the catalog Iceberg tables created in this schema default to.
comment Schema comment.
created_on When the schema was created.
database_name Yes Name of the database that contains the schema.
dropped_on When the schema was dropped, if it is pending purge.
external_volume Name of the external volume Iceberg tables created in this schema default to.
kind The schema kind reported by Snowflake.
managed_access Whether the schema uses managed access, which reserves granting on its objects to the schema owner instead of each object's owner.
name Yes The schema name.
options Schema options such as TRANSIENT, as reported by Snowflake.
owner Name of the role that owns the schema.
owner_role_type Whether the owner is a ROLE or a DATABASE_ROLE.
qualified_name Yes The fully-qualified schema name, as DATABASE.SCHEMA.
retention_time Days a dropped schema stays recoverable through UNDROP.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeSchema): A Snowflake account contains the schema as a resource.

  • (:SnowflakeDatabase)-[:CONTAINS]->(:SnowflakeSchema): A Snowflake database contains the schema.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeAlert): A Snowflake schema holds the alert in its namespace.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeArtifactRepository): A Snowflake schema holds the artifact repository in its namespace.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeAuthenticationPolicy): A Snowflake schema holds the authentication policy.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeCortexSearchService): A Snowflake schema holds the Cortex Search service in its namespace.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeDataPolicy): A Snowflake schema holds the data policy.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeDynamicTable): A Snowflake schema contains the dynamic table.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeEventTable): A Snowflake schema contains the event table.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeExternalTable): A Snowflake schema contains the external table.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeFileFormat): A Snowflake schema contains the file format.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeFunction): A Snowflake schema holds the function in its namespace.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeIcebergTable): A Snowflake schema contains the Iceberg table.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeImageRepository): A Snowflake schema contains the image repository.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeMaterializedView): A Snowflake schema contains the materialized view.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeNetworkRule): A Snowflake schema contains the network rule.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeNotebook): A Snowflake schema holds the notebook in its namespace.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakePasswordPolicy): A Snowflake schema holds the password policy.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakePipe): A Snowflake schema holds the pipe in its namespace.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeProcedure): A Snowflake schema holds the stored procedure in its namespace.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeSecret): A Snowflake schema contains the secret.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeSequence): A Snowflake schema contains the sequence.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeService): A Snowflake schema contains the service.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeSessionPolicy): A Snowflake schema holds the session policy.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeStage): A Snowflake schema contains the stage.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeStream): A Snowflake schema contains the stream.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeStreamlit): A Snowflake schema holds the Streamlit app in its namespace.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeTable): A Snowflake schema contains the table.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeTag): A Snowflake schema holds the tag definition in its namespace.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeTask): A Snowflake schema holds the task in its namespace.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeView): A Snowflake schema contains the view.

  • (:SnowflakeSchema)-[:DEFAULT_EXTERNAL_VOLUME]->(:SnowflakeExternalVolume): Iceberg tables created in this schema land on this external volume by default.

The volume points at customer-owned cloud storage, so this edge is how schema data reaches an S3, GCS or Azure location.

SnowflakeSecret

Represents a Snowflake secret: a schema-level credential used by external access and API calls.

Ontology Mapping: This node uses the ontology label Secret.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Ontology-generated fields are shown in italics.

Field Index Description
id Yes Account-scoped identifier for the secret.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
algorithm Algorithm of a symmetric-key secret.
api_authentication Name of the security integration that issues the secret's OAuth token.
comment Secret comment.
created_on When the secret was created.
database_name Name of the database containing the secret.
key_length Length in bits of a symmetric-key secret.
name Yes The secret name.
oauth_refresh_token_expiry_time When the stored OAuth refresh token expires. A past value means calls using the secret already fail.
oauth_scopes OAuth scopes the secret's token is issued for.
owner Name of the role that owns the secret.
qualified_name Yes Fully qualified DATABASE.SCHEMA.NAME of the secret.
schema_name Name of the schema containing the secret.
secret_type Kind of credential held: PASSWORD, OAUTH2, GENERIC_STRING, SYMMETRIC_KEY or a private-key type.
username Username half of a PASSWORD secret. The password itself is never stored.
_ont_created_at Yes Normalized field sourced from created_on.
_ont_name Yes Normalized field sourced from name.
_ont_source Module that populated this node's ontology fields.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeSecret): A Snowflake account contains the secret as a resource.

  • (:SnowflakeExternalAccessIntegration)-[:ALLOWS_SECRET]->(:SnowflakeSecret): A Snowflake external access integration lets handler code read this secret.

  • (:SnowflakeFunction)-[:USES_SECRET]->(:SnowflakeSecret): A Snowflake function is allowed to read this secret at runtime.

  • (:SnowflakeNotebook)-[:USES_SECRET]->(:SnowflakeSecret): A Snowflake notebook is allowed to read this secret when calling out.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeProcedure)-[:USES_SECRET]->(:SnowflakeSecret): A Snowflake stored procedure is allowed to read this secret at runtime.

  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeSecret): A Snowflake schema contains the secret.

  • (:SnowflakeSecret)-[:USES_INTEGRATION]->(:SnowflakeSecurityIntegration): A Snowflake secret obtains its OAuth token from this security integration.

SnowflakeSecurityIntegration

Represents a Snowflake security integration: the federated sign-in, OAuth or SCIM trust configured on the account.

Ontology Mapping: This node uses the ontology label IdentityProvider.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Ontology-generated fields are shown in italics.

Field Index Description
id Yes Account-scoped identifier for the security integration.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
category Snowflake integration category.
comment Security integration comment.
created_on When the security integration was created.
enabled Whether the integration is active.
external_oauth_any_role_mode Whether a token may request any role rather than only the roles named in its scope. ENABLE lets a token holder pick any role the user has.
external_oauth_audience_list Audience values Snowflake accepts in an external OAuth token.
external_oauth_issuer Yes Issuer claim the external OAuth authorization server must present.
external_oauth_jws_keys_url URL Snowflake fetches the authorization server's signing keys from.
integration_type Snowflake integration type, for example SAML2, EXTERNAL_OAUTH, OAUTH or SCIM, optionally suffixed with the provider.
name Yes The security integration name.
network_policy Name of the network policy restricting where the integration may be used from.
oauth_client_type Whether the Snowflake OAuth client is CONFIDENTIAL or PUBLIC. A public client authenticates without a secret.
oauth_issue_refresh_tokens Whether the integration issues long-lived refresh tokens.
oauth_redirect_uri Redirect URI authorization codes are returned to.
oauth_refresh_token_validity Seconds a refresh token issued by the integration stays valid.
protocol Federation protocol derived from the integration type: SAML, OIDC or SCIM. Null when the type maps to none of them.
run_as_role Name of the Snowflake role the SCIM client acts as, which bounds what the external provisioner may create and modify.
saml2_issuer Yes Entity id of the SAML identity provider that signs assertions.
saml2_provider SAML provider name, for example OKTA, ADFS or CUSTOM.
saml2_sso_url URL users are redirected to for SAML single sign-on.
saml2_x509_cert_fingerprint SHA-256 fingerprint of the identity provider's signing certificate. Only the fingerprint is stored, never the certificate body.
scim_client SCIM client provisioning users and roles, for example OKTA or AZURE.
_ont_enabled Yes Normalized field sourced from enabled.
_ont_issuer Yes Normalized field sourced from saml2_issuer.
_ont_name Yes Normalized field sourced from name.
_ont_protocol Yes Normalized field sourced from protocol.
_ont_source Module that populated this node's ontology fields.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeSecurityIntegration): A Snowflake account contains the security integration as a resource.

  • (:SnowflakeExternalAccessIntegration)-[:ALLOWS_AUTH_INTEGRATION]->(:SnowflakeSecurityIntegration): A Snowflake external access integration may mint tokens through this security integration.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSecret)-[:USES_INTEGRATION]->(:SnowflakeSecurityIntegration): A Snowflake secret obtains its OAuth token from this security integration.

  • (:SnowflakeSecurityIntegration)-[:GOVERNED_BY]->(:SnowflakeNetworkPolicy): Use of this Snowflake security integration is restricted by a network policy.

  • (:SnowflakeSecurityIntegration)-[:RUNS_AS_ROLE]->(:SnowflakeRole): A Snowflake security integration acts as this role when provisioning through SCIM.

SnowflakeSequence

Represents a Snowflake sequence, a generator of monotonically increasing numbers.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the sequence.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
comment Sequence comment.
created_on When the sequence was created.
database_name Yes Name of the database that contains the sequence.
increment Step between successive sequence values.
name Yes The sequence name.
next_value Next value the sequence will produce.
owner Name of the role that owns the sequence.
qualified_name Yes The fully-qualified name, as DATABASE.SCHEMA.SEQUENCE.
schema_name Yes Name of the schema that contains the sequence.
start_value First value the sequence produced.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeSequence): A Snowflake account contains the sequence as a resource.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeSequence): A Snowflake schema contains the sequence.

SnowflakeService

Represents a Snowflake service: a containerized workload running on Snowpark Container Services.

Ontology Mapping: This node uses the ontology label ComputeService.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Ontology-generated fields are shown in italics.

Field Index Description
id Yes Account-scoped identifier for the service.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
auto_resume Whether the service restarts automatically when its compute pool resumes.
comment Service comment.
compute_pool Name of the compute pool the service runs on.
created_on When the service was created.
current_instances Number of service instances currently running.
database_name Name of the database containing the service.
dns_name Yes Internal DNS name other services in the account reach this one at.
external_access_integrations Names of the external access integrations the service's containers may make outbound calls through.
is_job Whether this is a run-to-completion job service rather than a long-running one.
is_upgrading Whether the service is mid-upgrade to a new specification.
max_instances Maximum number of instances the service may scale to.
min_instances Minimum number of instances the service keeps running.
name Yes The service name.
owner Name of the role that owns the service.
qualified_name Yes Fully qualified DATABASE.SCHEMA.NAME of the service.
query_warehouse Name of the warehouse the service's own SQL queries run on.
schema_name Name of the schema containing the service.
spec_digest Digest of the service specification, which changes on every redeploy.
status Service status, for example RUNNING, PENDING, SUSPENDED or FAILED.
target_instances Number of service instances Snowflake is converging to.
_ont_name Yes Normalized field sourced from name.
_ont_source Module that populated this node's ontology fields.
_ont_status Yes Normalized field sourced from status.

Relationships

  • (:ComputeService)-[:HAS_RUNTIME_IMAGE]->(:Image): generated by analysis job Workload HAS_RUNTIME_IMAGE inventory analysis.

    • Properties:

      Field Description
      exposed_internet Property generated by analysis job: Workload HAS_RUNTIME_IMAGE inventory analysis.
  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeService): A Snowflake account contains the service as a resource.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeService): A Snowflake schema contains the service.

  • (:SnowflakeService)-[:HAS_ENDPOINT]->(:SnowflakeServiceEndpoint): A Snowflake service exposes this endpoint.

  • (:SnowflakeService)-[:HAS_SERVICE_ROLE]->(:SnowflakeServiceRole): A Snowflake service declares this service role, which gates access to its endpoints.

  • (:SnowflakeService)-[:USES_INTEGRATION]->(:SnowflakeExternalAccessIntegration): A Snowflake service makes outbound network calls through this external access integration.

  • (:SnowflakeService)-[:USES_WAREHOUSE]->(:SnowflakeWarehouse): A Snowflake service runs its own SQL queries on this warehouse.

Distinct from the WORKLOAD_PARENT edge to the compute pool: the pool hosts the service's containers, whereas the query warehouse is a data-plane dependency the container code calls into. Whitelisted in constraints_whitelist.py for that reason.

  • (:SnowflakeService)-[:WORKLOAD_PARENT]->(:SnowflakeComputePool): A Snowflake service's containers are scheduled on this compute pool.

  • (:SnowflakeServiceContainer)-[:WORKLOAD_PARENT]->(:SnowflakeService): A Snowflake service container runs as part of this service.

SnowflakeServiceContainer

Represents one container instance of a Snowflake service.

Ontology Mapping: This node uses the ontology label Container.

Properties

Ontology-generated fields are shown in italics.

Field Index Description
id Yes Account-scoped identifier for the service container instance.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
image_digest Yes Digest of the running image, which pins exactly what code is executing.
image_name Yes Image reference the container was started from.
instance_id Index of the service instance this container belongs to.
message Most recent status message reported for the container.
name Yes Container name as declared in the service specification.
restart_count Number of times the container has restarted.
service_name Fully qualified name of the service that owns the container.
start_time When the container last started.
status Container status, for example READY, PENDING or FAILED.
untagged_image_path Image reference with the tag removed, used together with the digest to resolve the one repository image the container is running.
_ont_source Module that populated this node's ontology fields.
_ont_state Yes Normalized field sourced from status.

Relationships

  • (:Container)-[:RESOLVED_IMAGE]->(:Image): generated by analysis job Container RESOLVED_IMAGE analysis.

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeServiceContainer): A Snowflake account contains the service container as a resource.

  • (:SnowflakeServiceContainer)-[:HAS_IMAGE]->(:SnowflakeImage): A Snowflake service container runs this image from an account image repository.

Matched on the untagged registry path as well as the digest. The digest alone identifies the image bytes, not the image object: the same bytes pushed to two repositories are two SnowflakeImage nodes, and a digest-only matcher would attach the container to every one of them. Pairing the path with the digest picks the single repository the container actually pulled from, while staying tolerant of the container and the repository listing reporting different tags.

  • (:SnowflakeServiceContainer)-[:WORKLOAD_PARENT]->(:SnowflakeService): A Snowflake service container runs as part of this service.

SnowflakeServiceEndpoint

Represents a network endpoint exposed by a Snowflake service.

Properties

Field Index Description
id Yes Account-scoped identifier for the service endpoint.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
ingress_url Yes Public ingress URL Snowflake assigned to a public endpoint.
is_public Whether the endpoint is reachable from the public internet through a Snowflake-managed ingress rather than only from inside the account.
name Yes Endpoint name as declared in the service specification.
port Container port the endpoint forwards to.
port_range Container port range the endpoint forwards to, if a range.
protocol Endpoint protocol, for example HTTP or TCP.
service_name Fully qualified name of the service that exposes the endpoint.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeServiceEndpoint): A Snowflake account contains the service endpoint as a resource.

  • (:SnowflakeService)-[:HAS_ENDPOINT]->(:SnowflakeServiceEndpoint): A Snowflake service exposes this endpoint.

SnowflakeServiceRole

Represents a service role declared by a Snowflake service to gate endpoint access.

Properties

Field Index Description
id Yes Account-scoped identifier for the service role.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
comment Service role comment.
name Yes The service role name.
service_name Fully qualified name of the service that declares the role.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeServiceRole): A Snowflake account contains the service role as a resource.

  • (:SnowflakeService)-[:HAS_SERVICE_ROLE]->(:SnowflakeServiceRole): A Snowflake service declares this service role, which gates access to its endpoints.

SnowflakeServiceUser

Represents a Snowflake service user: a machine identity that cannot hold a password.

Ontology Mapping: This node uses the ontology label ServiceAccount.

Additional Labels: This node also uses SnowflakePrincipal, SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakePrincipal: A Snowflake grantee that can hold privileges.
  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Ontology-generated fields are shown in italics.

Field Index Description
id Yes Account-scoped identifier for the user.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
comment User comment.
created_on When the user was created.
days_to_expiry Days until the user account expires.
default_namespace The user's default database or schema.
default_role The role the user's sessions activate by default. This is also the role Snowflake's object API endpoints run as.
default_secondary_roles Secondary roles activated by default: ALL grants the union of every role granted to the user in a session.
default_warehouse The user's default warehouse.
disabled Whether the user is disabled and cannot authenticate.
display_name The user's display name.
email Yes The user's email address.
expires_at When the user account expires.
ext_authn_duo Whether Duo external authentication is enabled.
first_name The user's first name.
has_mfa Whether the user has enrolled in multi-factor authentication. Read from SQL, since the REST API does not expose it; null when unreadable.
has_password Whether the user has a password set.
has_rsa_public_key Whether the user has an RSA public key registered for key-pair auth.
last_name The user's last name.
last_successful_login When the user last authenticated successfully.
locked_until When a lockout on the user expires.
login_name Yes The name the user authenticates with, which may differ from name.
mins_to_bypass_mfa Minutes remaining in which the user may authenticate without MFA. A non-null value means MFA is temporarily bypassed.
mins_to_bypass_network_policy Minutes remaining in which the user may authenticate from outside their network policy.
mins_to_unlock Minutes until a locked-out user is unlocked.
must_change_password Whether the user must change their password at next login.
name Yes The user's Snowflake name.
network_policy_name Name of the network policy attached directly to this user, if any.
owner Name of the role that owns the user.
password_last_set When the user's password was last set.
rsa_public_key_2_fp Fingerprint of the user's secondary registered RSA public key, used for rotation.
rsa_public_key_fp Fingerprint of the user's primary registered RSA public key.
snowflake_lock Whether Snowflake has locked the account, for example after abuse detection.
snowflake_support Whether Snowflake Support may use this user for troubleshooting.
user_type The Snowflake user type: PERSON for a human, SERVICE or LEGACY_SERVICE for a machine identity. SERVICE users cannot hold a password.
_ont_active Yes Normalized field sourced from disabled.
_ont_email Yes Normalized field sourced from email.
_ont_name Yes Normalized field sourced from name.
_ont_source Module that populated this node's ontology fields.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeServiceUser): A Snowflake account contains the user as a resource.

  • (:SnowflakeCredential)-[:OWNED_BY]->(:SnowflakeServiceUser): The credential authenticates as this Snowflake service user.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeProgrammaticAccessToken)-[:OWNED_BY]->(:SnowflakeServiceUser): The access token authenticates as this Snowflake service user.

  • (:SnowflakeServiceUser)-[:GOVERNED_BY]->(:SnowflakeNetworkPolicy): A Snowflake user's connections are restricted by this network policy.

  • (:SnowflakeServiceUser)-[:HAS_ROLE]->(:SnowflakeRole): A Snowflake service user has been granted this role.

    • Properties:

      Field Description
      created_on When the role was granted.
      granted_by Name of the role that created the grant.

SnowflakeSessionPolicy

Represents a Snowflake session policy: the idle timeouts that govern how long a session stays authenticated.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the session policy.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
allowed_secondary_authentication_methods Secondary authentication methods the policy permits, such as password re-entry, when a session has to be re-verified.
comment Policy comment.
created_on When the policy was created.
database_name Database holding the policy.
name Yes The session policy name.
owner Name of the role that owns the policy.
owner_role_type Whether the owning role is an account role or a database role.
qualified_name Yes Fully qualified name of the policy, as DATABASE.SCHEMA.NAME.
schema_name Schema holding the policy.
session_idle_timeout_mins Minutes an idle programmatic session stays authenticated before it has to re-authenticate.
session_ui_idle_timeout_mins Minutes an idle Snowsight session stays authenticated. A high value leaves an unattended browser session usable.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeSessionPolicy): A Snowflake account contains the session policy as a resource.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeSessionPolicy): A Snowflake schema holds the session policy.

  • (:SnowflakeSessionPolicy)-[:APPLIED_TO]->(:SnowflakeSecurable): A Snowflake session policy governs the session timeouts of this object's users.

    • Properties:

      Field Description
      policy_status Whether the attachment is active. An inactive attachment leaves the object unprotected despite the policy being set.
      ref_column_name The column the policy protects, for a masking or projection policy. Null when the policy applies to the whole object.
      ref_entity_domain The kind of object the policy is attached to, such as TABLE, VIEW, USER or ACCOUNT.

SnowflakeShare

Represents a Snowflake share: a live, copy-free data feed between accounts.

Additional Labels: This node also uses SnowflakePrincipal, SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakePrincipal: A Snowflake grantee that can hold privileges.
  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the share.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
comment Share comment.
created_on When the share was created.
database_name Database the share exposes, or the local database created from an inbound share.
listing_global_name Global name of the Marketplace or Data Exchange listing that publishes this share, if any.
name Yes The share name.
owner Name of the role that owns the share.
owner_account Yes Account that owns the share. For an INBOUND share this is the provider the data arrives from, which is what distinguishes two shares that happen to carry the same name.
share_kind OUTBOUND when this account publishes the share, INBOUND when it consumes one. An OUTBOUND share is a data egress path out of the account.
shared_with_account_count Number of accounts the share is shared with.
shared_with_accounts Every account the share is shared with, as Snowflake reports them. Kept verbatim because a consumer outside this organization has no node in the graph and would otherwise be invisible.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeShare): A Snowflake account contains the share as a resource.

  • (:SnowflakeDatabase)-[:CREATED_FROM_SHARE]->(:SnowflakeShare): The database is a read-only mount of data another Snowflake account shared in.

Data reachable through this database belongs to the provider account, so a privilege granted here exposes someone else's data rather than this account's.

  • (:SnowflakeListing)-[:PUBLISHES]->(:SnowflakeShare): A Snowflake listing offers this share to consumers.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeShare)-[:SHARED_WITH]->(:SnowflakeManagedAccount): A Snowflake share is readable by this managed consumer account.

  • (:SnowflakeShare)-[:SHARES]->(:SnowflakeSecurable): A Snowflake share exposes this object to every account the share is shared with.

SnowflakeStage

Represents a Snowflake stage: the file location data is loaded from and unloaded to.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Conditional Labels:

  • FileStorage (ontology label) when is_external equals false. A cross-provider FileStorage resource in Cartography's ontology.
  • ObjectStorage (ontology label) when is_external equals true. A cross-provider ObjectStorage resource in Cartography's ontology.

Properties

Ontology-generated fields are shown in italics.

Field Index Description
id Yes Account-scoped identifier for the stage.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
cloud Cloud provider hosting the stage's storage.
comment Stage comment.
created_on When the stage was created.
database_name Name of the database containing the stage.
directory_table Whether a directory table is enabled over the stage's files.
endpoint S3-compatible or private endpoint the stage connects through.
has_credentials Whether the stage stores its own cloud credentials, which is a long-lived secret in the stage definition rather than a storage integration.
has_encryption_key Whether the stage carries a client-side encryption master key.
is_external String discriminator, 'true' or 'false', recording whether the stage points at customer-owned cloud storage rather than Snowflake-managed internal storage. Stored as a string because the conditional ObjectStorage and FileStorage ontology labels match on exact string values.
kind Stage kind reported by Snowflake, for example PERMANENT or TEMPORARY.
name Yes The stage name.
owner Name of the role that owns the stage.
owner_role_type Whether the owning role is an account ROLE or a DATABASE_ROLE.
qualified_name Yes Fully qualified DATABASE.SCHEMA.NAME of the stage.
region Cloud region hosting the stage's storage.
schema_name Name of the schema containing the stage.
storage_integration Name of the storage integration that authenticates the stage. Null when the stage instead embeds its own credentials.
url Yes Cloud storage URL the external stage reads and writes. Null for an internal stage, whose files live in Snowflake-managed storage.
_ont_encrypted Yes Normalized field sourced from has_encryption_key.
_ont_location Yes Normalized field sourced from region.
_ont_name Yes Normalized field sourced from name.
_ont_source Module that populated this node's ontology fields.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeStage): A Snowflake account contains the stage as a resource.

  • (:SnowflakeExternalTable)-[:READS_FROM]->(:SnowflakeStage): The external table reads its files through this stage.

The stage holds the credential or storage integration, so it is the hop that turns a query on the external table into access to cloud storage.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeStage): A Snowflake schema contains the stage.

  • (:SnowflakeStage)-[:BACKED_BY]->(:AWSS3Bucket): A Snowflake external stage is backed by an Amazon S3 bucket.

  • (:SnowflakeStage)-[:BACKED_BY]->(:AzureStorageAccount): A Snowflake external stage is backed by an Azure storage account.

  • (:SnowflakeStage)-[:BACKED_BY]->(:GCPBucket): A Snowflake external stage is backed by a Google Cloud Storage bucket.

  • (:SnowflakeStage)-[:USES_INTEGRATION]->(:SnowflakeStorageIntegration): A Snowflake stage authenticates to cloud storage through a storage integration.

SnowflakeStorageIntegration

Represents a Snowflake storage integration: the delegated cloud identity stages use instead of embedded credentials.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the storage integration.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
azure_multi_tenant_app_name Name of the Snowflake multi-tenant Entra ID application that must be granted access to the storage account.
azure_tenant_id Entra ID tenant Snowflake requests an access token from for the storage.
category Snowflake integration category.
comment Storage integration comment.
created_on When the storage integration was created.
enabled Whether stages may authenticate to cloud storage through the integration.
integration_type Snowflake integration type, for example EXTERNAL_STAGE.
name Yes The storage integration name.
storage_allowed_locations Storage URL prefixes stages using this integration may read and write. A bare bucket prefix grants the whole bucket.
storage_aws_external_id External id the role's trust policy must require, which is what prevents another Snowflake account from assuming it.
storage_aws_iam_user_arn ARN of the Snowflake-owned IAM user that must be trusted by the role's trust policy.
storage_aws_role_arn Yes ARN of the AWS IAM role Snowflake assumes to reach the storage.
storage_blocked_locations Storage URL prefixes denied even when covered by an allowed location.
storage_provider Cloud storage provider: S3, S3GOV, GCS or AZURE.
use_privatelink_endpoint Whether traffic to the storage goes over a private endpoint.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeStorageIntegration): A Snowflake account contains the storage integration as a resource.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeStage)-[:USES_INTEGRATION]->(:SnowflakeStorageIntegration): A Snowflake stage authenticates to cloud storage through a storage integration.

  • (:SnowflakeStorageIntegration)-[:ASSUMES_ROLE]->(:AWSPrincipal): A Snowflake storage integration assumes an AWS IAM role to reach cloud storage.

SnowflakeStream

Represents a Snowflake stream, a change-data feed over a table, view or stage.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the stream.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
comment Stream comment.
created_on When the stream was created.
database_name Yes Name of the database that contains the stream.
invalid_reason Why Snowflake invalidated the stream.
is_stale Whether the stream went stale. A stale stream silently stops delivering changes, so a pipeline consuming it will miss data until it is recreated.
mode Which change rows the stream returns: DEFAULT, APPEND_ONLY or INSERT_ONLY.
name Yes The stream name.
owner Name of the role that owns the stream.
qualified_name Yes The fully-qualified name, as DATABASE.SCHEMA.STREAM.
schema_name Yes Name of the schema that contains the stream.
source_name Yes Name of the object whose changes the stream reads.
source_type Kind of object the stream tracks changes on, for example Table, View or Stage.
stale_after When the stream goes stale if it is not consumed before then.
stream_type Stream type reported by Snowflake, for example DELTA.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeStream): A Snowflake account contains the stream as a resource.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeStream): A Snowflake schema contains the stream.

  • (:SnowflakeStream)-[:READS_FROM]->(:SnowflakeTable): The stream delivers the change rows of this table.

Anything granted SELECT on the stream can therefore read the table's changed rows without holding a privilege on the table itself.

SnowflakeStreamlit

Represents a Snowflake Streamlit app: a Python web app served by Snowflake over account data.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the Streamlit app.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
comment Streamlit app comment.
compute_pool Name of the compute pool backing a container-runtime app.
created_on When the Streamlit app was created.
database_name Database containing the Streamlit app.
default_packages Packages Snowflake installs into the app's environment.
external_access_integrations External access integrations that let the app reach the network.
main_file Path of the Python file that renders the app.
name Yes Streamlit app name.
owner Name of the role that owns the Streamlit app.
qualified_name Fully-qualified database.schema.streamlit name.
query_warehouse Name of the virtual warehouse the app's queries run on.
root_location Stage location holding the app's source files.
schema_name Schema containing the Streamlit app.
title Display title shown in Snowsight.
url_id Opaque identifier used in the app's Snowsight URL.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeStreamlit): A Snowflake account contains the Streamlit app as a resource.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeStreamlit): A Snowflake schema holds the Streamlit app in its namespace.

  • (:SnowflakeStreamlit)-[:RUNS_ON]->(:SnowflakeComputePool): A container-runtime Snowflake Streamlit app executes on this compute pool.

  • (:SnowflakeStreamlit)-[:USES_INTEGRATION]->(:SnowflakeExternalAccessIntegration): A Snowflake Streamlit app reaches the network through this external access integration.

  • (:SnowflakeStreamlit)-[:USES_WAREHOUSE]->(:SnowflakeWarehouse): A Snowflake Streamlit app runs its queries on this virtual warehouse.

SnowflakeTable

Represents a Snowflake table, where the account's data actually sits.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the table.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
change_tracking Whether change tracking is enabled, which streams require.
cluster_by Clustering key expression, if the table has one.
column_count Number of columns in the table. The column list itself is not stored: one node per column would dwarf the rest of the graph.
comment Table comment.
created_on When the table was created.
data_retention_time_in_days Time Travel window in days. A value of 0 disables Time Travel, which removes the ability to recover rows after an accidental or malicious change.
database_name Yes Name of the database that contains the table.
dropped_on When the table was dropped, if it is pending purge.
enable_schema_evolution Whether loading a file may add columns to the table, which lets an ingestion path widen the table without a DDL change.
kind The table kind reported by Snowflake.
name Yes The table name.
owner Name of the role that owns the table.
owner_role_type Whether the owner is a ROLE or a DATABASE_ROLE.
qualified_name Yes The fully-qualified table name, as DATABASE.SCHEMA.TABLE.
row_count Number of rows Snowflake reports for the table.
schema_name Yes Name of the schema that contains the table.
search_optimization Whether the search optimization service is enabled on the table.
size_bytes Bytes of storage the table occupies.
table_type Yes The table flavour: NORMAL, DYNAMIC, EXTERNAL, EVENT, HYBRID, ICEBERG or IMMUTABLE.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeTable): A Snowflake account contains the table as a resource.

  • (:SnowflakeCortexSearchService)-[:READS_FROM]->(:SnowflakeTable): A Snowflake Cortex Search service indexes the contents of this table.

Copying source text into a searchable index moves the data out from behind the table's own access controls, so knowing which table feeds a service is what makes that exposure visible.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeTable): A Snowflake schema contains the table.

  • (:SnowflakeStream)-[:READS_FROM]->(:SnowflakeTable): The stream delivers the change rows of this table.

Anything granted SELECT on the stream can therefore read the table's changed rows without holding a privilege on the table itself.

SnowflakeTag

Represents a Snowflake tag definition: a governance key that can later be attached to objects and columns.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the tag.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
allowed_values Values the tag may be set to. Empty when the tag accepts any string, which is what makes a governance tag hard to rely on.
comment Tag comment.
created_on When the tag was created.
database_name Database containing the tag.
name Yes Tag name.
owner Name of the role that owns the tag.
qualified_name Fully-qualified database.schema.tag name.
schema_name Schema containing the tag.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeTag): A Snowflake account contains the tag as a resource.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeTag): A Snowflake schema holds the tag definition in its namespace.

SnowflakeTask

Represents a Snowflake task: scheduled or DAG-triggered SQL running inside the account.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the task.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
allow_overlapping_execution Whether a new run may start while the previous one is still going, which lets a slow task pile up concurrent executions.
comment Task comment.
condition WHEN expression that must hold for the run to go ahead.
created_on When the task was created.
database_name Database containing the task.
definition SQL the task executes on every run.
error_integration Notification integration that receives the task's error notifications.
execute_as Whether the task's SQL runs with the privileges of the task owner (OWNER) or of the role that resumed it (CALLER).
name Yes Task name.
owner Name of the role that owns the task.
owner_role_type Whether the owner is an account role or a database role.
predecessors Fully-qualified names of the tasks that trigger this one.
qualified_name Fully-qualified database.schema.task name.
schedule The task's schedule, as a cron expression or an interval. Null for a child task, which is triggered by its predecessors instead.
schema_name Schema containing the task.
state Whether the task is started or suspended.
success_integration Notification integration that receives the task's success notifications.
suspend_task_after_num_failures Number of consecutive failed runs after which Snowflake suspends the task. Zero means it is never suspended automatically.
target_completion_interval Duration Snowflake targets for a serverless run to complete in.
user_task_managed_initial_warehouse_size Initial compute size Snowflake uses for a serverless task's first run.
warehouse Name of the virtual warehouse the task runs on. Null for a serverless task, which Snowflake sizes itself.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeTask): A Snowflake account contains the task as a resource.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeTask): A Snowflake schema holds the task in its namespace.

  • (:SnowflakeTask)-[:ASSUMES]->(:SnowflakeRole): A Snowflake task executes with the privileges of its owning role.

Only present for an owner-rights task. A caller-rights task instead runs with the privileges of whichever role resumed it, so no single role can be named.

  • (:SnowflakeTask)-[:NOTIFIES]->(:SnowflakeNotificationIntegration): A Snowflake task sends its error notifications through this integration. A Snowflake task sends its success notifications through this integration.

  • (:SnowflakeTask)-[:PRECEDED_BY]->(:SnowflakeTask): A Snowflake task only runs once this upstream task has finished.

Chaining tasks this way builds a directed acyclic graph rooted at the one scheduled task, so following these edges upwards reveals what actually triggers a given piece of SQL.

  • (:SnowflakeTask)-[:USES_WAREHOUSE]->(:SnowflakeWarehouse): A Snowflake task runs its SQL on this virtual warehouse.

SnowflakeUser

Represents a human Snowflake user account.

Ontology Mapping: This node uses the ontology label UserAccount.

Additional Labels: This node also uses SnowflakePrincipal, SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakePrincipal: A Snowflake grantee that can hold privileges.
  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Ontology-generated fields are shown in italics.

Field Index Description
id Yes Account-scoped identifier for the user.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
comment User comment.
created_on When the user was created.
days_to_expiry Days until the user account expires.
default_namespace The user's default database or schema.
default_role The role the user's sessions activate by default. This is also the role Snowflake's object API endpoints run as.
default_secondary_roles Secondary roles activated by default: ALL grants the union of every role granted to the user in a session.
default_warehouse The user's default warehouse.
disabled Whether the user is disabled and cannot authenticate.
display_name The user's display name.
email Yes The user's email address.
expires_at When the user account expires.
ext_authn_duo Whether Duo external authentication is enabled.
first_name The user's first name.
has_mfa Whether the user has enrolled in multi-factor authentication. Read from SQL, since the REST API does not expose it; null when unreadable.
has_password Whether the user has a password set.
has_rsa_public_key Whether the user has an RSA public key registered for key-pair auth.
last_name The user's last name.
last_successful_login When the user last authenticated successfully.
locked_until When a lockout on the user expires.
login_name Yes The name the user authenticates with, which may differ from name.
mins_to_bypass_mfa Minutes remaining in which the user may authenticate without MFA. A non-null value means MFA is temporarily bypassed.
mins_to_bypass_network_policy Minutes remaining in which the user may authenticate from outside their network policy.
mins_to_unlock Minutes until a locked-out user is unlocked.
must_change_password Whether the user must change their password at next login.
name Yes The user's Snowflake name.
network_policy_name Name of the network policy attached directly to this user, if any.
owner Name of the role that owns the user.
password_last_set When the user's password was last set.
rsa_public_key_2_fp Fingerprint of the user's secondary registered RSA public key, used for rotation.
rsa_public_key_fp Fingerprint of the user's primary registered RSA public key.
snowflake_lock Whether Snowflake has locked the account, for example after abuse detection.
snowflake_support Whether Snowflake Support may use this user for troubleshooting.
user_type The Snowflake user type: PERSON for a human, SERVICE or LEGACY_SERVICE for a machine identity. SERVICE users cannot hold a password.
_ont_active Yes Normalized field sourced from disabled.
_ont_email Yes Normalized field sourced from email.
_ont_firstname Yes Normalized field sourced from first_name.
_ont_fullname Yes Normalized field sourced from display_name.
_ont_has_mfa Yes Normalized field sourced from has_mfa.
_ont_lastactivity Yes Normalized field sourced from last_successful_login.
_ont_lastname Yes Normalized field sourced from last_name.
_ont_source Module that populated this node's ontology fields.
_ont_username Yes Normalized field sourced from login_name.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeUser): A Snowflake account contains the user as a resource.

  • (:SnowflakeCredential)-[:OWNED_BY]->(:SnowflakeUser): The credential authenticates as this human Snowflake user.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeProgrammaticAccessToken)-[:OWNED_BY]->(:SnowflakeUser): The access token authenticates as this human Snowflake user.

  • (:SnowflakeUser)-[:GOVERNED_BY]->(:SnowflakeNetworkPolicy): A Snowflake user's connections are restricted by this network policy.

  • (:SnowflakeUser)-[:HAS_ROLE]->(:SnowflakeRole): A Snowflake user has been granted this role.

    • Properties:

      Field Description
      created_on When the role was granted.
      granted_by Name of the role that created the grant.
  • (:User)-[:HAS_ACCOUNT]->(:UserAccount)

SnowflakeView

Represents a Snowflake view, a named query over one or more tables.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Field Index Description
id Yes Account-scoped identifier for the view.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
column_count Number of columns the view returns. The column list itself is not stored: one node per column would dwarf the rest of the graph.
comment View comment.
created_on When the view was created.
database_name Yes Name of the database that contains the view.
is_secure Whether the view is secure. A non-secure view exposes its definition and lets the optimizer leak rows the definition meant to filter out, so a view used as a row-level access boundary should be secure.
kind The view kind reported by Snowflake.
name Yes The view name.
owner Name of the role that owns the view.
owner_role_type Whether the owner is a ROLE or a DATABASE_ROLE.
qualified_name Yes The fully-qualified view name, as DATABASE.SCHEMA.VIEW.
query The SELECT statement that defines the view.
schema_name Yes Name of the schema that contains the view.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeView): A Snowflake account contains the view as a resource.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeSchema)-[:CONTAINS]->(:SnowflakeView): A Snowflake schema contains the view.

SnowflakeWarehouse

Represents a Snowflake virtual warehouse: the compute cluster that executes queries.

Ontology Mapping: This node uses the ontology label ComputeCluster.

Additional Labels: This node also uses SnowflakeSecurable.

Additional Label Definitions:

  • SnowflakeSecurable: A Snowflake object that can receive privileges through GRANT.

Properties

Ontology-generated fields are shown in italics.

Field Index Description
id Yes Account-scoped identifier for the warehouse.
firstseen Timestamp when a sync job first created this node.
lastupdated Yes Timestamp of the last sync that observed this node.
auto_resume Whether a query against a suspended warehouse restarts it automatically.
auto_suspend Seconds of inactivity before the warehouse suspends. Null means it never suspends and keeps billing credits.
budget Name of the budget the warehouse's spend is attributed to.
comment Warehouse comment.
created_on When the warehouse was created.
enable_query_acceleration Whether the query acceleration service is enabled for the warehouse.
kind Warehouse kind reported by Snowflake.
max_cluster_count Maximum number of clusters a multi-cluster warehouse may scale out to.
max_concurrency_level Maximum number of concurrent statements a single cluster will run.
min_cluster_count Minimum number of clusters in a multi-cluster warehouse.
name Yes The warehouse name.
owner Name of the role that owns the warehouse.
owner_role_type Whether the owning role is an account ROLE or a DATABASE_ROLE.
resource_monitor Name of the resource monitor capping this warehouse's credit usage. Null when the warehouse has no credit ceiling of its own.
resumed_on When the warehouse was last resumed.
scaling_policy Multi-cluster scaling policy: STANDARD or ECONOMY.
size Warehouse size (X-Small through 6X-Large), which sets its credit rate.
state Whether the warehouse is STARTED, SUSPENDED or RESIZING.
statement_timeout_in_seconds Seconds after which a statement running on the warehouse is aborted.
updated_on When the warehouse was last altered.
warehouse_type Warehouse type: STANDARD, or a SNOWPARK-OPTIMIZED variant for memory-intensive workloads.
_ont_name Yes Normalized field sourced from name.
_ont_source Module that populated this node's ontology fields.
_ont_status Yes Normalized field sourced from state.

Relationships

  • (:SnowflakeAccount)-[:RESOURCE]->(:SnowflakeWarehouse): A Snowflake account contains the warehouse as a resource.

  • (:SnowflakeAlert)-[:USES_WAREHOUSE]->(:SnowflakeWarehouse): A Snowflake alert evaluates its condition on this virtual warehouse.

  • (:SnowflakeCortexSearchService)-[:USES_WAREHOUSE]->(:SnowflakeWarehouse): A Snowflake Cortex Search service refreshes its index on this virtual warehouse.

  • (:SnowflakeDynamicTable)-[:USES_WAREHOUSE]->(:SnowflakeWarehouse): The dynamic table runs its refreshes on this warehouse.

The refresh executes with the dynamic table owner's privileges, so the warehouse is where that owner's compute is spent.

  • (:SnowflakeNotebook)-[:USES_WAREHOUSE]->(:SnowflakeWarehouse): A Snowflake notebook runs its queries on this virtual warehouse.

  • (:SnowflakePrincipal)-[:HAS_PRIVILEGE]->(:SnowflakeSecurable): A Snowflake grantee holds privileges on a grantable Snowflake object.

    • Properties:

      Field Description
      grant_option Whether the grantee may grant these privileges onward, which makes the grant transitively expandable.
      granted_by Name of the role that created the grant.
      privileges Privileges the grantee holds on the object, aggregated into one list.
  • (:SnowflakeService)-[:USES_WAREHOUSE]->(:SnowflakeWarehouse): A Snowflake service runs its own SQL queries on this warehouse.

Distinct from the WORKLOAD_PARENT edge to the compute pool: the pool hosts the service's containers, whereas the query warehouse is a data-plane dependency the container code calls into. Whitelisted in constraints_whitelist.py for that reason.

  • (:SnowflakeStreamlit)-[:USES_WAREHOUSE]->(:SnowflakeWarehouse): A Snowflake Streamlit app runs its queries on this virtual warehouse.

  • (:SnowflakeTask)-[:USES_WAREHOUSE]->(:SnowflakeWarehouse): A Snowflake task runs its SQL on this virtual warehouse.

  • (:SnowflakeWarehouse)-[:MONITORED_BY]->(:SnowflakeResourceMonitor): A resource monitor caps the credits this Snowflake warehouse may consume.