Snowflake Table API

The table API from Snowflake — 16 operation(s) for table.

Operations 22

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /api/v2/databases/{database}/schemas/{schema}/tables List the tables in a schema · List tables #
Ask an LLM
“Which tables exist in this Snowflake schema?”
“Can I see tables I dropped recently but that haven't been purged yet?”
Tell an agent
List every table in this schema.
List the tables in this schema, including dropped ones still recoverable ({history}).
POST /api/v2/databases/{database}/schemas/{schema}/tables Create a new table · Create a table (clone and undrop are separate subresources) #
Ask an LLM
“How do I create a new table with defined columns in a schema?”
“Can I set clustering keys and data retention when I first create a table?”
Tell an agent
Create a new table named {name} with columns {columns}.
Create table {name} clustered by {cluster_by} and keep {data_retention_time_in_days} days of Time Travel.
POST /api/v2/databases/{database}/schemas/{schema}/tables/{name}:as_select Create a table from a query (legacy endpoint) · Create a table using the result of the specified select query #
Ask an LLM
“Is there an older as_select endpoint that names the new table in the URL path?”
“What does the legacy underscore-style create-table-as-select call need from me?”
Tell an agent
Using the legacy as_select endpoint, create table {name} from the results of {query}.
Run the deprecated table-as-select call to materialize {query} into {name}.
POST /api/v2/databases/{database}/schemas/{schema}/tables:as-select Create a table from a SELECT query result · Create a table using the result of the specified select query #
Ask an LLM
“Can I turn the output of a SELECT statement into a brand-new table?”
“How do I materialize query results as a table and pick its clustering keys?”
Tell an agent
Create a table called {name} populated from the query {query}.
Materialize the results of {query} into a new table {name}, clustered by {cluster_by}.
POST /api/v2/databases/{database}/schemas/{schema}/tables/{name}:using_template Create a table from staged file templates (legacy) · Create a table using the templates specified in staged files #
Ask an LLM
“Is there an older using_template endpoint that takes the table name in the path?”
“What does the deprecated create-from-template call expect as its query?”
Tell an agent
Use the legacy using_template endpoint to create a table from the template query {query}.
Call the deprecated template-based table creation with {query} inferring columns from staged files.
POST /api/v2/databases/{database}/schemas/{schema}/tables:using-template Create a table from templates in staged files · Create a table using the templates specified in staged files #
Ask an LLM
“Can I create a table whose columns are inferred from files sitting in a stage?”
“How do I build a table definition from a template query over staged Parquet or CSV files?”
Tell an agent
Create table {name} using the column template returned by {query}.
Build a new table from my staged files' schema template with {query}.
GET /api/v2/databases/{database}/schemas/{schema}/tables/{name} Describe a single table · Fetch a table #
Ask an LLM
“What columns, clustering and retention settings does this table have?”
“Can I pull the full describe output for one specific table?”
Tell an agent
Describe this table and show its columns and properties.
Fetch the definition of the table I named.
PUT /api/v2/databases/{database}/schemas/{schema}/tables/{name} Create or alter a table with a full definition · Create a (or alter an existing) table #
Ask an LLM
“Can I alter an existing table by resubmitting its whole definition?”
“Why must I send every table property even when I'm only changing one?”
Tell an agent
Create or update table {name} so its columns match {columns}.
Alter table {name} to set the comment {comment}, resending the full property set.
DELETE /api/v2/databases/{database}/schemas/{schema}/tables/{name} Drop a table · Delete a table #
Ask an LLM
“How do I drop a table I no longer need?”
“Can a table be removed by name through the REST API?”
Tell an agent destructive · confirm first
Drop this table.
Delete the table I named from its schema.
POST /api/v2/databases/{database}/schemas/{schema}/tables/{name}:clone Clone a table, optionally at a point in time · Clone table #
Ask an LLM
“Can I make a zero-copy clone of a table into another schema?”
“Is it possible to clone a table as it looked at an earlier point in time?”
Tell an agent
Clone this table into a new table named {name}.
Clone this table as {name} into database {targetDatabase} and schema {targetSchema}.
POST /api/v2/databases/{database}/schemas/{schema}/tables/{name}:create_like Create an empty copy of a table (legacy) · Create a table like this existing one #
Ask an LLM
“Is there a legacy create_like endpoint that takes the new table name as a query parameter?”
“What does the older underscore create-like call require?”
Tell an agent
Use the legacy create_like endpoint to make an empty table {newTableName} shaped like this one.
Call the deprecated create-like operation to produce {newTableName} with no rows.
POST /api/v2/databases/{database}/schemas/{schema}/tables/{name}:create-like Create an empty table with the same structure · Create a table like this existing one #
Ask an LLM
“Can I create a new empty table that copies another table's columns but none of its data?”
“What's the way to duplicate a table's structure without cloning its rows?”
Tell an agent
Create an empty table {name} with the same structure as this one.
Copy this table's definition into a new, empty table called {name}.
POST /api/v2/databases/{database}/schemas/{schema}/tables/{name}:undrop Restore a dropped table · Undrop a table #
Ask an LLM
“Can I bring back a table I accidentally dropped?”
“How do I recover a deleted table while it's still inside the retention window?”
Tell an agent
Undrop the table I deleted by mistake.
Restore this dropped table.
POST /api/v2/databases/{database}/schemas/{schema}/tables/{name}:suspend_recluster Suspend automatic reclustering (legacy) · Suspend recluster of a table #
Ask an LLM
“Is there an older suspend_recluster endpoint with an underscore in the path?”
“Does the legacy call still pause reclustering on a table?”
Tell an agent
Use the legacy suspend_recluster endpoint to pause reclustering on this table.
Call the deprecated underscore route to stop this table from reclustering.
POST /api/v2/databases/{database}/schemas/{schema}/tables/{name}:suspend-recluster Suspend automatic reclustering on a table · Suspend recluster of a table #
Ask an LLM
“How can I stop automatic clustering from consuming credits on a table?”
“Can I pause reclustering on a single table temporarily?”
Tell an agent
Suspend automatic reclustering on this table.
Pause clustering maintenance for the table I named.
POST /api/v2/databases/{database}/schemas/{schema}/tables/{name}:resume_recluster Resume automatic reclustering (legacy) · Resume recluster of a table #
Ask an LLM
“Is there an older resume_recluster endpoint that still restarts clustering?”
“What does the deprecated underscore resume-recluster route do?”
Tell an agent
Use the legacy resume_recluster endpoint to restart reclustering on this table.
Call the deprecated underscore route to turn clustering back on for this table.
POST /api/v2/databases/{database}/schemas/{schema}/tables/{name}:resume-recluster Resume automatic reclustering on a table · Resume recluster of a table #
Ask an LLM
“How do I turn automatic clustering back on after suspending it?”
“Can reclustering be restarted for just one table?”
Tell an agent
Resume automatic reclustering on this table.
Restart clustering maintenance for the table I suspended earlier.
POST /api/v2/databases/{database}/schemas/{schema}/tables/{name}:swapwith Swap two tables (legacy endpoint) · Swap with another table #
Ask an LLM
“Is there an older swapwith endpoint that takes only the target table name?”
“What does the legacy table swap call need?”
Tell an agent
Use the legacy swapwith endpoint to swap this table with {targetTableName}.
Call the deprecated swap route to exchange this table and {targetTableName}.
POST /api/v2/databases/{database}/schemas/{schema}/tables/{name}:swap-with Swap a table with another table · Swap with another table #
Ask an LLM
“Can I atomically swap a staging table into production?”
“Is it possible to swap with a table that lives in a different database or schema?”
Tell an agent
Swap this table with {targetName}.
Swap this table with {targetName} in database {targetDatabase}, schema {targetSchema}.
POST /api/v2/databases/{database}/schemas/{schema}/tables/{name}:set-tags Set tags on a table · Set tags on a table #
Ask an LLM
“How do I attach governance tags to a table?”
“Can I label a table with a cost-center or sensitivity tag?”
Tell an agent
Set tags on this table.
Apply my tag assignments to the table I named.
POST /api/v2/databases/{database}/schemas/{schema}/tables/{name}:unset-tags Remove tags from a table · Unset tags from a table #
Ask an LLM
“Can I remove a tag that was assigned to a table?”
“What's the way to clear governance tags off a table?”
Tell an agent
Unset the tags on this table.
Remove the tag assignments from the table I named.
GET /api/v2/databases/{database}/schemas/{schema}/tables/{name}:get-tags Get the tags assigned to a table · Get the tag assignments for a table #
Ask an LLM
“Which tags are currently assigned to this table?”
“Does reading a table's tags need an active warehouse?”
Tell an agent
Show every tag assigned to this table.
List the tag assignments on the table I named.

Documentation

📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/account
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/alert
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/api-integration
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/catalog-integration
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/compute-pool
📖
Documentation
https://docs.snowflake.com/en/user-guide/snowflake-cortex/cortex-analyst/rest-api
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/cortex-inference
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/cortex-search-service
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/database-role
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/database
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/dynamic-table
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/event-table
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/external-volume
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/function
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/grant
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/iceberg-table
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/image-repository
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/managed-account
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/network-policy
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/notebook
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/notification-integration
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/pipe
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/procedure
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/result
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/role
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/schema
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/service
📖
Documentation
https://docs.snowflake.com/en/developer-guide/sql-api/index
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/stage
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/stream
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/table
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/task
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/user-defined-function
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/user
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/view
📖
Documentation
https://docs.snowflake.com/en/developer-guide/snowflake-rest-api/reference/warehouse

Specifications

Schemas & Data

Other Resources

🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/account-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/alert-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/api-integration-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/catalog-integration-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/compute-pool-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/cortex-analyst-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/cortex-inference-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/cortex-search-service-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/database-role-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/database-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/dynamic-table-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/event-table-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/external-volume-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/function-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/grant-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/iceberg-table-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/image-repository-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/managed-account-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/network-policy-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/notebook-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/notification-integration-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/pipe-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/procedure-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/role-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/schema-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/service-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/sqlapi-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/snowflake-sql-rest-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/stage-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/stream-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/table-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/task-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/user-defined-function-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/user-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/view-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/json-ld/warehouse-context.jsonld
🔗
Overlay
https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/overlays/snowflake-table-overlay.yaml

Work with this as data

Every API 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 apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/snowflake:snowflake-table-api"
All apis
curl "https://apis.io/api/v1/apis?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.

OpenAPI Specification

snowflake-table-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 0.0.1
  title: Snowflake Table API
  description: The Snowflake Table API is a REST API that you can use to access, update, and perform certain actions on Tables resource in a Snowflake database.
  contact:
    name: Snowflake, Inc.
    url: https://snowflake.com
    email: support@snowflake.com
servers:
- description: Snowflake REST Server
  url: https://org-account.snowflakecomputing.com
security:
- KeyPair: []
- ExternalOAuth: []
- SnowflakeOAuth: []
- ProgrammaticAccessToken: []
tags:


# --- truncated at 32 KB (49 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/snowflake/refs/heads/main/openapi/snowflake-table-api-openapi.yml