Snowflake · Schema
Stage
A Snowflake stage.
DataData WarehouseData LakehouseCloud Data PlatformAnalyticsArtificial IntelligenceData EngineeringData GovernanceSQLApache IcebergModel Context ProtocolT1
Properties
| Name | Type | Description |
|---|---|---|
| name | object | String that specifies the identifier (i.e. name) for the stage. |
| kind | string | Specifies whether the stage is permanent or temporary. |
| url | string | URL for the external stage; blank for an internal stage. |
| endpoint | string | The S3-compatible API endpoint associated with the stage; always NULL for stages that are not S3-compatible. |
| storage_integration | object | Storage integration associated with the stage; always NULL for an internal stage. |
| comment | string | Specifies a comment for the stage. |
| credentials | object | Credentials of the stage. |
| encryption | object | Encryption parameters of the stage. |
| directory_table | object | Directory table parameters of the stage. |
| created_on | string | Date and time when the stage was created. |
| has_credentials | boolean | Indicates that the external stage has access credentials; always false for an internal stage. |
| has_encryption_key | boolean | Indicates that the external stage contains encrypted files; always false for an internal stage. |
| owner | string | Role that owns the stage. |
| owner_role_type | string | The type of role that owns the object, either ROLE or DATABASE_ROLE. If a Snowflake Native App owns the object, the value is APPLICATION. Snowflake returns NULL if you delete the object because a dele |
| region | string | Region where the stage is located. |
| cloud | string | Cloud provider; always NULL for an internal stage. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "#/components/schemas/Stage",
"title": "Stage",
"type": "object",
"description": "A Snowflake stage.",
"properties": {
"name": {
"$ref": "./common.yaml#/components/schemas/Identifier",
"description": "String that specifies the identifier (i.e. name) for the stage."
},
"kind": {
"type": "string",
"enum": [
"PERMANENT",
"TEMPORARY"
],
"default": "PERMANENT",
"description": "Specifies whether the stage is permanent or temporary.",
"example": "PERMANENT"
},
"url": {
"type": "string",
"description": "URL for the external stage; blank for an internal stage.",
"example": "https://www.example.com"
},
"endpoint": {
"type": "string",
"description": "The S3-compatible API endpoint associated with the stage; always NULL for stages that are not S3-compatible.",
"example": "example_value"
},
"storage_integration": {
"$ref": "./common.yaml#/components/schemas/Identifier",
"description": "Storage integration associated with the stage; always NULL for an internal stage."
},
"comment": {
"type": "string",
"description": "Specifies a comment for the stage.",
"example": "example_value"
},
"credentials": {
"$ref": "#/components/schemas/Credentials",
"writeOnly": true,
"description": "Credentials of the stage."
},
"encryption": {
"type": "object",
"description": "Encryption parameters of the stage.",
"writeOnly": true,
"properties": {
"type": {
"type": "string",
"enum": [
"SNOWFLAKE_FULL",
"SNOWFLAKE_SSE",
"AWS_CSE",
"AWS_SSE_S3",
"AWS_SSE_KMS",
"GCS_SSE_KMS",
"AZURE_CSE",
"NONE"
],
"description": "Specifies the encryption type used."
},
"master_key": {
"type": "string",
"format": "password",
"description": "Specifies the client-side master key used to encrypt the files in the bucket. The master key must be a 128-bit or 256-bit key in Base64-encoded form."
},
"kms_key_id": {
"type": "string",
"description": "Optionally specifies the ID for the KMS-managed key used to encrypt files unloaded into the bucket."
}
},
"example": "example_value"
},
"directory_table": {
"type": "object",
"description": "Directory table parameters of the stage.",
"properties": {
"enable": {
"type": "boolean",
"default": false,
"description": "Specifies whether to add a directory table to the stage. When the value is TRUE, a directory table is created with the stage."
},
"refresh_on_create": {
"type": "boolean",
"default": true,
"writeOnly": true,
"description": "Specifies whether to automatically refresh the directory table metadata once, immediately after the stage is created."
},
"auto_refresh": {
"type": "boolean",
"default": false,
"writeOnly": true,
"description": "Specifies whether Snowflake should enable triggering automatic refreshes of the directory table metadata when new or updated data files are available in the named external stage specified in the URL value."
},
"notification_integration": {
"type": "string",
"writeOnly": true,
"description": "Specifies the name of the notification integration used to automatically refresh the directory table metadata."
}
},
"example": "example_value"
},
"created_on": {
"type": "string",
"description": "Date and time when the stage was created.",
"format": "date-time",
"readOnly": true,
"example": "2026-01-15T10:30:00Z"
},
"has_credentials": {
"type": "boolean",
"description": "Indicates that the external stage has access credentials; always false for an internal stage.",
"readOnly": true,
"example": true
},
"has_encryption_key": {
"type": "boolean",
"description": "Indicates that the external stage contains encrypted files; always false for an internal stage.",
"readOnly": true,
"example": true
},
"owner": {
"type": "string",
"description": "Role that owns the stage.",
"readOnly": true,
"example": "example_value"
},
"owner_role_type": {
"type": "string",
"description": "The type of role that owns the object, either ROLE or DATABASE_ROLE. If a Snowflake Native App owns the object, the value is APPLICATION. Snowflake returns NULL if you delete the object because a deleted object does not have an owner role.",
"readOnly": true,
"example": "example_value"
},
"region": {
"type": "string",
"description": "Region where the stage is located.",
"readOnly": true,
"example": "example_value"
},
"cloud": {
"type": "string",
"description": "Cloud provider; always NULL for an internal stage.",
"readOnly": true,
"example": "example_value"
}
},
"example": {
"name": "stage_name"
},
"required": [
"name"
]
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/snowflake-stage"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.